2

如果我在未过滤模式下对变音符号敏感cts:querycts:search那么我会得到正确的结果,但在过滤模式下做同样的事情会给我不正确的结果。例如 :

cts:search($data,($cts:query('unfiltered','diacritic-sensitive')))
returns incorrect results.

但 :

cts:search($data,($cts:query('filtered','diacritic-sensitive')))
returns correct results.

那么,有没有什么方法可以为未过滤的搜索获得正确的结果呢?

请在下面找到我的代码详细信息。

for $result in cts:search (fn:collection ($searchable-collection), $cts-query, ('unfiltered',     $relevance-score-algo), 0.0)
        order by xs:dateTime ($result//c:created-on) descending
        return $result/element()

$cts-query 是这样的。

cts:element-query($element-to-query,
        cts:word-query($search-text,
        $search-options,
        $weight)

在选项中,我可以通过“变音符号敏感”或不通过。

4

1 回答 1

0

要获得准确的未过滤变音符号敏感搜索,您必须启用fast diacritic sensitive searches索引。允许重新索引并监视数据库状态,直到完成为止。

文档有更多关于文本索引选项未过滤搜索的内容。

于 2014-11-14T15:53:18.820 回答