XPath 概述

导读:   
什么是 XPath? 第 1 页(共2 页)

XML 路径语言(XPath)是一组语法和语义,用于引用 XML 文档的一些部分。XPath 的目的是让其他规范使用,比如 XSL Transformations (XSLT) 和 XML Pointer Language (XPointer)。要帮助您理解 XPath 是什么,我将通过展示一些与 AuctionItemList.xml 有关的例子开始。

XPath 表达式确定了 XML 文档中的一组节点。这组节点可以包含零或多个节点。例如,如果应用到 AuctionItemList.xml,XPath 表达式 /list 就确定了一个单独的节点――list 根元素。

The XPath 表达式 /list/item 确定了所有 item 元素。

XPath 使用正斜杠(/)符号,这与 Unix shell 相似。这就是 XPath 可以用在 Uniformed Resource Identifiers (URI) (比如URL)中的原因。这实际上是 XPath 名称的来源:像在 URL 中一样使用路径符号。

合法的 XPath 表达式可以包含谓词(predicate)。谓词包含布尔表达式,它们针对上下文节点集中的每个节点进行了测试。如果为真,将把节点保存在确定的节点集中;否则,就丢弃节点。在减少结果集中,谓词是有用的。例如,下面 XPath 表达式只确定第二项:

/list/item[currentPrice>1000.0]

XPath 表达式可以引用属性及 XML 文档中的元素。当引用属性时,使用 @ 字符。例如,下面的 XPath 表达式确定了 currentPrice 元素,其 currency 属性包含值 EUR

/list/item/currentPrice[@currency="EUR"]

XPath 也提供函数,这可能是非常有用的。我将在 函数库 中,详细展示这些函数,但这里是一个体验。下面的 XPath 表达式确定了 item 的 description 元素,其 type 属性是“IndividualOffer”(并具有值 2MP digital camera):

/list/item[starts-with(@type,"Ind")]/description

在使用的 XML 编译器中测试上面的 XPath 表达式:打开 AuctionItemList.xml,然后在 XPath 计算程序中输入表达式,看选定了哪些节点。

OK,现在已经向您介绍了 XPath!至今,您已经学习了 XPath 是一种语言,用于确定 XML 文档的部分。您已经看到 XPath 表达式看起来像什么,以及它如何引用 XML 文档内部的元素和属性。我也已经向您展示了,XPath 如何提供函数用于操纵数据。但这只是一个快速的概述;在其余的节中,我将更加详细讨论所有这些点――以及 XPath 的更多方面。例如,我将分析 XPath 名称空间和特殊字符(比如 //*),并向您展示,并非所有 XPath 表达式具有上面例子中展示的形式(称为简化位置路径)。

本文转自 https://www6.software.ibm.com/developerworks/cn/education/xml/x-xpath/tutorial/x-xpath-3-1.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值