最新更新 sitemap 网站制作设计本站搜索
网页设计
国外网站 韩国网站 个人主页 手提袋设计 CSS 网页特效 平面设计 网站设计 Flash CMS技巧 服装网站 php教程 photoshop 画册 服务器选用 数据库 Office
虚拟主机 域名注册 云主机 网页设计 客服QQ:8208442

XML教程:XPath归纳及总结

日期:10-15    来源:中国设计秀    作者:cnwebshow.com

 5Wu中国设计秀

经常在工作中会使用到XPath的相关知识,但每次总会在一些关键的地方不记得或不太清楚,所以免不了每次总要查一些零碎的知识,感觉即很烦又浪费时间,所以对XPath归纳及总结一下。5Wu中国设计秀

相关教程:XML入门教程:XPath5Wu中国设计秀

在这篇文章中你将能学习到5Wu中国设计秀

XPath简介 XPath 路径表达式详解 XPath在DOM,XSLT及XQuery中的应用5Wu中国设计秀

XPath简介5Wu中国设计秀

XPath是W3C的一个标准。它最主要的目的是为了在XML1.0或XML1.1文档节点树中定位节点所设计。目前有XPath1.0和XPath2.0两个版本。其中Xpath1.0是1999年成为W3C标准,而XPath2.0标准的确立是在2007年。W3C关于XPath的英文详细文档请见:http://www.w3.org/TR/xpath20/ 。5Wu中国设计秀

XPath是一种表达式语言,它的返回值可能是节点,节点集合,原子值,以及节点和原子值的混合等。XPath2.0是XPath1.0的超集。它是对XPath1.0的扩展,它可以支持更加丰富的数据类型,并且XPath2.0保持了对XPath1.0的相对很好的向后兼容性,几乎所有的XPath2.0的返回结果都可以和XPath1.0保持一样。另外XPath2.0也是XSLT2.0和XQuery1.0的用于查询定位节点的主表达式语言。XQuery1.0是对XPath2.0的扩展。关于在XSLT和XQuery中使用XPath表达式定位节点的知识在后面的实例中会有所介绍。5Wu中国设计秀

在学习XPath之前你应该对XML的节点,元素,属性,原子值(文本),处理指令,注释,根节点(文档节点),命名空间以及对节点间的关系如:父(Parent),子(Children),兄弟(Sibling),先辈(Ancestor),后代(Descendant)等概念有所了解。这里不在说明。5Wu中国设计秀

XPath路径表达式5Wu中国设计秀

在本小节下面的内容中你将可以学习到:5Wu中国设计秀

路径表达式语法 相对/绝对路径 表达式上下文 谓词(筛选表达式)及轴的概念 运算符及特殊字符 常用表达式实例 函数及说明5Wu中国设计秀

这里给出一个实例Xml文件。下面的说明及实例都是基于该XML文件。5Wu中国设计秀

路径表达式语法: 5Wu中国设计秀

    路径 = 相对路径 | 绝对路径 XPath路径表达式 = 步进表达式 | 相对路径 "/"步进表达式。 步进表达式=轴 节点测试 谓词

说明:5Wu中国设计秀

    其中轴表示步进表达式选择的节点和当前上下文节点间的树状关系(层次关系),节点测试指定步进表达式选择的节点名称扩展名,谓词即相当于过滤表达式以进一步过滤细化节点集。 谓词可以是0个或多个。多个多个谓词用逻辑操作符and, or连接。取逻辑非用not()函数。

请看一个典型的XPath查询表达式:/messages/message//child::node()[@id=0],其中/messages/message是路径(绝对路径以"/"开始),child::是轴表示在子节点下选择,node()是节点测试表示选择所有的节点。[@id=0]是谓词,表示选择所有有属性id并且值为0的节点。5Wu中国设计秀

 5Wu中国设计秀