同じドキュメント内のノードを参照するためのXLinkを使用しました

StackOverflow https://stackoverflow.com/questions/968394

  •  13-09-2019
  •  | 
  •  

質問

同じドキュメント内の別のノードへの単純なXLinkのの一般的な要点はあるように思わます:

<root xmlns:xlink="http://www.w3.org/1999/xlink">
  <firstChild id="ID1" />
  ...
  <ref xlink:href="#ID1" />
</root>

のXPointerまたはXPathを使用せずに、あなたがXLinkので行うことができますように、このようにくらいですか?あなたが言う、代わりにcustomId言及、XLinkの、ように見えた何かを行うことができます:

<root xmlns:xlink="http://www.w3.org/1999/xlink">
  <firstChild id="ID1" customId="{1234-5678}" />
  ...
  <ref xlink:href="#customId/{1234-5678}" />
</root>

ちょうどhref="http://www.w3.org/TR/2001/REC-xlink-20010627/" rel="nofollow noreferrer"> W3スペック - !私はあなたについて知らないが、それはそれを解釈することができるように、人の特別な種類を取り、私は今日その人ではないよ。

とにかく、私は...ほとんどのXLinkは、外部リソース、およびIは、Webリソースへの使用はhttpリンクを見てきたほとんどの例を参照することについてのように見えることを理解し、私はあなたが条件でのXLinkで何ができるかのように、単に好奇心が強いですXMLドキュメント内の特定の部分を参照する。

ありがとうございます。

役に立ちましたか?

解決

私は、XPointerのか、XPathを使用せずに動作する方法はないと思います。私はあなたが仕様を参照することにしたくない知っているが、ます:

  

フラグメント識別子の形式   [...] URI参照内で使用され   XPointerの仕様で指定されます。

のXPointer仕様でます:

  

のXPointerは、[...] XMLパス言語(XPath)

に基づいています

だから私はそれのようなものだと思います

<root xmlns:xlink="http://www.w3.org/1999/xlink">
  <firstChild id="ID1" customId="{1234-5678}" />
  ...
  <ref xlink:href="#xpointer(/root/firstChild[@customId = '{1234-5678}'])" />
</root>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top