【问题标题】:Marklogic Diacritic Sensitive search not working for unfiltered searchesMarklogic 变音符号敏感搜索不适用于未过滤的搜索
【发布时间】:2015-01-11 13:00:19
【问题描述】:

如果我在未过滤模式下为cts:search 执行变音符号敏感cts:query,那么我会得到正确的结果,但在过滤模式下执行相同操作会得到不正确的结果。 例如:

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)

在选项中我可以传递“变音符号敏感”或不传递。

【问题讨论】:

  • 你能提供一个小的示例 xml 吗?
  • 请更正示例代码,它是无效的。

标签: diacritics marklogic cts-search


【解决方案1】:

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

文档中有更多关于 text indexing optionsunfiltered search 的信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-25
    • 2012-09-19
    • 1970-01-01
    • 2011-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多