当前位置:首页 科普知识 XPointer

XPointer

发布时间:2023-09-05 09:53:28

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

XPointer详细介绍

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

XPointer简介

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

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

XPointerXPointer是W3C标准

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

XPointerXPointer的浏览器支持

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

XPointer语言实例

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

表达式:#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>

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】由作者 百科科普 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6