More detail can be found in Solr Docs https://cwiki.apache.org/confluence/display/solr/Suggester
On Thu, Dec 4, 2014 at 6:33 AM, Clemens Wyss DEV <clemens...@mysign.ch> wrote: > Enter the "factory"! ;) > <str > name="lookupImpl">org.apache.solr.spelling.suggest.fst.AnalyzingInfixLookupFactory</str> > > -----Ursprüngliche Nachricht----- > Von: Clemens Wyss DEV [mailto:clemens...@mysign.ch] > Gesendet: Donnerstag, 4. Dezember 2014 14:46 > An: solr-user@lucene.apache.org > Betreff: AW: Keeping capitalization in suggestions? > > Thx. > Where (in which jar) do I find > org.apache.solr.spelling.suggest.AnalyzingInfixSuggester ? > Or: > How do I declare the suggest-searchComponent in solrconfig.xml to make use > of (Lucene's?) AnalyzingInfixSuggester > > -----Ursprüngliche Nachricht----- > Von: Michael Sokolov [mailto:msoko...@safaribooksonline.com] > Gesendet: Donnerstag, 4. Dezember 2014 14:05 > An: solr-user@lucene.apache.org > Betreff: Re: Keeping capitalization in suggestions? > > Have a look at AnalyzingInfixSuggester - it does what you want. > > -Mike > > On 12/4/14 3:05 AM, Clemens Wyss DEV wrote: > > When I index a text such as "Chamäleon" and look for suggestions for > "chamä" and/or "Chamä", I'd expect to get "Chamäleon" (uppercased). > > But what happens is > > > > If lowecasefilter (see below (1)) set > > "chamä" returns "chamäleon" > > "Chamä" does not match > > > > If lowecasefilter (1) not set > > "Chamä" returns "Chamäleon" > > "chamä" does not match > > > > I guess lowecasefilter should not be set/active, but then how do I get > matches even if the search term is lowercased? > > > > Context: > > schema.xml > > ... > > <fieldType class="solr.TextField" name="text_de" > positionIncrementGap="100"> > > <analyzer type="index"> > > <tokenizer class="solr.StandardTokenizerFactory"/> > > <filter class="solr.LowerCaseFilterFactory"/> > > <filter class="solr.StopFilterFactory" ignoreCase="true" > words="lang/stopwords_de.txt"/> > > <filter class="solr.GermanLightStemFilterFactory"/> > > </analyzer> > > <analyzer type="query"> > > <tokenizer class="solr.StandardTokenizerFactory"/> > > <filter class="solr.SynonymFilterFactory" expand="true" > ignoreCase="true" synonyms="synonyms.txt"/> > > <filter class="solr.LowerCaseFilterFactory"/> > > <filter class="solr.StopFilterFactory" ignoreCase="true" > words="lang/stopwords_de.txt"/> > > <filter class="solr.GermanLightStemFilterFactory"/> > > </analyzer> > > </fieldType> > > ... > > <fieldType class="solr.TextField" name="text_suggest" > positionIncrementGap="100"> > > <analyzer> > > <tokenizer class="solr.UAX29URLEmailTokenizerFactory"/> > > <filter class="solr.StopFilterFactory" ignoreCase="true" > words="stopwords.txt"/> > > <filter class="solr.LowerCaseFilterFactory"/> <!-- (1) --> > > </analyzer> > > </fieldType> > > > > solrconfig.xml > > ----------------- > > ... > > <requestHandler > class="org.apache.solr.handler.component.SearchHandler" name="/suggest"> > > <lst name="defaults"> > > <str name="echoParams">none</str> > > <str name="wt">json</str> > > <str name="indent">false</str> > > <str name="spellcheck">true</str> > > <str name="spellcheck.dictionary">suggestDictionary</str> > > <str name="spellcheck.onlyMorePopular">true</str> > > <str name="spellcheck.count">5</str> > > <str name="spellcheck.collate">false</str> > > </lst> > > <arr name="components"> > > <str>suggest</str> > > </arr> > > </requestHandler> > > ... > > <searchComponent class="solr.SpellCheckComponent" name="suggest"> > > <lst name="spellchecker"> > > <str name="name">suggestDictionary</str> > > <str > name="classname">org.apache.solr.spelling.suggest.Suggester</str> > > <str > name="lookupImpl">org.apache.solr.spelling.suggest.fst.FSTLookupFactory</str> > > <str name="field">suggest</str> > > <float name="threshold">0.</float> > > <str name="buildOnCommit">true</str> > > </lst> > > </searchComponent> > > ... > > > >