XPointer

编辑

XPointer是在可扩展标志语言(XML)文件中定位数据的一种语言,其定位是根据数据在文件中位置、字符内容以及属性值等特性进行的。

PHP中文网词条详解简介

XPointer由统一资源定位地址(URL)中#号之后的描述组成。XPointer可单独使用或者与XPath一起使用,XPath是在XML文件中定位数据的另一种语言。

在超文本标志语言(HTML)中,#号激活HTML页中特殊标记点的连接。XPointer还允许基于内容的连接。这样,例如,可以让读者连接到XML文件中某个单词、短语或字符串的下一实例。

1.3.jpg


  • XPointer是XML指针文件(XML Pointer Language)的缩写

  • XPointer允许超链接指向在XML文档中的特定部分。

  • XPointer使用XPath表达式XML文档中导航

  • XPointer是W3C推荐标准






XPointer是W3C标准

在2003年3月25日,XPointer成为 W3C 推荐标准。

XPointer的浏览器支持

浏览器只在最小限度内支持XPointer。

PHP中文网词条详解XPointer 实例

XLink 能够链接到整个文档,XPointer 允许您链接到文档的特定部分。如需链接到页面的某个具体的部分,请在 xlink:href 属性中的 URL 后添加一个井号 (#) 以及一个 XPointer 表达式。[1] 

表达式:#xpointer(id("Rottweiler")) 可引用目标文档中 id 值为 "Rottweiler" 的元素。

因此,xlink:href 属性似这样:xlink:href="http://dog.com/dogbreeds.xml#xpointer(id('Rottweiler'))"

不过,当使用 id 链接到某个元素时,XPointer 允许简写形式。您可以直接使用 id 的值,就像这样:xlink:href="http://dog.com/dogbreeds.xml#Rottweiler"。

下面的 XML 文档可引用每条狗的品种信息,均通过 XLink 和 XPointer 来引用

<?xml version="1.0" encoding="ISO-8859-1"?>
 
<mydogs xmlns:xlink="http://www.w3.org/1999/xlink">
 
<mydog xlink:type="simple"
  xlink:href="http://dog.com/dogbreeds.xml#Rottweiler">
  <description xlink:type="simple"
  xlink:href="http://myweb.com/mydogs/anton.gif">
  Anton is my favorite dog. He has won a lot of.....
  </description>
</mydog>
 
<mydog xlink:type="simple"
  xlink:href="http://dog.com/dogbreeds.xml#FCRetriever">
  <description xlink:type="simple"
  xlink:href="http://myweb.com/mydogs/pluto.gif">
  Pluto is the sweetest dog on earth......
  </description>
</mydog>
 
</mydogs>

PHP中文网词条详解XPointer 语法

在 HTML 中,我们可创建一个既指向某个 HTML 页面又指向 HTML 页面内某个书签的超级链接(使用#)。

有时,可指向更多具体的内容会更有好处。举例,我们需要指向某个特定的列表的第三个项目,或者指向第五段的第二行。通过 XPointer 是很容易做到的。

假如超级链接指向某个 XML 文档,我们可以在 xlink:href 属性中把 XPointer 部分添加到 URL 后面,这样就可以导航(通过 XPath 表达式)到文档中某个具体的位置了。

举例,在下面的例子中,我们通过唯一的 id “rock” 使用 XPointer 指向某个列表中的第五个项目。

href="http://www.example。com/cdlist.xml#id('rock').child(5,item)"

参考资料
    词条标签:
    XPointer