在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> |
新闻热点
疑难解答