首页 > 开发 > XML > 正文

XPath 初学者入门教程:XPath 节点

2024-09-05 20:54:17
字体:
来源:转载
供稿:网友

在XPath中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点(或成为根节点)。

XPath 术语

节点(Node)

在XPath中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点。XML文档是被作为节点树来对待的。树的根被称为文档节点或者根节点。

请看下面这个XML文档:

以下为引用的内容:
<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>

上面的XML文档中的节点例子:

以下为引用的内容:
<bookstore>(文档节点)
<author>J K. Rowling</author>(元素节点)
lang="en"(属性节点)

基本值(或称原子值,Atomic value)

基本值是无父或无子的节点。

基本值的例子:

J K. Rowling

"en"

项目(Item)

项目是基本值或者节点。

节点关系

父(Parent)

每个元素以及属性都有一个父。

在下面的例子中,book元素是title、author、year以及price元素的父:

以下为引用的内容:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>

子(Children)

节点元素可有零个、一个或多个子。

在下面的例子中,title、author、year以及price元素都是book元素的子:

以下为引用的内容:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>

同胞(Sibling)

拥有相同的父的节点

在下面的例子中,title、author、year以及price元素都是同胞:

以下为引用的内容:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>

先辈(Ancestor)

某节点的父、父的父,等等。

在下面的例子中,title元素的先辈是book元素和bookstore元素:

以下为引用的内容:
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>

后代(Descendant)

某个节点的子,子的子,等等。

在下面的例子中,bookstore的后代是book、title、author、year以及price元素:

以下为引用的内容:

<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表