如何保留cts的相关顺序:搜索结果

Yas*_*ash 3 marklogic relevance cts-search

我有以下代码:

1)

for $song in cts:search(fn:doc(), "night")
return $song/ts:top-song/ts:title/text() 
Run Code Online (Sandbox Code Playgroud)

2)

cts:search(fn:doc(), "night")/ts:top-song/ts:title/text()
Run Code Online (Sandbox Code Playgroud)

cts:search根据相关性返回文档。两种代码都以不同顺序返回结果。哪个将返回具有正确相关性的结果,为什么?

grt*_*tjn 5

首先。

在第二篇文章中,将XPath应用于cts:search返回的整个序列,但是根据XPath标准,将其结果重新排序为文档顺序,当序列中的节点来自不同文档时,这将变得不可预测。

第一个在序列上应用FLWOR迭代,以确保保持顺序,并且XPath分别应用于序列中的每个项目。

HTH!