是XML中的一种语法.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七讲 XPath XPath介绍 XPath 是XML中的一种语法 XPath 是XML文档中的路径索引 XPath 包含一个标准函数库 XPath 是一个XSLT的主要元素 XPath 是W3C标准 XPath路径表达式用于从XML文档中选取节点或节点设置。 XPath包含100多种内置函数。包括:字符值,数字值,日期和时间方法,节点操作,排序操作,布尔值等。 ?xml version=1.0 encoding=ISO-8859-1?bookstorebook title lang=enHarry Potter/title authorJ K. Rowling/author year2005/year price29.99/price /book/bookstore bookstore (document node) authorJ K. Rowling/author (element node) lang=en (attribute node) XPath的语法 XPath 通过路径表达式从XML文档中选取节点。可以通过一条语句或相应的步骤选取一个节点。 条件 条件指定了选取节点的范围 通常使用方括号[ ]来指定条件。 选取未知节点 选取多个路径 在XPath里,有7种不同的节点:元素,属性,文本,名称空间,处理指令,文档(根)节点,XML文档是节点树状结构。“树根”称作文档节点(或根节点)。 XPath 枢轴 用于定义节点上下文关系 节点间关系 父类 (parent )一般元素都有一个“父类” 子类(child) 同属类(sibling)拥有相同的父类的节点称之为同属类 祖类 (ancestor)一个节点的父类,父类的父类及更多称为该节点的祖类 下属类(descendent)节点的子类,子类的子类及更多称为下属类 路径表达式 路径表达式可以使用绝对路径也可以是相对路径 绝对路径表达式以(/)开始,两种路径表达式都包含一个或多个层次,用 / 分隔: An absolute location path: 绝对路径:/step/step/...A relative location path: 相对路径:step/step/... | 连接两条语句 //book | //cd 返回所有book和cd的节点 +,-,*,div,=,!=,,, =,=,or,and,mod XPath 表达式返回值可以是:节点集合,字符型,布尔型,数字型。 定位表达式 axisname::nodetest[predicate] 例子 /child::*[child::text()=‘start’][attribute::ID100] 定位路径标识包含等于start的文本节点并且其ID特性值大于100的根节点的所有元素子节点 /child::*[child::text()=‘start’][attribute::ID100] /child::*[child::text()=‘start’ and attribute::ID100] Xpath函数 number position(): 返回在当前nodeset中的位置 Number last():返回当前nodeset的大小 Number count(nodeset): 返回参数nodeset中的节点数目 Ancestor::*[position()=1]: 逆序标识上下文节点的第一个祖先节点。 Child::model[position()=last()]:定位路径返回上下文节点的最后一个model子节点。 Child::guitar[count(child:model)=3]:标识包含三个model元素节点的所有guitar元素子节点。 * * 选取属性 @ 选取当前节点的父节点 .. 选取当前节点 . 选取文档中所有符合条件的节点,不管该节点位于何处 // 选取根节点 / 选取节点下的所有子节点 nodename Description 注释 Expression 表达式 选取所有lang属性 //@lang 选取文档中所有处于bookstore节点下的book元素 bookstore//book 选取文档中的所有book元素 //book 选取bookstore中的所有book子元素 bookstore/book 选取根节点 下的bookstore元素 /bookstore 选取bookstore元素的所有子节点 bookstore 结果 表达式 选取bookstore节点下的前两个book元素 /bookstore/book[position()3] 选取bookst

文档评论(0)

44488569 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5101121231000003

1亿VIP精品文档

相关文档