You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Peemöller, Björn <Bj...@berenberg.de> on 2017/05/15 09:48:09 UTC

Configure query parser to handle field name case-insensitive

Hi all,

I'm fairly new at using Solr and I need to configure our instance to accept field names in both uppercase and lowercase (they are defined as lowercase in our configuration). Is there a simple way to achieve this?

Thanks in advance,
Björn

Björn Peemöller
IT & IT Operations

BERENBERG
Joh. Berenberg, Gossler & Co. KG
Neuer Jungfernstieg 20
20354 Hamburg

Telefon +49 40 350 60-8548
Telefax +49 40 350 60-900
E-Mail bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
www.berenberg.de<http://www.berenberg.de/>

Sitz: Hamburg - Amtsgericht Hamburg HRA 42659


Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtuemlich erhalten haben, informieren Sie bitte sofort den Absender über die Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte Weitergabe der darin enthaltenen Daten und Informationen sind nicht gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen namens unseres Hauses grundsaetzlich der Unterschriften zweier ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen Erklaerungen oder Auftraege von Dritten entgegen. 
Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden Sie sich bitte an den Absender oder an info@berenberg.de. Please refer to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our confidentiality notice.


RE: Configure query parser to handle field name case-insensitive

Posted by "Duck Geraint (ext) GBJH" <ge...@syngenta.com>.
As you're using the extended dismax parser, it has an option to include per field aliasing:
https://cwiki.apache.org/confluence/display/solr/The+Extended+DisMax+Query+Parser

You could include this in your solr requesthandler config, e.g.
<str name="f.ID.qf">id</str>

Which would direct ID:1 to instead search id:1

Geraint



-----Original Message-----
From: Peemöller, Björn [mailto:Bjoern.Peemoeller@berenberg.de]
Sent: 15 May 2017 14:17
To: 'solr-user@lucene.apache.org' <so...@lucene.apache.org>
Subject: AW: Configure query parser to handle field name case-insensitive

Hi Rick,

thank you for your reply! I really meant field *names*, since our values are already processed by a lower case filter (both index and query). However, our users are confused because they can search for "id:1" but not for "ID:1". Furthermore, we employ the EDisMax query parser, so then even get no error message.

Therefore, I thought it may be sufficient to map all field names to lower case at the query level so that I do not have to introduce additional fields.

Regards,
Björn

-----Ursprüngliche Nachricht-----
Von: Rick Leir [mailto:rleir@leirtech.com]
Gesendet: Montag, 15. Mai 2017 13:48
An: solr-user@lucene.apache.org
Betreff: Re: Configure query parser to handle field name case-insensitive

Björn
Field names or values? I assume values. Your analysis chain in schema.xml probably downcases chars, if not then that could be your problem.

Field _name_? Then you might have to copyfield the field to a new field with the desired case. Avoid doing that if you can. Cheers -- Rick

On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn" <Bj...@berenberg.de> wrote:
>Hi all,
>
>I'm fairly new at using Solr and I need to configure our instance to
>accept field names in both uppercase and lowercase (they are defined as
>lowercase in our configuration). Is there a simple way to achieve this?
>
>Thanks in advance,
>Björn
>
>Björn Peemöller
>IT & IT Operations
>
>BERENBERG
>Joh. Berenberg, Gossler & Co. KG
>Neuer Jungfernstieg 20
>20354 Hamburg
>
>Telefon +49 40 350 60-8548
>Telefax +49 40 350 60-900
>E-Mail
>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>www.berenberg.de<http://www.berenberg.de/>
>
>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>
>
>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie
>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>erhalten haben, informieren Sie bitte sofort den Absender über die
>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen
>Erklaerungen oder Auftraege von Dritten entgegen.
>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>confidentiality notice.

--
Sorry for being brief. Alternate email is rickleir at yahoo dot com

Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtuemlich erhalten haben, informieren Sie bitte sofort den Absender über die Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte Weitergabe der darin enthaltenen Daten und Informationen sind nicht gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen namens unseres Hauses grundsaetzlich der Unterschriften zweier ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen Erklaerungen oder Auftraege von Dritten entgegen.
Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden Sie sich bitte an den Absender oder an info@berenberg.de. Please refer to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our confidentiality notice.

________________________________


Syngenta Limited, Registered in England No 2710846; Registered Office : Syngenta, Jealott's Hill International Research Centre, Bracknell, Berkshire, RG42 6EY, United Kingdom

This message may contain confidential information. If you are not the designated recipient, please notify the sender immediately, and delete the original and any copies. Any use of the message by you is prohibited.

Re: Configure query parser to handle field name case-insensitive

Posted by Erick Erickson <er...@gmail.com>.
Rick:

Easiest to _code_. There isn't any. And if you just toss the problem
over the fence to support then it's not a problem ;)

Best,
Erick

On Tue, May 16, 2017 at 9:04 AM, Rick Leir <rl...@leirtech.com> wrote:
> Björn
> You are not serious about (1) are you? Yikes!! Easiest for you if you do not need to sit at the helpdesk. Easiest if the users stop using the system.
>
> My guess is that (2) is easiest if you have text entry boxes for each field, and the user need not type in the field name. Cheers -- Rick
>
> On May 16, 2017 10:56:37 AM EDT, Erick Erickson <er...@gmail.com> wrote:
>>Yeah, your options (5) and (6) are.... well... definitely at the
>>bottom of _my_ list, I understand you included them for
>>completeness...
>>
>>as for (4) Oh, my aching head. Parsers give me a headache ;)
>>
>>Yes, (1) is the easiest.(2) and (3) mostly depend on where you're most
>>comfortable coding. If you intercept the query on the backend in Java
>>_very_ early in the process you are working with essentially the same
>>string as you would in JS on the front end so it's a tossup. You might
>>just be more comfortable writing JS on the client rather than Java and
>>getting it hooked in to Solr, really your choice.
>>
>>Best,
>>Erick
>>
>>2017-05-16 0:59 GMT-07:00 Peemöller, Björn
>><Bj...@berenberg.de>:
>>> Hi all,
>>>
>>> thank you for your replies!
>>>
>>> We do not directly expose the Solr API, but provide an endpoint in
>>our backend which acts as a proxy for a specific search handler. One
>>requirement in our application is to search for people using various
>>properties, e.g., first name, last name, description, date of birth.
>>For simplicity reasons, we want to provide only a single search input
>>and allow the user to narrow down its results using the query syntax,
>>e.g. "firstname:John".
>>>
>>> Based on your suggestions, I can see the following solutions for our
>>problem:
>>>
>>> 1) Train the users to denote fieldnames in lowercase - they need to
>>know the exact field names anyway.
>>> 2) Modify (i.e., lowercase) the search term in the backend (Java)
>>> 3) Modify (i.e., lowercase) the search term in the frontend (JS)
>>> 4) Modify the Solr query parser (provide a customized implementation)
>>> 5) Define *a lot* of field aliases
>>> 6) Define *a lot* of copy fields
>>>
>>> I assess these solutions to be ordered in decreasing quality, so I
>>think that we will start to improve with more user guidance.
>>>
>>> Thanks to all,
>>> Björn
>>>
>>> -----Ursprüngliche Nachricht-----
>>> Von: Rick Leir [mailto:rleir@leirtech.com]
>>> Gesendet: Montag, 15. Mai 2017 18:33
>>> An: solr-user@lucene.apache.org
>>> Betreff: Re: Configure query parser to handle field name
>>case-insensitive
>>>
>>> Björn
>>> Yes, at query time you could downcase the names. Not in Solr, but in
>>the front-end web app you have in front of Solr. It needs to be a bit
>>smart, so it can downcase the field names but not the query terms.
>>>
>>> I assume you do not expose Solr directly to the web.
>>>
>>> This downcasing might be easier to do in Javascript in the browser.
>>Particularly if the user never has to enter a field name.
>>>
>>> Another solution, this time inside Solr, is to provide copyfields for
>>ID, Id, and maybe iD. And for other fields that you mention in queries.
>>This will consume some memory, particularly for saved fields, so I
>>hesitate to even suggest it. Cheers - Rick
>>>
>>>
>>> On May 15, 2017 9:16:59 AM EDT, "Peemöller, Björn"
>><Bj...@berenberg.de> wrote:
>>>>Hi Rick,
>>>>
>>>>thank you for your reply! I really meant field *names*, since our
>>>>values are already processed by a lower case filter (both index and
>>>>query). However, our users are confused because they can search for
>>>>"id:1" but not for "ID:1". Furthermore, we employ the EDisMax query
>>>>parser, so then even get no error message.
>>>>
>>>>Therefore, I thought it may be sufficient to map all field names to
>>>>lower case at the query level so that I do not have to introduce
>>>>additional fields.
>>>>
>>>>Regards,
>>>>Björn
>>>>
>>>>-----Ursprüngliche Nachricht-----
>>>>Von: Rick Leir [mailto:rleir@leirtech.com]
>>>>Gesendet: Montag, 15. Mai 2017 13:48
>>>>An: solr-user@lucene.apache.org
>>>>Betreff: Re: Configure query parser to handle field name
>>>>case-insensitive
>>>>
>>>>Björn
>>>>Field names or values? I assume values. Your analysis chain in
>>>>schema.xml probably downcases chars, if not then that could be your
>>>>problem.
>>>>
>>>>Field _name_? Then you might have to copyfield the field to a new
>>field
>>>>with the desired case. Avoid doing that if you can. Cheers -- Rick
>>>>
>>>>On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn"
>>>><Bj...@berenberg.de> wrote:
>>>>>Hi all,
>>>>>
>>>>>I'm fairly new at using Solr and I need to configure our instance to
>>>>>accept field names in both uppercase and lowercase (they are defined
>>>>as
>>>>>lowercase in our configuration). Is there a simple way to achieve
>>>>this?
>>>>>
>>>>>Thanks in advance,
>>>>>Björn
>>>>>
>>>>>Björn Peemöller
>>>>>IT & IT Operations
>>>>>
>>>>>BERENBERG
>>>>>Joh. Berenberg, Gossler & Co. KG
>>>>>Neuer Jungfernstieg 20
>>>>>20354 Hamburg
>>>>>
>>>>>Telefon +49 40 350 60-8548
>>>>>Telefax +49 40 350 60-900
>>>>>E-Mail
>>>>>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>>>>>www.berenberg.de<http://www.berenberg.de/>
>>>>>
>>>>>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>>>>>
>>>>>
>>>>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>>>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>>>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn
>>>>Sie
>>>>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>>>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>>>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>>>>einschliesslich etwa beigefuegter Anhaenge unverzueglich
>>vollstaendig
>>>>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>>>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>>>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>>>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche
>>Erklaerungen
>>>>
>>>>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>>>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen.
>>Wir
>>>>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail
>>an
>>>>
>>>>>Dritte. Demgemaess nehmen wir per E-Mail auch keine
>>>>rechtsverbindlichen
>>>>>Erklaerungen oder Auftraege von Dritten entgegen.
>>>>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>>>>Sie sich bitte an den Absender oder an info@berenberg.de. Please
>>refer
>>>>
>>>>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>>>>confidentiality notice.
>>>>
>>>>--
>>>>Sorry for being brief. Alternate email is rickleir at yahoo dot com
>>>>
>>>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn
>>Sie
>>>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>>>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche
>>Erklaerungen
>>>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>>>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail
>>an
>>>>Dritte. Demgemaess nehmen wir per E-Mail auch keine
>>rechtsverbindlichen
>>>>Erklaerungen oder Auftraege von Dritten entgegen.
>>>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>>>Sie sich bitte an den Absender oder an info@berenberg.de. Please
>>refer
>>>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>>>confidentiality notice.
>>>
>>> --
>>> Sorry for being brief. Alternate email is rickleir at yahoo dot com
>>>
>>> Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie
>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen
>>Erklaerungen oder Auftraege von Dritten entgegen.
>>> Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>confidentiality notice.
>>>
>
> --
> Sorry for being brief. Alternate email is rickleir at yahoo dot com

Re: Configure query parser to handle field name case-insensitive

Posted by Rick Leir <rl...@leirtech.com>.
Björn
You are not serious about (1) are you? Yikes!! Easiest for you if you do not need to sit at the helpdesk. Easiest if the users stop using the system. 

My guess is that (2) is easiest if you have text entry boxes for each field, and the user need not type in the field name. Cheers -- Rick

On May 16, 2017 10:56:37 AM EDT, Erick Erickson <er...@gmail.com> wrote:
>Yeah, your options (5) and (6) are.... well... definitely at the
>bottom of _my_ list, I understand you included them for
>completeness...
>
>as for (4) Oh, my aching head. Parsers give me a headache ;)
>
>Yes, (1) is the easiest.(2) and (3) mostly depend on where you're most
>comfortable coding. If you intercept the query on the backend in Java
>_very_ early in the process you are working with essentially the same
>string as you would in JS on the front end so it's a tossup. You might
>just be more comfortable writing JS on the client rather than Java and
>getting it hooked in to Solr, really your choice.
>
>Best,
>Erick
>
>2017-05-16 0:59 GMT-07:00 Peemöller, Björn
><Bj...@berenberg.de>:
>> Hi all,
>>
>> thank you for your replies!
>>
>> We do not directly expose the Solr API, but provide an endpoint in
>our backend which acts as a proxy for a specific search handler. One
>requirement in our application is to search for people using various
>properties, e.g., first name, last name, description, date of birth.
>For simplicity reasons, we want to provide only a single search input
>and allow the user to narrow down its results using the query syntax,
>e.g. "firstname:John".
>>
>> Based on your suggestions, I can see the following solutions for our
>problem:
>>
>> 1) Train the users to denote fieldnames in lowercase - they need to
>know the exact field names anyway.
>> 2) Modify (i.e., lowercase) the search term in the backend (Java)
>> 3) Modify (i.e., lowercase) the search term in the frontend (JS)
>> 4) Modify the Solr query parser (provide a customized implementation)
>> 5) Define *a lot* of field aliases
>> 6) Define *a lot* of copy fields
>>
>> I assess these solutions to be ordered in decreasing quality, so I
>think that we will start to improve with more user guidance.
>>
>> Thanks to all,
>> Björn
>>
>> -----Ursprüngliche Nachricht-----
>> Von: Rick Leir [mailto:rleir@leirtech.com]
>> Gesendet: Montag, 15. Mai 2017 18:33
>> An: solr-user@lucene.apache.org
>> Betreff: Re: Configure query parser to handle field name
>case-insensitive
>>
>> Björn
>> Yes, at query time you could downcase the names. Not in Solr, but in
>the front-end web app you have in front of Solr. It needs to be a bit
>smart, so it can downcase the field names but not the query terms.
>>
>> I assume you do not expose Solr directly to the web.
>>
>> This downcasing might be easier to do in Javascript in the browser.
>Particularly if the user never has to enter a field name.
>>
>> Another solution, this time inside Solr, is to provide copyfields for
>ID, Id, and maybe iD. And for other fields that you mention in queries.
>This will consume some memory, particularly for saved fields, so I
>hesitate to even suggest it. Cheers - Rick
>>
>>
>> On May 15, 2017 9:16:59 AM EDT, "Peemöller, Björn"
><Bj...@berenberg.de> wrote:
>>>Hi Rick,
>>>
>>>thank you for your reply! I really meant field *names*, since our
>>>values are already processed by a lower case filter (both index and
>>>query). However, our users are confused because they can search for
>>>"id:1" but not for "ID:1". Furthermore, we employ the EDisMax query
>>>parser, so then even get no error message.
>>>
>>>Therefore, I thought it may be sufficient to map all field names to
>>>lower case at the query level so that I do not have to introduce
>>>additional fields.
>>>
>>>Regards,
>>>Björn
>>>
>>>-----Ursprüngliche Nachricht-----
>>>Von: Rick Leir [mailto:rleir@leirtech.com]
>>>Gesendet: Montag, 15. Mai 2017 13:48
>>>An: solr-user@lucene.apache.org
>>>Betreff: Re: Configure query parser to handle field name
>>>case-insensitive
>>>
>>>Björn
>>>Field names or values? I assume values. Your analysis chain in
>>>schema.xml probably downcases chars, if not then that could be your
>>>problem.
>>>
>>>Field _name_? Then you might have to copyfield the field to a new
>field
>>>with the desired case. Avoid doing that if you can. Cheers -- Rick
>>>
>>>On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn"
>>><Bj...@berenberg.de> wrote:
>>>>Hi all,
>>>>
>>>>I'm fairly new at using Solr and I need to configure our instance to
>>>>accept field names in both uppercase and lowercase (they are defined
>>>as
>>>>lowercase in our configuration). Is there a simple way to achieve
>>>this?
>>>>
>>>>Thanks in advance,
>>>>Björn
>>>>
>>>>Björn Peemöller
>>>>IT & IT Operations
>>>>
>>>>BERENBERG
>>>>Joh. Berenberg, Gossler & Co. KG
>>>>Neuer Jungfernstieg 20
>>>>20354 Hamburg
>>>>
>>>>Telefon +49 40 350 60-8548
>>>>Telefax +49 40 350 60-900
>>>>E-Mail
>>>>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>>>>www.berenberg.de<http://www.berenberg.de/>
>>>>
>>>>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>>>>
>>>>
>>>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn
>>>Sie
>>>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>>>einschliesslich etwa beigefuegter Anhaenge unverzueglich
>vollstaendig
>>>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche
>Erklaerungen
>>>
>>>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen.
>Wir
>>>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail
>an
>>>
>>>>Dritte. Demgemaess nehmen wir per E-Mail auch keine
>>>rechtsverbindlichen
>>>>Erklaerungen oder Auftraege von Dritten entgegen.
>>>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>>>Sie sich bitte an den Absender oder an info@berenberg.de. Please
>refer
>>>
>>>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>>>confidentiality notice.
>>>
>>>--
>>>Sorry for being brief. Alternate email is rickleir at yahoo dot com
>>>
>>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn
>Sie
>>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche
>Erklaerungen
>>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail
>an
>>>Dritte. Demgemaess nehmen wir per E-Mail auch keine
>rechtsverbindlichen
>>>Erklaerungen oder Auftraege von Dritten entgegen.
>>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>>Sie sich bitte an den Absender oder an info@berenberg.de. Please
>refer
>>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>>confidentiality notice.
>>
>> --
>> Sorry for being brief. Alternate email is rickleir at yahoo dot com
>>
>> Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie
>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>erhalten haben, informieren Sie bitte sofort den Absender über die
>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen
>Erklaerungen oder Auftraege von Dritten entgegen.
>> Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>confidentiality notice.
>>

-- 
Sorry for being brief. Alternate email is rickleir at yahoo dot com 

Re: Configure query parser to handle field name case-insensitive

Posted by Erick Erickson <er...@gmail.com>.
Yeah, your options (5) and (6) are.... well... definitely at the
bottom of _my_ list, I understand you included them for
completeness...

as for (4) Oh, my aching head. Parsers give me a headache ;)

Yes, (1) is the easiest.(2) and (3) mostly depend on where you're most
comfortable coding. If you intercept the query on the backend in Java
_very_ early in the process you are working with essentially the same
string as you would in JS on the front end so it's a tossup. You might
just be more comfortable writing JS on the client rather than Java and
getting it hooked in to Solr, really your choice.

Best,
Erick

2017-05-16 0:59 GMT-07:00 Peemöller, Björn <Bj...@berenberg.de>:
> Hi all,
>
> thank you for your replies!
>
> We do not directly expose the Solr API, but provide an endpoint in our backend which acts as a proxy for a specific search handler. One requirement in our application is to search for people using various properties, e.g., first name, last name, description, date of birth. For simplicity reasons, we want to provide only a single search input and allow the user to narrow down its results using the query syntax, e.g. "firstname:John".
>
> Based on your suggestions, I can see the following solutions for our problem:
>
> 1) Train the users to denote fieldnames in lowercase - they need to know the exact field names anyway.
> 2) Modify (i.e., lowercase) the search term in the backend (Java)
> 3) Modify (i.e., lowercase) the search term in the frontend (JS)
> 4) Modify the Solr query parser (provide a customized implementation)
> 5) Define *a lot* of field aliases
> 6) Define *a lot* of copy fields
>
> I assess these solutions to be ordered in decreasing quality, so I think that we will start to improve with more user guidance.
>
> Thanks to all,
> Björn
>
> -----Ursprüngliche Nachricht-----
> Von: Rick Leir [mailto:rleir@leirtech.com]
> Gesendet: Montag, 15. Mai 2017 18:33
> An: solr-user@lucene.apache.org
> Betreff: Re: Configure query parser to handle field name case-insensitive
>
> Björn
> Yes, at query time you could downcase the names. Not in Solr, but in the front-end web app you have in front of Solr. It needs to be a bit smart, so it can downcase the field names but not the query terms.
>
> I assume you do not expose Solr directly to the web.
>
> This downcasing might be easier to do in Javascript in the browser. Particularly if the user never has to enter a field name.
>
> Another solution, this time inside Solr, is to provide copyfields for ID, Id, and maybe iD. And for other fields that you mention in queries. This will consume some memory, particularly for saved fields, so I hesitate to even suggest it. Cheers - Rick
>
>
> On May 15, 2017 9:16:59 AM EDT, "Peemöller, Björn" <Bj...@berenberg.de> wrote:
>>Hi Rick,
>>
>>thank you for your reply! I really meant field *names*, since our
>>values are already processed by a lower case filter (both index and
>>query). However, our users are confused because they can search for
>>"id:1" but not for "ID:1". Furthermore, we employ the EDisMax query
>>parser, so then even get no error message.
>>
>>Therefore, I thought it may be sufficient to map all field names to
>>lower case at the query level so that I do not have to introduce
>>additional fields.
>>
>>Regards,
>>Björn
>>
>>-----Ursprüngliche Nachricht-----
>>Von: Rick Leir [mailto:rleir@leirtech.com]
>>Gesendet: Montag, 15. Mai 2017 13:48
>>An: solr-user@lucene.apache.org
>>Betreff: Re: Configure query parser to handle field name
>>case-insensitive
>>
>>Björn
>>Field names or values? I assume values. Your analysis chain in
>>schema.xml probably downcases chars, if not then that could be your
>>problem.
>>
>>Field _name_? Then you might have to copyfield the field to a new field
>>with the desired case. Avoid doing that if you can. Cheers -- Rick
>>
>>On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn"
>><Bj...@berenberg.de> wrote:
>>>Hi all,
>>>
>>>I'm fairly new at using Solr and I need to configure our instance to
>>>accept field names in both uppercase and lowercase (they are defined
>>as
>>>lowercase in our configuration). Is there a simple way to achieve
>>this?
>>>
>>>Thanks in advance,
>>>Björn
>>>
>>>Björn Peemöller
>>>IT & IT Operations
>>>
>>>BERENBERG
>>>Joh. Berenberg, Gossler & Co. KG
>>>Neuer Jungfernstieg 20
>>>20354 Hamburg
>>>
>>>Telefon +49 40 350 60-8548
>>>Telefax +49 40 350 60-900
>>>E-Mail
>>>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>>>www.berenberg.de<http://www.berenberg.de/>
>>>
>>>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>>>
>>>
>>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn
>>Sie
>>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>>
>>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>>
>>>Dritte. Demgemaess nehmen wir per E-Mail auch keine
>>rechtsverbindlichen
>>>Erklaerungen oder Auftraege von Dritten entgegen.
>>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>>
>>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>>confidentiality notice.
>>
>>--
>>Sorry for being brief. Alternate email is rickleir at yahoo dot com
>>
>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie
>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen
>>Erklaerungen oder Auftraege von Dritten entgegen.
>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>confidentiality notice.
>
> --
> Sorry for being brief. Alternate email is rickleir at yahoo dot com
>
> Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtuemlich erhalten haben, informieren Sie bitte sofort den Absender über die Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte Weitergabe der darin enthaltenen Daten und Informationen sind nicht gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen namens unseres Hauses grundsaetzlich der Unterschriften zweier ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen Erklaerungen oder Auftraege von Dritten entgegen.
> Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden Sie sich bitte an den Absender oder an info@berenberg.de. Please refer to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our confidentiality notice.
>

AW: Configure query parser to handle field name case-insensitive

Posted by Peemöller, Björn <Bj...@berenberg.de>.
Hi all,

thank you for your replies!

We do not directly expose the Solr API, but provide an endpoint in our backend which acts as a proxy for a specific search handler. One requirement in our application is to search for people using various properties, e.g., first name, last name, description, date of birth. For simplicity reasons, we want to provide only a single search input and allow the user to narrow down its results using the query syntax, e.g. "firstname:John".

Based on your suggestions, I can see the following solutions for our problem:

1) Train the users to denote fieldnames in lowercase - they need to know the exact field names anyway.
2) Modify (i.e., lowercase) the search term in the backend (Java)
3) Modify (i.e., lowercase) the search term in the frontend (JS)
4) Modify the Solr query parser (provide a customized implementation)
5) Define *a lot* of field aliases 
6) Define *a lot* of copy fields

I assess these solutions to be ordered in decreasing quality, so I think that we will start to improve with more user guidance.

Thanks to all,
Björn

-----Ursprüngliche Nachricht-----
Von: Rick Leir [mailto:rleir@leirtech.com] 
Gesendet: Montag, 15. Mai 2017 18:33
An: solr-user@lucene.apache.org
Betreff: Re: Configure query parser to handle field name case-insensitive

Björn
Yes, at query time you could downcase the names. Not in Solr, but in the front-end web app you have in front of Solr. It needs to be a bit smart, so it can downcase the field names but not the query terms.

I assume you do not expose Solr directly to the web.

This downcasing might be easier to do in Javascript in the browser. Particularly if the user never has to enter a field name.

Another solution, this time inside Solr, is to provide copyfields for ID, Id, and maybe iD. And for other fields that you mention in queries. This will consume some memory, particularly for saved fields, so I hesitate to even suggest it. Cheers - Rick


On May 15, 2017 9:16:59 AM EDT, "Peemöller, Björn" <Bj...@berenberg.de> wrote:
>Hi Rick,
>
>thank you for your reply! I really meant field *names*, since our 
>values are already processed by a lower case filter (both index and 
>query). However, our users are confused because they can search for 
>"id:1" but not for "ID:1". Furthermore, we employ the EDisMax query 
>parser, so then even get no error message.
>
>Therefore, I thought it may be sufficient to map all field names to 
>lower case at the query level so that I do not have to introduce 
>additional fields.
>
>Regards,
>Björn
>
>-----Ursprüngliche Nachricht-----
>Von: Rick Leir [mailto:rleir@leirtech.com]
>Gesendet: Montag, 15. Mai 2017 13:48
>An: solr-user@lucene.apache.org
>Betreff: Re: Configure query parser to handle field name 
>case-insensitive
>
>Björn
>Field names or values? I assume values. Your analysis chain in 
>schema.xml probably downcases chars, if not then that could be your 
>problem.
>
>Field _name_? Then you might have to copyfield the field to a new field 
>with the desired case. Avoid doing that if you can. Cheers -- Rick
>
>On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn"
><Bj...@berenberg.de> wrote:
>>Hi all,
>>
>>I'm fairly new at using Solr and I need to configure our instance to 
>>accept field names in both uppercase and lowercase (they are defined
>as
>>lowercase in our configuration). Is there a simple way to achieve
>this?
>>
>>Thanks in advance,
>>Björn
>>
>>Björn Peemöller
>>IT & IT Operations
>>
>>BERENBERG
>>Joh. Berenberg, Gossler & Co. KG
>>Neuer Jungfernstieg 20
>>20354 Hamburg
>>
>>Telefon +49 40 350 60-8548
>>Telefax +49 40 350 60-900
>>E-Mail
>>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>>www.berenberg.de<http://www.berenberg.de/>
>>
>>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>>
>>
>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist 
>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder 
>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn
>Sie
>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich 
>>erhalten haben, informieren Sie bitte sofort den Absender über die 
>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht 
>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig 
>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht 
>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte 
>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht 
>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>
>>namens unseres Hauses grundsaetzlich der Unterschriften zweier 
>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir 
>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>
>>Dritte. Demgemaess nehmen wir per E-Mail auch keine
>rechtsverbindlichen
>>Erklaerungen oder Auftraege von Dritten entgegen.
>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden 
>>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>
>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our 
>>confidentiality notice.
>
>--
>Sorry for being brief. Alternate email is rickleir at yahoo dot com
>
>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist 
>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder 
>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie 
>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich 
>erhalten haben, informieren Sie bitte sofort den Absender über die 
>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht 
>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig 
>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht 
>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte 
>Weitergabe der darin enthaltenen Daten und Informationen sind nicht 
>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen 
>namens unseres Hauses grundsaetzlich der Unterschriften zweier 
>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir 
>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an 
>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen 
>Erklaerungen oder Auftraege von Dritten entgegen.
>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden 
>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer 
>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our 
>confidentiality notice.

--
Sorry for being brief. Alternate email is rickleir at yahoo dot com 

Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtuemlich erhalten haben, informieren Sie bitte sofort den Absender über die Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte Weitergabe der darin enthaltenen Daten und Informationen sind nicht gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen namens unseres Hauses grundsaetzlich der Unterschriften zweier ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen Erklaerungen oder Auftraege von Dritten entgegen. 
Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden Sie sich bitte an den Absender oder an info@berenberg.de. Please refer to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our confidentiality notice.


Re: Configure query parser to handle field name case-insensitive

Posted by Rick Leir <rl...@leirtech.com>.
Björn
Yes, at query time you could downcase the names. Not in Solr, but in the front-end web app you have in front of Solr. It needs to be a bit smart, so it can downcase the field names but not the query terms.

I assume you do not expose Solr directly to the web.

This downcasing might be easier to do in Javascript in the browser. Particularly if the user never has to enter a field name.

Another solution, this time inside Solr, is to provide copyfields for ID, Id, and maybe iD. And for other fields that you mention in queries. This will consume some memory, particularly for saved fields, so I hesitate to even suggest it. Cheers - Rick


On May 15, 2017 9:16:59 AM EDT, "Peemöller, Björn" <Bj...@berenberg.de> wrote:
>Hi Rick,
>
>thank you for your reply! I really meant field *names*, since our
>values are already processed by a lower case filter (both index and
>query). However, our users are confused because they can search for
>"id:1" but not for "ID:1". Furthermore, we employ the EDisMax query
>parser, so then even get no error message.
>
>Therefore, I thought it may be sufficient to map all field names to
>lower case at the query level so that I do not have to introduce
>additional fields.
>
>Regards,
>Björn
>
>-----Ursprüngliche Nachricht-----
>Von: Rick Leir [mailto:rleir@leirtech.com] 
>Gesendet: Montag, 15. Mai 2017 13:48
>An: solr-user@lucene.apache.org
>Betreff: Re: Configure query parser to handle field name
>case-insensitive
>
>Björn
>Field names or values? I assume values. Your analysis chain in
>schema.xml probably downcases chars, if not then that could be your
>problem.
>
>Field _name_? Then you might have to copyfield the field to a new field
>with the desired case. Avoid doing that if you can. Cheers -- Rick
>
>On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn"
><Bj...@berenberg.de> wrote:
>>Hi all,
>>
>>I'm fairly new at using Solr and I need to configure our instance to 
>>accept field names in both uppercase and lowercase (they are defined
>as 
>>lowercase in our configuration). Is there a simple way to achieve
>this?
>>
>>Thanks in advance,
>>Björn
>>
>>Björn Peemöller
>>IT & IT Operations
>>
>>BERENBERG
>>Joh. Berenberg, Gossler & Co. KG
>>Neuer Jungfernstieg 20
>>20354 Hamburg
>>
>>Telefon +49 40 350 60-8548
>>Telefax +49 40 350 60-900
>>E-Mail
>>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>>www.berenberg.de<http://www.berenberg.de/>
>>
>>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>>
>>
>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist 
>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder 
>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn
>Sie 
>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich 
>>erhalten haben, informieren Sie bitte sofort den Absender über die 
>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht 
>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig 
>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht 
>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte 
>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht 
>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>
>>namens unseres Hauses grundsaetzlich der Unterschriften zweier 
>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir 
>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>
>>Dritte. Demgemaess nehmen wir per E-Mail auch keine
>rechtsverbindlichen 
>>Erklaerungen oder Auftraege von Dritten entgegen.
>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden 
>>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>
>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our 
>>confidentiality notice.
>
>--
>Sorry for being brief. Alternate email is rickleir at yahoo dot com 
>
>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie
>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>erhalten haben, informieren Sie bitte sofort den Absender über die
>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen
>Erklaerungen oder Auftraege von Dritten entgegen. 
>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>confidentiality notice.

-- 
Sorry for being brief. Alternate email is rickleir at yahoo dot com 

Re: Configure query parser to handle field name case-insensitive

Posted by Erick Erickson <er...@gmail.com>.
So do you have _users_ directly entering Solr queries? And are the
totally trusted to be
1> not malicious
2> already know your schema?

Because direct access to the Solr URL allows me to delete all your
data. Usually there are drop-downs or other UI "stuff" that allows you
to programmatically assign the field name.

Trying to get in there and parse an arbitrary query in component is
do-able but difficult.

As Geraint says, field aliasing will work, but you'd need to cover all
the possibilities. All uppercase to lowercase is easy, but camel case
etc. would lead to a lot of aliases.....

Best,
Erick

2017-05-15 6:16 GMT-07:00 Peemöller, Björn <Bj...@berenberg.de>:
> Hi Rick,
>
> thank you for your reply! I really meant field *names*, since our values are already processed by a lower case filter (both index and query). However, our users are confused because they can search for "id:1" but not for "ID:1". Furthermore, we employ the EDisMax query parser, so then even get no error message.
>
> Therefore, I thought it may be sufficient to map all field names to lower case at the query level so that I do not have to introduce additional fields.
>
> Regards,
> Björn
>
> -----Ursprüngliche Nachricht-----
> Von: Rick Leir [mailto:rleir@leirtech.com]
> Gesendet: Montag, 15. Mai 2017 13:48
> An: solr-user@lucene.apache.org
> Betreff: Re: Configure query parser to handle field name case-insensitive
>
> Björn
> Field names or values? I assume values. Your analysis chain in schema.xml probably downcases chars, if not then that could be your problem.
>
> Field _name_? Then you might have to copyfield the field to a new field with the desired case. Avoid doing that if you can. Cheers -- Rick
>
> On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn" <Bj...@berenberg.de> wrote:
>>Hi all,
>>
>>I'm fairly new at using Solr and I need to configure our instance to
>>accept field names in both uppercase and lowercase (they are defined as
>>lowercase in our configuration). Is there a simple way to achieve this?
>>
>>Thanks in advance,
>>Björn
>>
>>Björn Peemöller
>>IT & IT Operations
>>
>>BERENBERG
>>Joh. Berenberg, Gossler & Co. KG
>>Neuer Jungfernstieg 20
>>20354 Hamburg
>>
>>Telefon +49 40 350 60-8548
>>Telefax +49 40 350 60-900
>>E-Mail
>>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>>www.berenberg.de<http://www.berenberg.de/>
>>
>>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>>
>>
>>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie
>>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>>erhalten haben, informieren Sie bitte sofort den Absender über die
>>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen
>>Erklaerungen oder Auftraege von Dritten entgegen.
>>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>>confidentiality notice.
>
> --
> Sorry for being brief. Alternate email is rickleir at yahoo dot com
>
> Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtuemlich erhalten haben, informieren Sie bitte sofort den Absender über die Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte Weitergabe der darin enthaltenen Daten und Informationen sind nicht gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen namens unseres Hauses grundsaetzlich der Unterschriften zweier ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen Erklaerungen oder Auftraege von Dritten entgegen.
> Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden Sie sich bitte an den Absender oder an info@berenberg.de. Please refer to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our confidentiality notice.
>

AW: Configure query parser to handle field name case-insensitive

Posted by Peemöller, Björn <Bj...@berenberg.de>.
Hi Rick,

thank you for your reply! I really meant field *names*, since our values are already processed by a lower case filter (both index and query). However, our users are confused because they can search for "id:1" but not for "ID:1". Furthermore, we employ the EDisMax query parser, so then even get no error message.

Therefore, I thought it may be sufficient to map all field names to lower case at the query level so that I do not have to introduce additional fields.

Regards,
Björn

-----Ursprüngliche Nachricht-----
Von: Rick Leir [mailto:rleir@leirtech.com] 
Gesendet: Montag, 15. Mai 2017 13:48
An: solr-user@lucene.apache.org
Betreff: Re: Configure query parser to handle field name case-insensitive

Björn
Field names or values? I assume values. Your analysis chain in schema.xml probably downcases chars, if not then that could be your problem.

Field _name_? Then you might have to copyfield the field to a new field with the desired case. Avoid doing that if you can. Cheers -- Rick

On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn" <Bj...@berenberg.de> wrote:
>Hi all,
>
>I'm fairly new at using Solr and I need to configure our instance to 
>accept field names in both uppercase and lowercase (they are defined as 
>lowercase in our configuration). Is there a simple way to achieve this?
>
>Thanks in advance,
>Björn
>
>Björn Peemöller
>IT & IT Operations
>
>BERENBERG
>Joh. Berenberg, Gossler & Co. KG
>Neuer Jungfernstieg 20
>20354 Hamburg
>
>Telefon +49 40 350 60-8548
>Telefax +49 40 350 60-900
>E-Mail
>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>www.berenberg.de<http://www.berenberg.de/>
>
>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>
>
>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist 
>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder 
>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie 
>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich 
>erhalten haben, informieren Sie bitte sofort den Absender über die 
>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht 
>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig 
>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht 
>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte 
>Weitergabe der darin enthaltenen Daten und Informationen sind nicht 
>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen 
>namens unseres Hauses grundsaetzlich der Unterschriften zweier 
>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir 
>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an 
>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen 
>Erklaerungen oder Auftraege von Dritten entgegen.
>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden 
>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer 
>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our 
>confidentiality notice.

--
Sorry for being brief. Alternate email is rickleir at yahoo dot com 

Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie nicht der richtige Adressat sind oder diese Nachricht irrtuemlich erhalten haben, informieren Sie bitte sofort den Absender über die Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte Weitergabe der darin enthaltenen Daten und Informationen sind nicht gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen namens unseres Hauses grundsaetzlich der Unterschriften zweier ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen Erklaerungen oder Auftraege von Dritten entgegen. 
Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden Sie sich bitte an den Absender oder an info@berenberg.de. Please refer to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our confidentiality notice.


Re: Configure query parser to handle field name case-insensitive

Posted by Rick Leir <rl...@leirtech.com>.
Björn
Field names or values? I assume values. Your analysis chain in schema.xml probably downcases chars, if not then that could be your problem.

Field _name_? Then you might have to copyfield the field to a new field with the desired case. Avoid doing that if you can. Cheers -- Rick

On May 15, 2017 5:48:09 AM EDT, "Peemöller, Björn" <Bj...@berenberg.de> wrote:
>Hi all,
>
>I'm fairly new at using Solr and I need to configure our instance to
>accept field names in both uppercase and lowercase (they are defined as
>lowercase in our configuration). Is there a simple way to achieve this?
>
>Thanks in advance,
>Björn
>
>Björn Peemöller
>IT & IT Operations
>
>BERENBERG
>Joh. Berenberg, Gossler & Co. KG
>Neuer Jungfernstieg 20
>20354 Hamburg
>
>Telefon +49 40 350 60-8548
>Telefax +49 40 350 60-900
>E-Mail
>bjoern.peemoeller@berenberg.de<ma...@berenberg.de>
>www.berenberg.de<http://www.berenberg.de/>
>
>Sitz: Hamburg - Amtsgericht Hamburg HRA 42659
>
>
>Diese Nachricht einschliesslich etwa beigefuegter Anhaenge ist
>vertraulich und kann dem Bank- und Datengeheimnis unterliegen oder
>sonst rechtlich geschuetzte Daten und Informationen enthalten. Wenn Sie
>nicht der richtige Adressat sind oder diese Nachricht irrtuemlich
>erhalten haben, informieren Sie bitte sofort den Absender über die
>Antwortfunktion. Anschliessend moechten Sie bitte diese Nachricht
>einschliesslich etwa beigefuegter Anhaenge unverzueglich vollstaendig
>loeschen. Das unerlaubte Kopieren oder Speichern dieser Nachricht
>und/oder der ihr etwa beigefuegten Anhaenge sowie die unbefugte
>Weitergabe der darin enthaltenen Daten und Informationen sind nicht
>gestattet. Wir weisen darauf hin, dass rechtsverbindliche Erklaerungen
>namens unseres Hauses grundsaetzlich der Unterschriften zweier
>ausreichend bevollmaechtigter Vertreter unseres Hauses beduerfen. Wir
>verschicken daher keine rechtsverbindlichen Erklaerungen per E-Mail an
>Dritte. Demgemaess nehmen wir per E-Mail auch keine rechtsverbindlichen
>Erklaerungen oder Auftraege von Dritten entgegen. 
>Sollten Sie Schwierigkeiten beim Oeffnen dieser E-Mail haben, wenden
>Sie sich bitte an den Absender oder an info@berenberg.de. Please refer
>to http://www.berenberg.de/my_berenberg/disclaimer_e.html for our
>confidentiality notice.

-- 
Sorry for being brief. Alternate email is rickleir at yahoo dot com