XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。
什么是 XPath?
XPath 使用路径表达式在 XML 文档中进行导航 XPath 包含一个标准函数库
XPath 是 XSLT 中的主要元素 XPath 是一个 W3C 标准
XPath 语法
选取节点
XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。
下面列出了最有用的路径表达式:
表达式
描述
nodename |
选取此节点的所有子节点。 |
/ |
从根节点选取。 |
// |
从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。 |
. |
选取当前节点。 |
.. |
选取当前节点的父节点。 |
@ |
选取属性。 |
实例
在下面的表格中,我们已列出了一些路径表达式以及表达式的结果:
路径表达式
结果
bookstore |
选取 bookstore 元素的所有子节点。 |
/bookstore |
选取根元素 bookstore。
注释:假如路径起始于正斜杠( / ),则此路径始终代表到某元素的绝对路径! |
bookstore/book |
选取属于 bookstore 的子元素的所有 book 元素。 |
//book |
选取所有 book 子元素,而不管它们在文档中的位置。 |
bookstore//book |
选择属于 bookstore 元素的后代的所有 book 元素,而不管它们位于 bookstore 之下的什么位置。 |
//@lang |
选取名为 lang 的所有属性。 |
XPath 路径表达式
XPath 使用路径表达式来选取 XML
文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。路径表达式是从一个XML节点(当前的上下文节点)到另一个节点、或一组节点的书面步骤顺序。这些步骤以“/”字符分开,每一步有三个构成成分:
1、轴描述(用最直接的方式接近目标节点) 2、节点测试(用于筛选节点位置和名称)
3、节点描述(用于筛选节点的属性和子节点特征)
一般情况下,我们使用简写后的语法。虽然完整的轴描述是一种更加贴近人类语言,利用自然语言的单词和语法来书写的描述方式,但是相比之下也更加罗嗦。
XPath 标准函数
XPath 含有超过 100 个内建的函数。这些函数用于字符串值、数值,日期和时间比较、节点和 QName
处理、序列处理、逻辑值等等。
XPath 在 XSLT 中使用
XPath 是 XSLT 标准中的主要元素。如果没有 XPath 方面的知识,您就无法创建 XSLT 文档。 XQuery 和
XPointer 均构建于 XPath 表达式之上。XQuery 1.0 和 XPath 2.0
共享相同的数据模型,并支持相同的函数和运算符。 您可以在我们的《XQuery 教程》中阅读更多有关 XQuery 的知识。
XPath 是 W3C 标准
XPath 于 1999年11月16日 成为 W3C 标准。 XPath 被设计供 XSLT、XPointer 以及其他
XML 解析软件使用。
XPath 节点
在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点(或称为根节点)。 XPath
术语 节点(Node)
在 XPath
中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML
文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。
XPath存取函数
名称 说明 fn:node-name(node) 返回参数节点的节点名称。 fn:nilled(node)
返回是否拒绝参数节点的布尔值。 fn:data(item.item,...) 接受项目序列,并返回原子值序列。
fn:base-uri() fn:base-uri(node) 返回当前节点或指定节点的 base-uri 属性的值。
fn:document-uri(node) 返回指定节点的 document-uri 属性的值。
XPath 2.0
在 W3C 建议下,XPath 1.0于 1999年 11月16日 发表。 XPath 2.0
目前正在W3C审核过程的最终阶段。XPath 2.0表达了XPath语言在大小与能力上显著的增加。
最值得大书特书的改变是XPath 2.0有了更丰富的型别系统;XPath 2.0支持不可分割型态,如在 XML Schema
内建型态定义一样,并且也可自纲要(schema)导入用户自定型别。现在每个值都是一个序列(一个单一不可分割值或节点都被视为长度一的序列)。XPath
1.0节点组被节点序列取代,它可以是任何顺序。 为了支持更丰富的型别组,XPath 2.0提供相当延展的函式与操作子群。
XPath 2.0实际上是 XQuery 1.0
的子集合。它提供了一个for表达式。该式是XQuery里“FLWOR”表达式的缩减版。利用列出XQuery省去的部分来描述该语言是可能的。主要范例是查询前导语(query
prolog)、元素和属性建构式、“FLWOR”语法的余项式、以及typeswitch表达式。
分享到:
相关推荐
### 使用路径表达式在 XML 文档中进行导航 (XPath 简介) #### 一、XPath 的定义 XPath 是一种用于查找 XML 文档中的信息的语言。它使用路径表达式来选择 XML 文档中的节点或集合节点。XPath 被设计为 XSLT、...
XPATH简介 ---------- XPATH,全称XML Path Language,即XML路径语言,是一种在XML文档中查找信息的语言。最初是用来搜寻XML文档的,但同样适用于HTML文档的搜索。在做爬虫时完全可以使用XPATH做相应的信息抽取,...
XPath 教程是一个系统的学习资源,它包括 XPath 简介、XPath 节点、XPath 语法、XPath 轴、XPath 运算符、XPath 函数、XPath 实例等内容。通过学习 XPath 教程,您将掌握 XPath 的基础知识和应用技能。 因此,XPath...
#### XPath简介 XPath是一种用于在XML文档中查找信息的强大查询语言,同时也适用于HTML文档的解析。XPath允许我们通过元素和属性来进行导航,并从中提取所需的信息。相较于复杂的正则表达式,XPath提供了更为简洁且...
1. XPath简介:介绍XPath的基本概念和作用。 2. 路径表达式:讲解如何编写路径表达式来选取节点。 3. 节点测试和轴:详细解释各种节点测试和轴的用法。 4. 函数和运算符:阐述XPath提供的内置函数和逻辑、比较及算术...
#### XPath简介 XPath是一种在XML文档中查找信息的语言,它用于在复杂的XML结构中定位特定的元素或属性。XPath对于理解并操作XML文档至关重要,尤其在XSLT转换、XQuery查询及XPointer定位中扮演核心角色。 #### ...
#### 一、XPath简介 XPath是一种在XML文档中查找信息的语言。它用于在XML树结构中导航,并且能够返回所匹配节点或节点集。XPath的强大之处在于其简洁性和灵活性,允许用户轻松地从复杂的XML文档中提取所需的数据。 ...
XPath 的知识点包括 XPath 简介、XPath 路径表达式、XPath 在 DOM、XSLT 及 XQuery 中的应用等。 在实际应用中,XPath 可以用来解析 XML 文档,提取所需的信息。XPath 的优点是它可以很方便地定位节点,并且可以很...
#### XPath简介 XPath是一种用于在XML文档中进行导航的查询语言。它提供了简洁、高效的方式来定位和提取文档中的特定部分。XPath不仅仅适用于XML文档的搜索,还是XSLT(一种用于转换XML文档的语言)的核心组成部分。...
1. **XPath简介** XPath是W3C标准的一部分,它的主要目的是为了提供一种简洁且相对独立的方式来定位XML文档中的特定部分。通过XPath,开发者可以快速地选取和操作XML文档的结构信息,用于数据提取、验证和转换。 2...
1. XPath简介 XPath的核心在于其路径表达式,它类似于我们熟悉的文件系统路径,但用于导航XML文档的结构。XPath还包含了一个丰富的标准函数库,涵盖了字符串、数值、日期时间比较、节点处理、QName处理等多种功能。...
XPath简介: XPath是W3C定义的一种语言,用于在XML文档中找到信息。它可以定位XML文档中的元素、属性、文本节点等,甚至可以进行复杂的查询和计算。 2. XPath的主要功能: - 查找节点:XPath表达式可以返回文档中...
#### XPath简介与重要性 XPath是一种用于在XML文档中查找信息的语言。它被设计用来在XML文档中导航,帮助开发者精确地定位和选取节点。XPath在XSLT(Extensible Stylesheet Language Transformations)中扮演着核心...
#### XPath简介 XPath是一种用于在XML文档中查询和定位元素与属性的强大语言。其语法类似于文件系统的路径表达式,但更灵活,允许使用模式匹配和条件筛选。通过XPath,开发者能够精确地选取XML文档中的特定部分,...
#### 一、XPath简介 XPath 是一门专门用于在 XML 文档中查找信息的语言。它能够帮助用户有效地浏览 XML 文档结构,并从中抽取特定数据。XPath 的重要性不仅体现在其本身的功能上,还在于它是 W3C XSLT 标准的关键...
#### 一、Xpath简介 Xpath是一种查询语言,主要用于在XML文档中查找信息。它可以轻松地在XML文档中通过元素和属性进行导航。虽然Xpath最初是为了处理XML而设计的,但它同样适用于HTML文档的解析与数据提取。 #### ...
#### 一、XPath简介 XPath是一种在XML文档中查找信息的语言,类似于HTML中的CSS选择器或SQL中的查询语句。XPath能够快速定位到XML文档中的某个节点或者一组节点,并且可以用来抽取节点数据或者进行条件判断等操作。...
#### XPATH简介 XPath是一种在XML文档中查找信息的语言。它使用路径表达式来选择节点或集合节点,并且能够处理来自XML文档的数据,为构建XSLT这样的XML应用程序提供了强有力的支持。XPath不仅用于XSLT,也可以用于...