xqueryを使用して検索を実行するさまざまなxmlドキュメントを格納するためにexist-dbベースを使用します。これは、XML文書の例である:XQueryファジィ検索in exist-db
<person personID="some_id">
<name>
<familyName>Doe</familyName>
<firstName>John</firstName>
</name>
</person>
我々が使用している検索はあいまい検索で、クエリは次の形式で
xquery version "3.0";
for $doc in collection('/db/Persons')/*[ft:query(.,'milan~')]
let $score := ft:score($doc)
order by $score descending return base-uri($doc)
です問題は、検索オーダーがかなり奇妙な結果になることです。たとえば、ミルン、ミルン、ゴラン、ヴィロン、ミラノの前にランクされます。言い換えると、検索では完全一致(ミラノ)と完全一致しない結果に大きなスコアが割り当てられます。私たちは何を間違っていますか?完全一致がほぼ正確な一致に比べて高いスコアを持つ方法はありますか?