我正在尝试在Solr中设置一些基本的同义词。我一直在使用的一个是:
us,usa,united states
我的理解是将其添加到同义词文件中将允许用户搜索US,并返回包含usa或united states的文档。如果用户输入usa或united states也是如此。
不幸的是,即使这样设置后,当我进行搜索时,结果将返回包含所有三个单词的项目 - 它执行的是同义词的AND运算而不是OR运算。
如果我打开调试功能,我看到的确实是这样(加上一些词干处理):
(+DisjunctionMaxQuery(((westCite:us westCite:usa westCite:unit) | (text:us text:usa text:unit) | (docketNumber:us docketNumber:usa docketNumber:unit) | ((status:us status:usa status:unit)^1.25) | (court:us court:usa court:unit) | (lexisCite:us lexisCite:usa lexisCite:unit) | ((caseNumber:us caseNumber:usa caseNumber:unit)^1.25) | ((caseName:us caseName:usa caseName:unit)^1.5))))/no_coord
我是否做错了什么导致了这种情况?我的defaultOperator设置为AND,但我期望同义词过滤器能够理解这一点。