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 elisabeth benoit <el...@gmail.com> on 2013/09/25 15:24:32 UTC

autocomplete_edge type split words

Hello,

I am using solr 4.2.1 and I have a autocomplete_edge type defined in
schema.xml


<fieldType name="autocomplete_edge" class="solr.TextField">
  <analyzer type="index">
    <charFilter class="solr.MappingCharFilterFactory"
mapping="mapping-ISOLatin1Accent.txt"/>
    <tokenizer class="solr.KeywordTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
replacement=" " replace="all"/>
    <filter class="solr.EdgeNGramFilterFactory" maxGramSize="30"
minGramSize="1"/>
   </analyzer>
  <analyzer type="query">
    <charFilter class="solr.MappingCharFilterFactory"
mapping="mapping-ISOLatin1Accent.txt"/>
    <tokenizer class="solr.KeywordTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
replacement=" " replace="all"/>
     <filter class="solr.PatternReplaceFilterFactory"
pattern="^(.{30})(.*)?" replacement="$1" replace="all"/>
  </analyzer>
</fieldType>

When I have a request with more then one word, for instance "rue de la", my
request doesn't match with my autocomplete_edge field unless I use quotes
around the query. In other words q=rue de la doesnt work and q="rue de la"
works.

I've check the request with debugQuery=on, and I can see in first case, the
query is splitted into words, and I don't understand why since my field
type uses KeywordTokenizerFactory.

Does anyone have a clue on how I can request my field without using quotes?

Thanks,
Elisabeth

Re: autocomplete_edge type split words

Posted by elisabeth benoit <el...@gmail.com>.
in fact, I've removed the autoGeneratePhraseQuery=true, and it doesn't
change anything. behaviour is the same with or without (ie request with
debugQuery=on is the same)

Thanks for your comments.

Best,
Elisabeth


2013/9/28 Erick Erickson <er...@gmail.com>

> You've probably been doing this right along, but adding
> debug=query will show the parsed query.
>
> I really question though, your apparent combination of
> autoGeneratePhraseQuery what looks like an ngram field.
> I'm not at all sure how those would interact...
>
> Best,
> Erick
>
> On Fri, Sep 27, 2013 at 10:12 AM, elisabeth benoit
> <el...@gmail.com> wrote:
> > Yes!
> >
> > what I've done is set autoGeneratePhraseQueries to true for my field,
> then
> > give it a boost (bq=myAutompleteEdgeNGramField="my query with
> spaces"^50).
> > This only worked with autoGeneratePhraseQueries=true, for a reason I
> didn't
> > understand.
> >
> > since when I did
> >
> > q= myAutompleteEdgeNGramField="my query with spaces", I didn't need
> > autoGeneratePhraseQueries
> > set to true.
> >
> > and, another thing is when I tried
> >
> > q=myAutocompleteNGramField:(my query with spaces) OR
> > myAutompleteEdgeNGramField="my
> > query with spaces"
> >
> > (with a request handler with edismax and default operator field = AND),
> the
> > request on myAutocompleteNGramField would OR the grams, so I had to put
> an
> > AND (myAutocompleteNGramField:(my AND query AND with AND spaces)), which
> > was pretty ugly.
> >
> > I don't always understand what is exactly going on. If you have a pointer
> > to some text I could read to get more insights about this, please let me
> > know.
> >
> > Thanks again,
> > Best regards,
> > Elisabeth
> >
> >
> >
> >
> > 2013/9/27 Erick Erickson <er...@gmail.com>
> >
> >> Have you looked at "autoGeneratePhraseQueries"? That might help.
> >>
> >> If that doesn't work, you can always do something like add an OR clause
> >> like
> >> OR "original query"
> >> and optionally boost it high. But I'd start with the autoGenerate bits.
> >>
> >> Best,
> >> Erick
> >>
> >>
> >> On Fri, Sep 27, 2013 at 7:37 AM, elisabeth benoit
> >> <el...@gmail.com> wrote:
> >> > Thanks for your answer.
> >> >
> >> > So I guess if someone wants to search on two fields, on with phrase
> query
> >> > and one with "normal" query (splitted in words), one has to find a
> way to
> >> > send query twice: one with quote and one without...
> >> >
> >> > Best regards,
> >> > Elisabeth
> >> >
> >> >
> >> > 2013/9/27 Erick Erickson <er...@gmail.com>
> >> >
> >> >> This is a classic issue where there's confusion between
> >> >> the query parser and field analysis.
> >> >>
> >> >> Early in the process the query parser has to take the input
> >> >> and break it up. that's how, for instance, a query like
> >> >> text:term1 term2
> >> >> gets parsed as
> >> >> text:term1 defaultfield:term2
> >> >> This happens long before the terms get to the analysis chain
> >> >> for the field.
> >> >>
> >> >> So your only options are to either quote the string or
> >> >> escape the spaces.
> >> >>
> >> >> Best,
> >> >> Erick
> >> >>
> >> >> On Wed, Sep 25, 2013 at 9:24 AM, elisabeth benoit
> >> >> <el...@gmail.com> wrote:
> >> >> > Hello,
> >> >> >
> >> >> > I am using solr 4.2.1 and I have a autocomplete_edge type defined
> in
> >> >> > schema.xml
> >> >> >
> >> >> >
> >> >> > <fieldType name="autocomplete_edge" class="solr.TextField">
> >> >> >   <analyzer type="index">
> >> >> >     <charFilter class="solr.MappingCharFilterFactory"
> >> >> > mapping="mapping-ISOLatin1Accent.txt"/>
> >> >> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
> >> >> >     <filter class="solr.LowerCaseFilterFactory"/>
> >> >> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> >> >> > replacement=" " replace="all"/>
> >> >> >     <filter class="solr.EdgeNGramFilterFactory" maxGramSize="30"
> >> >> > minGramSize="1"/>
> >> >> >    </analyzer>
> >> >> >   <analyzer type="query">
> >> >> >     <charFilter class="solr.MappingCharFilterFactory"
> >> >> > mapping="mapping-ISOLatin1Accent.txt"/>
> >> >> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
> >> >> >     <filter class="solr.LowerCaseFilterFactory"/>
> >> >> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> >> >> > replacement=" " replace="all"/>
> >> >> >      <filter class="solr.PatternReplaceFilterFactory"
> >> >> > pattern="^(.{30})(.*)?" replacement="$1" replace="all"/>
> >> >> >   </analyzer>
> >> >> > </fieldType>
> >> >> >
> >> >> > When I have a request with more then one word, for instance "rue de
> >> la",
> >> >> my
> >> >> > request doesn't match with my autocomplete_edge field unless I use
> >> quotes
> >> >> > around the query. In other words q=rue de la doesnt work and
> q="rue de
> >> >> la"
> >> >> > works.
> >> >> >
> >> >> > I've check the request with debugQuery=on, and I can see in first
> >> case,
> >> >> the
> >> >> > query is splitted into words, and I don't understand why since my
> >> field
> >> >> > type uses KeywordTokenizerFactory.
> >> >> >
> >> >> > Does anyone have a clue on how I can request my field without using
> >> >> quotes?
> >> >> >
> >> >> > Thanks,
> >> >> > Elisabeth
> >> >>
> >>
>

Re: autocomplete_edge type split words

Posted by Erick Erickson <er...@gmail.com>.
You've probably been doing this right along, but adding
debug=query will show the parsed query.

I really question though, your apparent combination of
autoGeneratePhraseQuery what looks like an ngram field.
I'm not at all sure how those would interact...

Best,
Erick

On Fri, Sep 27, 2013 at 10:12 AM, elisabeth benoit
<el...@gmail.com> wrote:
> Yes!
>
> what I've done is set autoGeneratePhraseQueries to true for my field, then
> give it a boost (bq=myAutompleteEdgeNGramField="my query with spaces"^50).
> This only worked with autoGeneratePhraseQueries=true, for a reason I didn't
> understand.
>
> since when I did
>
> q= myAutompleteEdgeNGramField="my query with spaces", I didn't need
> autoGeneratePhraseQueries
> set to true.
>
> and, another thing is when I tried
>
> q=myAutocompleteNGramField:(my query with spaces) OR
> myAutompleteEdgeNGramField="my
> query with spaces"
>
> (with a request handler with edismax and default operator field = AND), the
> request on myAutocompleteNGramField would OR the grams, so I had to put an
> AND (myAutocompleteNGramField:(my AND query AND with AND spaces)), which
> was pretty ugly.
>
> I don't always understand what is exactly going on. If you have a pointer
> to some text I could read to get more insights about this, please let me
> know.
>
> Thanks again,
> Best regards,
> Elisabeth
>
>
>
>
> 2013/9/27 Erick Erickson <er...@gmail.com>
>
>> Have you looked at "autoGeneratePhraseQueries"? That might help.
>>
>> If that doesn't work, you can always do something like add an OR clause
>> like
>> OR "original query"
>> and optionally boost it high. But I'd start with the autoGenerate bits.
>>
>> Best,
>> Erick
>>
>>
>> On Fri, Sep 27, 2013 at 7:37 AM, elisabeth benoit
>> <el...@gmail.com> wrote:
>> > Thanks for your answer.
>> >
>> > So I guess if someone wants to search on two fields, on with phrase query
>> > and one with "normal" query (splitted in words), one has to find a way to
>> > send query twice: one with quote and one without...
>> >
>> > Best regards,
>> > Elisabeth
>> >
>> >
>> > 2013/9/27 Erick Erickson <er...@gmail.com>
>> >
>> >> This is a classic issue where there's confusion between
>> >> the query parser and field analysis.
>> >>
>> >> Early in the process the query parser has to take the input
>> >> and break it up. that's how, for instance, a query like
>> >> text:term1 term2
>> >> gets parsed as
>> >> text:term1 defaultfield:term2
>> >> This happens long before the terms get to the analysis chain
>> >> for the field.
>> >>
>> >> So your only options are to either quote the string or
>> >> escape the spaces.
>> >>
>> >> Best,
>> >> Erick
>> >>
>> >> On Wed, Sep 25, 2013 at 9:24 AM, elisabeth benoit
>> >> <el...@gmail.com> wrote:
>> >> > Hello,
>> >> >
>> >> > I am using solr 4.2.1 and I have a autocomplete_edge type defined in
>> >> > schema.xml
>> >> >
>> >> >
>> >> > <fieldType name="autocomplete_edge" class="solr.TextField">
>> >> >   <analyzer type="index">
>> >> >     <charFilter class="solr.MappingCharFilterFactory"
>> >> > mapping="mapping-ISOLatin1Accent.txt"/>
>> >> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
>> >> >     <filter class="solr.LowerCaseFilterFactory"/>
>> >> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
>> >> > replacement=" " replace="all"/>
>> >> >     <filter class="solr.EdgeNGramFilterFactory" maxGramSize="30"
>> >> > minGramSize="1"/>
>> >> >    </analyzer>
>> >> >   <analyzer type="query">
>> >> >     <charFilter class="solr.MappingCharFilterFactory"
>> >> > mapping="mapping-ISOLatin1Accent.txt"/>
>> >> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
>> >> >     <filter class="solr.LowerCaseFilterFactory"/>
>> >> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
>> >> > replacement=" " replace="all"/>
>> >> >      <filter class="solr.PatternReplaceFilterFactory"
>> >> > pattern="^(.{30})(.*)?" replacement="$1" replace="all"/>
>> >> >   </analyzer>
>> >> > </fieldType>
>> >> >
>> >> > When I have a request with more then one word, for instance "rue de
>> la",
>> >> my
>> >> > request doesn't match with my autocomplete_edge field unless I use
>> quotes
>> >> > around the query. In other words q=rue de la doesnt work and q="rue de
>> >> la"
>> >> > works.
>> >> >
>> >> > I've check the request with debugQuery=on, and I can see in first
>> case,
>> >> the
>> >> > query is splitted into words, and I don't understand why since my
>> field
>> >> > type uses KeywordTokenizerFactory.
>> >> >
>> >> > Does anyone have a clue on how I can request my field without using
>> >> quotes?
>> >> >
>> >> > Thanks,
>> >> > Elisabeth
>> >>
>>

Re: autocomplete_edge type split words

Posted by elisabeth benoit <el...@gmail.com>.
Yes!

what I've done is set autoGeneratePhraseQueries to true for my field, then
give it a boost (bq=myAutompleteEdgeNGramField="my query with spaces"^50).
This only worked with autoGeneratePhraseQueries=true, for a reason I didn't
understand.

since when I did

q= myAutompleteEdgeNGramField="my query with spaces", I didn't need
autoGeneratePhraseQueries
set to true.

and, another thing is when I tried

q=myAutocompleteNGramField:(my query with spaces) OR
myAutompleteEdgeNGramField="my
query with spaces"

(with a request handler with edismax and default operator field = AND), the
request on myAutocompleteNGramField would OR the grams, so I had to put an
AND (myAutocompleteNGramField:(my AND query AND with AND spaces)), which
was pretty ugly.

I don't always understand what is exactly going on. If you have a pointer
to some text I could read to get more insights about this, please let me
know.

Thanks again,
Best regards,
Elisabeth




2013/9/27 Erick Erickson <er...@gmail.com>

> Have you looked at "autoGeneratePhraseQueries"? That might help.
>
> If that doesn't work, you can always do something like add an OR clause
> like
> OR "original query"
> and optionally boost it high. But I'd start with the autoGenerate bits.
>
> Best,
> Erick
>
>
> On Fri, Sep 27, 2013 at 7:37 AM, elisabeth benoit
> <el...@gmail.com> wrote:
> > Thanks for your answer.
> >
> > So I guess if someone wants to search on two fields, on with phrase query
> > and one with "normal" query (splitted in words), one has to find a way to
> > send query twice: one with quote and one without...
> >
> > Best regards,
> > Elisabeth
> >
> >
> > 2013/9/27 Erick Erickson <er...@gmail.com>
> >
> >> This is a classic issue where there's confusion between
> >> the query parser and field analysis.
> >>
> >> Early in the process the query parser has to take the input
> >> and break it up. that's how, for instance, a query like
> >> text:term1 term2
> >> gets parsed as
> >> text:term1 defaultfield:term2
> >> This happens long before the terms get to the analysis chain
> >> for the field.
> >>
> >> So your only options are to either quote the string or
> >> escape the spaces.
> >>
> >> Best,
> >> Erick
> >>
> >> On Wed, Sep 25, 2013 at 9:24 AM, elisabeth benoit
> >> <el...@gmail.com> wrote:
> >> > Hello,
> >> >
> >> > I am using solr 4.2.1 and I have a autocomplete_edge type defined in
> >> > schema.xml
> >> >
> >> >
> >> > <fieldType name="autocomplete_edge" class="solr.TextField">
> >> >   <analyzer type="index">
> >> >     <charFilter class="solr.MappingCharFilterFactory"
> >> > mapping="mapping-ISOLatin1Accent.txt"/>
> >> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
> >> >     <filter class="solr.LowerCaseFilterFactory"/>
> >> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> >> > replacement=" " replace="all"/>
> >> >     <filter class="solr.EdgeNGramFilterFactory" maxGramSize="30"
> >> > minGramSize="1"/>
> >> >    </analyzer>
> >> >   <analyzer type="query">
> >> >     <charFilter class="solr.MappingCharFilterFactory"
> >> > mapping="mapping-ISOLatin1Accent.txt"/>
> >> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
> >> >     <filter class="solr.LowerCaseFilterFactory"/>
> >> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> >> > replacement=" " replace="all"/>
> >> >      <filter class="solr.PatternReplaceFilterFactory"
> >> > pattern="^(.{30})(.*)?" replacement="$1" replace="all"/>
> >> >   </analyzer>
> >> > </fieldType>
> >> >
> >> > When I have a request with more then one word, for instance "rue de
> la",
> >> my
> >> > request doesn't match with my autocomplete_edge field unless I use
> quotes
> >> > around the query. In other words q=rue de la doesnt work and q="rue de
> >> la"
> >> > works.
> >> >
> >> > I've check the request with debugQuery=on, and I can see in first
> case,
> >> the
> >> > query is splitted into words, and I don't understand why since my
> field
> >> > type uses KeywordTokenizerFactory.
> >> >
> >> > Does anyone have a clue on how I can request my field without using
> >> quotes?
> >> >
> >> > Thanks,
> >> > Elisabeth
> >>
>

Re: autocomplete_edge type split words

Posted by Erick Erickson <er...@gmail.com>.
Have you looked at "autoGeneratePhraseQueries"? That might help.

If that doesn't work, you can always do something like add an OR clause like
OR "original query"
and optionally boost it high. But I'd start with the autoGenerate bits.

Best,
Erick


On Fri, Sep 27, 2013 at 7:37 AM, elisabeth benoit
<el...@gmail.com> wrote:
> Thanks for your answer.
>
> So I guess if someone wants to search on two fields, on with phrase query
> and one with "normal" query (splitted in words), one has to find a way to
> send query twice: one with quote and one without...
>
> Best regards,
> Elisabeth
>
>
> 2013/9/27 Erick Erickson <er...@gmail.com>
>
>> This is a classic issue where there's confusion between
>> the query parser and field analysis.
>>
>> Early in the process the query parser has to take the input
>> and break it up. that's how, for instance, a query like
>> text:term1 term2
>> gets parsed as
>> text:term1 defaultfield:term2
>> This happens long before the terms get to the analysis chain
>> for the field.
>>
>> So your only options are to either quote the string or
>> escape the spaces.
>>
>> Best,
>> Erick
>>
>> On Wed, Sep 25, 2013 at 9:24 AM, elisabeth benoit
>> <el...@gmail.com> wrote:
>> > Hello,
>> >
>> > I am using solr 4.2.1 and I have a autocomplete_edge type defined in
>> > schema.xml
>> >
>> >
>> > <fieldType name="autocomplete_edge" class="solr.TextField">
>> >   <analyzer type="index">
>> >     <charFilter class="solr.MappingCharFilterFactory"
>> > mapping="mapping-ISOLatin1Accent.txt"/>
>> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
>> >     <filter class="solr.LowerCaseFilterFactory"/>
>> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
>> > replacement=" " replace="all"/>
>> >     <filter class="solr.EdgeNGramFilterFactory" maxGramSize="30"
>> > minGramSize="1"/>
>> >    </analyzer>
>> >   <analyzer type="query">
>> >     <charFilter class="solr.MappingCharFilterFactory"
>> > mapping="mapping-ISOLatin1Accent.txt"/>
>> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
>> >     <filter class="solr.LowerCaseFilterFactory"/>
>> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
>> > replacement=" " replace="all"/>
>> >      <filter class="solr.PatternReplaceFilterFactory"
>> > pattern="^(.{30})(.*)?" replacement="$1" replace="all"/>
>> >   </analyzer>
>> > </fieldType>
>> >
>> > When I have a request with more then one word, for instance "rue de la",
>> my
>> > request doesn't match with my autocomplete_edge field unless I use quotes
>> > around the query. In other words q=rue de la doesnt work and q="rue de
>> la"
>> > works.
>> >
>> > I've check the request with debugQuery=on, and I can see in first case,
>> the
>> > query is splitted into words, and I don't understand why since my field
>> > type uses KeywordTokenizerFactory.
>> >
>> > Does anyone have a clue on how I can request my field without using
>> quotes?
>> >
>> > Thanks,
>> > Elisabeth
>>

Re: autocomplete_edge type split words

Posted by elisabeth benoit <el...@gmail.com>.
Thanks for your answer.

So I guess if someone wants to search on two fields, on with phrase query
and one with "normal" query (splitted in words), one has to find a way to
send query twice: one with quote and one without...

Best regards,
Elisabeth


2013/9/27 Erick Erickson <er...@gmail.com>

> This is a classic issue where there's confusion between
> the query parser and field analysis.
>
> Early in the process the query parser has to take the input
> and break it up. that's how, for instance, a query like
> text:term1 term2
> gets parsed as
> text:term1 defaultfield:term2
> This happens long before the terms get to the analysis chain
> for the field.
>
> So your only options are to either quote the string or
> escape the spaces.
>
> Best,
> Erick
>
> On Wed, Sep 25, 2013 at 9:24 AM, elisabeth benoit
> <el...@gmail.com> wrote:
> > Hello,
> >
> > I am using solr 4.2.1 and I have a autocomplete_edge type defined in
> > schema.xml
> >
> >
> > <fieldType name="autocomplete_edge" class="solr.TextField">
> >   <analyzer type="index">
> >     <charFilter class="solr.MappingCharFilterFactory"
> > mapping="mapping-ISOLatin1Accent.txt"/>
> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
> >     <filter class="solr.LowerCaseFilterFactory"/>
> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> > replacement=" " replace="all"/>
> >     <filter class="solr.EdgeNGramFilterFactory" maxGramSize="30"
> > minGramSize="1"/>
> >    </analyzer>
> >   <analyzer type="query">
> >     <charFilter class="solr.MappingCharFilterFactory"
> > mapping="mapping-ISOLatin1Accent.txt"/>
> >     <tokenizer class="solr.KeywordTokenizerFactory"/>
> >     <filter class="solr.LowerCaseFilterFactory"/>
> >     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> > replacement=" " replace="all"/>
> >      <filter class="solr.PatternReplaceFilterFactory"
> > pattern="^(.{30})(.*)?" replacement="$1" replace="all"/>
> >   </analyzer>
> > </fieldType>
> >
> > When I have a request with more then one word, for instance "rue de la",
> my
> > request doesn't match with my autocomplete_edge field unless I use quotes
> > around the query. In other words q=rue de la doesnt work and q="rue de
> la"
> > works.
> >
> > I've check the request with debugQuery=on, and I can see in first case,
> the
> > query is splitted into words, and I don't understand why since my field
> > type uses KeywordTokenizerFactory.
> >
> > Does anyone have a clue on how I can request my field without using
> quotes?
> >
> > Thanks,
> > Elisabeth
>

Re: autocomplete_edge type split words

Posted by Erick Erickson <er...@gmail.com>.
This is a classic issue where there's confusion between
the query parser and field analysis.

Early in the process the query parser has to take the input
and break it up. that's how, for instance, a query like
text:term1 term2
gets parsed as
text:term1 defaultfield:term2
This happens long before the terms get to the analysis chain
for the field.

So your only options are to either quote the string or
escape the spaces.

Best,
Erick

On Wed, Sep 25, 2013 at 9:24 AM, elisabeth benoit
<el...@gmail.com> wrote:
> Hello,
>
> I am using solr 4.2.1 and I have a autocomplete_edge type defined in
> schema.xml
>
>
> <fieldType name="autocomplete_edge" class="solr.TextField">
>   <analyzer type="index">
>     <charFilter class="solr.MappingCharFilterFactory"
> mapping="mapping-ISOLatin1Accent.txt"/>
>     <tokenizer class="solr.KeywordTokenizerFactory"/>
>     <filter class="solr.LowerCaseFilterFactory"/>
>     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> replacement=" " replace="all"/>
>     <filter class="solr.EdgeNGramFilterFactory" maxGramSize="30"
> minGramSize="1"/>
>    </analyzer>
>   <analyzer type="query">
>     <charFilter class="solr.MappingCharFilterFactory"
> mapping="mapping-ISOLatin1Accent.txt"/>
>     <tokenizer class="solr.KeywordTokenizerFactory"/>
>     <filter class="solr.LowerCaseFilterFactory"/>
>     <filter class="solr.PatternReplaceFilterFactory" pattern="\s+"
> replacement=" " replace="all"/>
>      <filter class="solr.PatternReplaceFilterFactory"
> pattern="^(.{30})(.*)?" replacement="$1" replace="all"/>
>   </analyzer>
> </fieldType>
>
> When I have a request with more then one word, for instance "rue de la", my
> request doesn't match with my autocomplete_edge field unless I use quotes
> around the query. In other words q=rue de la doesnt work and q="rue de la"
> works.
>
> I've check the request with debugQuery=on, and I can see in first case, the
> query is splitted into words, and I don't understand why since my field
> type uses KeywordTokenizerFactory.
>
> Does anyone have a clue on how I can request my field without using quotes?
>
> Thanks,
> Elisabeth