0

Marklogic でドキュメントのコンテンツを検索し、対応するドキュメント名を返すにはどうすればよいですか? 私のドキュメント名がで、 「hello world」などtest.docのテキストが含まれているとします。このドキュメントを Marklogic サーバーにアップロードすると、コンテンツ プロセッサが対応する XML ファイルを生成します。今、私はこのように検索しています:-

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 $d in search:search("hello world", $options)/search:result
return tokenize(data($d/@uri), "/")[last()]

テキスト「 hello world 」を含む対応するXMLおよびXHTMLファイル名を返しますが、対応するXMLファイル名ではなく、元のドキュメント名()のみを返したいですtest.doc

4

2 に答える 2

1

時代遅れかもしれませんが、便利です。

http://docs.marklogic.com/xdmp:node-uri

xdmp:node-uri

xdmp:node-uri(
   $node as node()
) as xs:string?
Summary

document-uriパラメータまたはその祖先のプロパティを返します。

于 2015-07-14T07:02:15.137 に答える
0

この情報は自動的には保持されないため、コンテンツ パイプラインで明示的にサポートする必要があります。

パイプラインを変更して、宛先 XML ドキュメントのドキュメント プロパティに元のドキュメント名を格納したり、ドキュメント名をメタデータとしてドキュメントに格納したり、元のドキュメント名を URI の一部として格納したりできます。

于 2012-07-19T19:29:57.120 に答える