次のxmlを検討してください:-
<?xml version="1.0"?>
<catalog>
<book id="bk101">
<author>Gambardella, Matthew</author>
<title>XML Developer's Guide</title>
<genre>Computer</genre>
<price>44.95</price>
<publish_date>2000-10-01</publish_date>
<description>An in-depth look at creating applications
with XML.</description>
</book>
</catalog>
次に、このドキュメントに対して検索クエリを実行し、フィルタリングされた結果セット(作成者名など)を返します。
これを行う1つの方法は次のとおりです。-
xquery version "1.0-ml";
import module namespace search="http://marklogic.com/appservices/search"
at "/Marklogic/appservices/search/search.xqy";
declare variable $options:=
<options xmlns="http://marklogic.com/appservices/search">
<transform-results apply="raw"/>
</options>;
for $x in search:search("", $options)/search:result
return $x//author/text()
ただし、search:search
APIは最初に結果全体をキャッシュにキャッシュし、次にxpathを使用して目的のノードを見つけます。これは欲しくない。search:search
結果セット全体がmarklogic
サーバーにキャッシュされないように、APIが目的の要素のみを返すようにしたい。誰かが私にこれをどのように達成できるか教えてもらえますMarklogic
か?