次のクエリは機能しますが、インデックスを使用する代わりにすべてのドキュメントを検索する必要があると思われるため、非常に低速です。
xquery version "1.0-ml";
declare namespace appl="http://ap.org/schemas/03/2005/appl";
declare namespace appls="http://ap.org/schemas/09/2011/applsearch";
let $p := cts:and-query((
cts:element-range- query(xs:QName("appls:ArrivalDateTime"),">=",fn:dateTime(xs:date("2003-01-01"), xs:time("00:00:00"))),
cts:element-range-query(xs:QName("appls:ArrivalDateTime"),"<=",fn:dateTime(xs:date("2003-01-31"), xs:time("23:59:59"))),
cts:element-value-query(xs:QName("appl:MediaType"), "text")
))
let $results := cts:search(fn:doc(), $p, "unfiltered")
return
for $result in $results
where cts:contains($result//appl:block/appl:p[position()=last()], "information from:")
return fn:document-uri($result)
句読点に依存するオプションをオンにしてcts:element-word-queryを使用してみましたが、スペースの制限のためにデータベースでインデックスを作成しなかったため、機能しなかったと思います。
私がこれをどのようにスピードアップまたは改善するかについての提案があればいいのですが。インデックスを追加することが私の唯一の手段である場合は、管理者に戻って何が可能かを確認できると思いますが、そのルートに進む必要がないことを願っています。