1

idrefs特定の を含む属性を持つ要素を XML ドキュメントで検索したいと考えていますid。たとえば、次の XML ドキュメントがあるとしdoc.xmlます。

<doc>
   <x1 idrefs="foo bar">
      <x2 idrefs="world hello"/>
   </x1>
   <x3 idrefs="ipsum lepsum"/>
   <a xml:id="bar"/>
   <b xml:id="hello"/>
</doc>

この XQuery が必要です。

let $d := doc("doc.xml")
return $d/local:getref("hello")

この要素を返す。

<x2 idrefs="world hello"/>

fn:idref()これはまさにこれを行うと思いますdoc.xmlが、適切なスキーマがある場合に限ります。これはスキーマなしで実行できますか?

私は Saxon XQuery プロセッサを使用しています。

4

1 に答える 1

3

これが関係しているようです

XQuery fn:idref() 関数の使用方法

スキーマがなければ、必要です

//*[tokenize(@idrefs, ' ') = "hello"]
于 2011-06-22T11:20:36.257 に答える