たくさんのドキュメントを含むコレクションがあります。
コレクションを検索するときは、ドキュメントとは無関係に一致するリストを取得する必要があります。それで、「 」という単語を検索するとpie
。関連性によって適切にソートされたドキュメントのリストが返されます。ただし、これらのドキュメントの中には、pie
複数の場所に「 」という単語が含まれているものがあります。一致が見つかったドキュメントとは関係なく、すべての一致のリストを取得したいと思います。また、このすべてのヒットのリストは、関連性 (重み) でソートする必要があります。この場合も、ドキュメントから完全に独立しています (ドキュメントによってグループ化されていません)。
次のコードは、ドキュメントごとにグループ化された一致を検索して返します...
let $searchfor := "pie"
let $query := cts:and-query((
cts:element-word-query(xs:QName("title"), ($searchfor), (), 16),
cts:element-word-query(xs:QName("para"), ($searchfor), (), 10)
))
let $resultset := cts:search(fn:collection("docs"), $query)[0 to 100]
for $n in $resultset
return cts:score($n)
私が必要と$n
しているのは、「 e」match-node
ではなく「」であることです...document-nod
ありがとう!