3

到同一文档中另一个节点的简单 XLink 的一般要点似乎是:

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

在不使用 XPointer 或 XPath 的情况下,这是否与使用 XLink 一样多?你能不能做一个 XLink,比如说,它指的是一个customId看起来像这样的东西:

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

请不要只向我介绍W3 规范——我不了解你,但需要一种特殊的人才能解释它们,而我今天不是那个人!

无论如何,我知道大多数 XLink 似乎都是关于引用外部资源,而且我见过的大多数示例都使用指向 Web 资源的 http 链接......我只是好奇你可以用 XLink 做什么来引用XML 文档中的特定部分。

谢谢!

4

1 回答 1

6

我认为没有使用 XPointer 或 XPath 的方法。我知道您不想被提及规范,但是:

来自XLink 规范

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>
于 2009-06-09T06:26:35.373 回答