W3C XPath 活动学习笔记

什么是XPath?

XPath 是一门在 XML 文档中查找信息的语言。它可用于从 XML 文档中选取元素、属性、文本等内容。

XPath 在XSLT中被广泛使用,但它也可以在其他 XML 应用程序中使用,比如说XPath的实现者可以使用XPath来搜索他们的XML文档。

XPath 的语法结构

XPath 使用路径表达式来选取 XML 文档中的节点或节点集。这些路径表达式和我们在常规文件系统中看到的路径非常相似。

XPath 规范定义了许多操作符、函数和轴,这些可以用于创建更加复杂的路径表达式。下面是一些语法结构的例子:

  • nodename:选取此节点的所有子节点。
  • /:从根节点选取。
  • //:从匹配选择的当前节点的子孙节点中选取指定节点。
  • .:选取当前节点。
  • ..:选取当前节点的父节点。

以下是一些 XPath 的实例:

xmlCopy Code
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="WEB"> <title lang="en">Learning XPath</title> <author>John Smith</author> <price>35.95</price> </book> <book category="WEB"> <title lang="en">XML Developer's Guide</title> <author>Bryan Adams</author> <price>44.95</price> </book> <book category="DATABASE"> <title lang="en">SQL Fundamentals</title> <author>Jane Doe</author> <price>49.99</price> </book> </bookstore>
  • 选取 bookstore 元素的所有子节点:/bookstore/*
  • 选取第一个 book 元素:/bookstore/book[1]
  • 选取 category 属性值为 "WEB" 的所有 book 元素:/bookstore/book[@category='WEB']
  • 选取 price 元素,并且选取比 35.00 小的所有 price 元素:/bookstore/book/price[<35.00]

总结:XPath 是一种能够查找 XML 文档中信息的语言,它使用路径表达式来选择节点或节点集合。XPath语法非常类似于文件系统的路径,XPath 规范定义了多种操作符、函数和轴,可以用于创建更加复杂的路径表达式。