Hi,
        I am misspelling a query "hota hai" to "hota hain". Inside
collations, "hota hai" is not coming, instead of that "hot main, home have.
etc" are coming. I have 37 documents where "hota hai" is present.

*URL: *localhost:8983/solr/wikingram/spell?q=gram_ci:"hota
hain"&wt=json&indent=true&shards.qt=/spell

*Configuration:*
*solrconfig.xml:*

<searchComponent name="spellcheck" class="solr.SpellCheckComponent">
    <str name="queryAnalyzerFieldType">textSpellCi</str>
    <lst name="spellchecker">
      <str name="name">default</str>
      <str name="field">gram_ci</str>
      <str name="classname">solr.DirectSolrSpellChecker</str>
      <str name="distanceMeasure">internal</str>
      <float name="accuracy">0.5</float>
      <int name="maxEdits">2</int>
      <int name="minPrefix">0</int>
      <int name="maxInspections">5</int>
      <int name="minQueryLength">2</int>
      <float name="maxQueryFrequency">0.9</float>
      <str name="comparatorClass">freq</str>
    </lst>
</searchComponent>

<requestHandler name="/spell" class="solr.SearchHandler" startup="lazy">
    <lst name="defaults">
      <str name="df">gram_ci</str>
      <str name="spellcheck.dictionary">default</str>
      <str name="spellcheck">on</str>
      <str name="spellcheck.extendedResults">true</str>
      <str name="spellcheck.count">15</str>
      <str name="spellcheck.onlyMorePopular">true</str>
      <str name="spellcheck.alternativeTermCount">15</str>
      <str name="spellcheck.collate">true</str>
      <str name="spellcheck.maxCollations">1000</str>
      <str name="spellcheck.maxCollationTries">3000</str>
      <str name="spellcheck.collateExtendedResults">true</str>
    </lst>
    <arr name="last-components">
      <str>spellcheck</str>
    </arr>
  </requestHandler>

*Schema.xml: *

<field name="gram_ci" type="textSpellCi" indexed="true" stored="true"
multiValued="false"/>

</fieldType><fieldType name="textSpellCi" class="solr.TextField"
positionIncrementGap="100">
       <analyzer type="index">
        <tokenizer class="solr.
StandardTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.ShingleFilterFactory" maxShingleSize="5"
minShingleSize="2" outputUnigrams="true"/>
</analyzer>
    <analyzer type="query">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.ShingleFilterFactory" maxShingleSize="5"
minShingleSize="2" outputUnigrams="true"/>
</analyzer>
</fieldType>

Reply via email to