XML是一种优秀的数据打包和数据交换的形式,分析和转换XML文档是很平常的事情,但是我们该如何在XML文档中查找指定的信息呢?XPath给了我们一个很好的答案。XPath是为查找XML文档中的单个信息而定义的一套语法规则的集合。如果你熟悉XSLT,你可能已经使用过XPath了,只是你还没有意识到而已。
XPath是一种由World Wide Web Consortium (W3C)开发的工业标准。它不仅在XSLT标准中得到运用,同时也在XPointer标准中得到了运用。基于XML的数据库也使用它来查找信息。
XPath遵循文档对象模型(DOM)的路径格式,由于每个XML文档都可以看成是一棵拥有许多结点的树,每个结点可以是以下七个类型之一:根(root)、元素(element)、属性(attribute)、正文(text)、命名空间(namespace)、处理指令(processing instruction)和注释(comment)。这些都符合XML文档的规范,你能在以下的XML文档例子中发现它们。
<?xml version="1.0" encoding="ISO-8859-1"?> <books> <book type=”hardback”> <title>Atlas Shrugged</title> <author>Ayn Rand</author> <isbn>0525934189</isbn> </book> <book type=”paperback”> <title>A Burnt-Out Case</title> <author>Graham Greene</author> <isbn>0140185399</isbn> </book> </books>
在此文档中根结点是books;book是一个拥有type属性的元素,正文在整个XML文档中都存在。那麽你如何能很容易的查找所需要的单个数据片呢?XPath正是你所要的答案。