第3章文档查询和转换理论PPT讲稿.ppt
《第3章文档查询和转换理论PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第3章文档查询和转换理论PPT讲稿.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章文档查询和转章文档查询和转换理论换理论第1页,共32页,编辑于2022年,星期一课程回顾课程回顾u文档对象模型(DOM)定义了访问诸如 XML 和 XHTML 文档的标准uW3C组织为DOM规范定义了3个级别:nDOM级别1nDOM级别2nDOM级别3uXML文档中每一个单元(元素、属性、实体、备注等)都是节点uXML DOM 把 XML 文档视为一种树结构,即节点树。节点之间的关系包括父节点、子节点、同级节点、前一个节点和后一个节点uXML Document对象的load()方法用于加载XML文档,loadXML()方法用于加载XML字符串uXML DOM对象中常用的操作XML文档节
2、点的方法和属性包括:ngetElementsByTagName()nappendChild()ninsertBefore()ncreateElement()nremoveChild()nnodeTypennodeValuennodeName第2页,共32页,编辑于2022年,星期一本章内容本章内容uXPathuXQueryuXSLT第3页,共32页,编辑于2022年,星期一本章目标本章目标u了解XPath的基本语法u能够使用XPath选择节点u能够使用XQuery FLWOR表达式查询XML文档u能够使用XSLT转换简单的XML文档第4页,共32页,编辑于2022年,星期一1.XPath 1.
3、1 XPath简介 uXPath是在XML文档中查找信息的路径语言uXPath 使用路径表达式在 XML 文档中进行导航uXPath 包含一个标准函数库uXPath 是 XSLT(可扩展的样式表语言转换)中的主要元素uXPath 是W3C 标准xmlDoc.selectNodes(/bookstore/book)XPath路径表达式第5页,共32页,编辑于2022年,星期一1.2 XPath语法语法 uXPath运算符 运算符描述示例表达式示例表达式的返回值|计算两个节点集/student|/teacher返回所有带student元素和teacher元素的节点集+加2+35-减5-23*乘2*
4、36div除6 div 32=等于price=15.5true或false!=不等于price!=15.5true或false小于price15.5true或false=小于或等于price大于price15.5true或false=大于或等于price=15.5true或falseor或price=15 or price=10true或falseand与price15 and price20true或falsemod计算除法的余数6 mod 30第6页,共32页,编辑于2022年,星期一XPath语法语法 uXPath选择节点 u路径选择 表达式描述示例返回结果nodename选取此节点的所
5、有子节点bookstore选取 bookstore 元素的所有子节点/从根节点选取,即绝对路径选择/bookstore选取根元素 bookstore/从选择的当前节点匹配选择文档中的节点,即相对路径选择/book选取所有 book 子元素,而不管它们在文档中的位置,不分层次.选取当前节点bookstore/book选取所有属于 bookstore 的子元素的 book 元素.选取当前节点的父节点bookstore/book选择所有属于 bookstore 元素的后代的 book 元素,而不管它们位于 bookstore 之下的什么位置选取属性/lang选取所有名为 lang 的属性第7页,共3
6、2页,编辑于2022年,星期一XPath语法语法 uXPath选择节点 u使用谓词 路径表达式(内属于谓词)返回结果/bookstore/book0bookstore 子元素的第一个 book 元素/bookstore/booklast()bookstore 子元素的最后一个 book 元素/bookstore/booklast()-1bookstore 子元素的倒数第二个 book 元素/bookstore/bookposition()30.00所有 bookstore 元素的 book 元素,且其中的 price 元素的值须大于 30.00/bookstore/bookprice30.00
7、/title所有 bookstore 元素中的 book 元素的 title 元素,且其中的 price 元素的值须大于 30.00var nodes=xmlDoc.selectNodes(/bookstore/book1)第8页,共32页,编辑于2022年,星期一XPath语法语法 uXPath选择节点 u使用通配符和“|”运算符n*:匹配任何元素节点 n*:匹配任何属性节点 nnode():匹配任何类型的节点 n|:选择多条路径 var nodes=xmlDoc.selectNodes(/title*)匹配所有带属性的title节点第9页,共32页,编辑于2022年,星期一1.3 XPat
8、h轴轴 uXPath Axes用于定义所选节点与当前节点之间的树关系轴名称说明ancestor选取当前节点的所有先辈(父、祖父等)ancestor-or-self选取当前节点的所有先辈(父、祖父等)以及当前节点本身attribute选取当前节点的所有属性child选取当前节点的所有子元素descendant选取当前节点的所有后代元素(子、孙等)descendant-or-self选取当前节点的所有后代元素(子、孙等)以及当前节点本身following选取文档中当前节点的结束标签之后的所有节点namespace选取当前节点的所有命名空间节点parent选取当前节点的父节点preceding选取文
9、档中当前节点的开始标签之前的所有节点preceding-sibling选取当前节点之前的所有同级节点self选取当前节点attribute选择当前元素的属性第10页,共32页,编辑于2022年,星期一XPath轴轴 u步表达式轴名称:节点测试谓词 nchild:book:选取所有属于当前节点的子元素的 book 节点nattribute:lang:选取当前节点的 lang 属性nchild:*:选取当前节点的所有子元素nattribute:*:选取当前节点的所有属性nchild:text():选取当前节点的所有文本子节点nchild:node():选取当前节点的所有子节点ndescendant
10、:book:选取当前节点的所有 book 后代节点nancestor:book:选择当前节点的所有 book 先辈节点nancestor-or-self:book:选取当前节点的所有book先辈节点以及当前节点(假如此节点是book节点的话)nchild:*/child:price:选取当前节点的所有 price 孙节点第11页,共32页,编辑于2022年,星期一XPath轴轴 xmlDoc.SelectNodes(/item-info/descendant:item-name);查询所有以item-info为祖先节点的item-name节点 xmlDoc.SelectNodes(/order
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文档 查询 转换 理论 PPT 讲稿
限制150内