XPath的术语
节点
在XPath中,有七种不同的节点:元素,属性,文本,命名空间,处理指令,注释,文档节点。
XML文档被视为节点的树木。 树的最顶端的元素称为根元素。
请看下面的XML文档:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
上面的XML文档中的节点的实施例:
<bookstore> (root element node)
<author>J K. Rowling</author> (element node)
lang="en" (attribute node)
原子值
原子值是没有子女或父节点。
原子值例如:
J K. Rowling
"en"
项目
项目是原子值或节点。
节点的关系
亲
每个元素和属性具有一个父。
在下面的例子; book元素是标题,作者,年份,以及价格的父:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
孩子
元素节点可以有零个,一个或更多的孩子。
在下面的例子; 标题,作者,年份,以及price元素都是book元素的所有子:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
兄弟姐妹
具有相同的父节点。
在下面的例子; 标题,作者,年份,以及价格元素都是兄弟姐妹:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
祖先
节点的父母,父母的父母等
在下面的例子; title元素的先辈是book元素和bookstore元素:
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
后人
节点的孩子,孩子的孩子,等等。
在下面的例子; 书店的后代是这本书,书名,作者,年份,以及价格因素:
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>