Если я правильно понимаю, SynonymFilterFactory никак не связывает синонимы. Таким образом, нужно было бы быть достаточно исчерпывающим с множественными числами и временными в их файле синонимов, если они хотят хорошего отзыва, независимо от плюрализации/tensing.SOLR: SynonymFilterFactory с прерыванием
Я вижу, что SynonymFilterFactory имеет необязательный аргумент, где он может принимать анализатор.
анализатор: (необязательно; по умолчанию: WhitespaceTokenizerFactory) Имя класса анализатора, используемого при анализе файла синонимов. Если указан анализатор, то токензаторFactory может и не быть, и наоборот.
Я сомневаюсь, что гнездятся нужный анализатор, как так действует:
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.SnowballPorterFilterFactory" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true" >
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.SnowballPorterFilterFactory" />
<filter class="solr.RemoveDuplicatesTokenFilterFactory" />
</analyzer>
</filter>
<filter class="solr.RemoveDuplicatesTokenFilterFactory" />
</analyzer>
Я подозреваю, что компиляция анализатора расширение .jar и поместить его в Lib папки в Solr может быть единственным способом сделать это. Есть ли способ определить именованный анализатор в конфигурации или другой метод для достижения этой цели?