Hello,

I'm trying find the best way to "fake" the terms component for fuzzy queries. That is, I need the full set of index terms for each of the two queries "quidam~1" and "quidam~2".
I tried defining two suggesters with FuzzyLookupFactory, with 
maxEdits=1 and 2 respectively, but the results for "quidam~1" include 
suffixes like "quodammodo", which makes sense for a suggester but isn't 
what I want here.
Now I'm trying with the spell-checker. As far as I can see, 
IndexBasedSpellChecker doesn't let me set maxEdits, so I can't use it 
to distinguish between my two queries. DirectSolrSpellChecker seems 
like it should work, ie:
 <searchComponent name="fuzzyterms" class="solr.SpellCheckComponent">
   <lst name="spellchecker">
     <str name="name">fuzzy1</str>
     <str name="classname">solr.DirectSolrSpellChecker</str>
        <int name="maxEdits">1</int>
        ...
   </lst>
   <lst name="spellchecker">
     <str name="name">fuzzy2</str>
     <str name="classname">solr.DirectSolrSpellChecker</str>
        <int name="maxEdits">2</int>
   ...
   </lst>
 </searchComponent>

However the parameter spellcheck.alternativeTermCount has no effect, so the query "spellcheck.q=quidam" gives no results, but "spellcheck.q=quiam" (which doesn't exist in the index) gives the expected terms.
Am I missing something? Or is there a better way to do this?

Many thanks for any help and ideas,

Nathaniel

Reply via email to