XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章

上传人:E**** 文档编号:89355132 上传时间:2019-05-23 格式:PPT 页数:153 大小:1.12MB
返回 下载 相关 举报
XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章_第1页
第1页 / 共153页
XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章_第2页
第2页 / 共153页
XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章_第3页
第3页 / 共153页
XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章_第4页
第4页 / 共153页
XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章_第5页
第5页 / 共153页
点击查看更多>>
资源描述

《XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章》由会员分享,可在线阅读,更多相关《XML案例教程高职 教学课件 ppt 作者 眭碧霞 全书 第6章(153页珍藏版)》请在金锄头文库上搜索。

1、第6章 XSLT模板转换,6.1 XSLT概述 6.2 XSLT基本结构 6.3 XSLT模板规则 6.4 常用输出指令 6.5 节点选择与路径匹配 6.6 流程控制 6.7 元素排序 6.8 综合实例 6.9 本章小结 习题6,6.1 XSLT概述 XML文档只能表现数据的内容,而实际应用中数据往往表现为形式。CSS是表现数据形式的一种样式语言,在第5章中进行了详细讨论,本章将介绍另外一种表现XML文档的样式语言XSL(Extensible Stylesheet Language)。 XSL包含两部分内容:XSLT(XSL Transformation)和FO(Format Object)。

2、XSLT可以将XML文档转换为其他文档形式,如XML、HTML、TEXT等。FO用于格式化输出,W3C对FO还未形成统一标准,本章将不予讨论。本章主要介绍如何使用XSLT将XML文档转换为其他XML文档、HTML和TEXT文档。,6.2 XSLT基本结构 本节通过一个案例来介绍XSLT的基本结构。例6-1中的ch6-1.xml文档保存了一本图书的基本信息,ch6-1.xsl文档为外部样式文档可以输出ch6-1.xml的数据。,【例6-1】 案例说明:引入外部XSL样式文件输出XML文档的数据。 程序名称:ch6-1.xml 01 02 03 04 软件工程 05 邓良松,刘海岩,陆丽娜,06

3、西安电子科技大学出版社 07 2001年6月 08 7-5606-0924-4 09 ,程序名称:ch6-1.xsl 01 02 03 04 05 06 ,案例分析:在程序ch6-1.xml中语句2使用xml-stylesheet处理指令引入外部样式文件。type的属性值“text/xsl”指明加载的外部文件为XSL文件。href属性指出加载的外部文件路径,路径有三种:绝对路径、相对路径和Web路径。绝对路径指外部XSL文件存放在本地某个文件夹中,一般该文件与XML文档不在同一个文件夹中,引用时需写出文件的本地完整路径,如“C:Testch6-1.xsl”。相对路径指外部XSL文件与XML文件

4、在相同的文件夹中,引用时只需写出XSL文件名称即可,如程序ch6-1.xml中第2行对“ch6-1.xsl”的引用。Web路径指外部XSL文件位于远程Web服务器上,引用时需要写出完整的服务器域名地址和文件目录路径,如“http:/10.10.21.63/xsl/ch6-1.xsl”。,6.2.1 XML文档节点树 使用XSL转换XML文档,一个完整的XML文档可以转换为一棵结构完整的节点树。图6-1所示是例6-1中程序ch6-1.xml文档对应的节点树。节点树中的根节点在XSL中用“/”表示,而不是XML文档的根元素Book。XML文档的根元素只能作为节点树中根节点的一个子节点。程序ch6-

5、1.xml中第2行引入外部样式文件的处理指令也是根节点的一个子节点。,图6-1 例6-1中ch6-1.xml文档转换后的节点树,XML文档中,元素、元素属性、元素文本内容、注释和处理指令都是节点树中的一个节点。搜索XML中的数据时,从节点树的根节点开始搜索。节点树为XSL访问XML文档提供了高效、有序的组织结构。,6.2.2 XSL样式单结构 例6-1中程序ch6-1.xsl描述了XSL样式单的基本结构。XSL文档本质上是XML文档,任何XSL文档中的第一行语句必须是XML的声明语句,如程序ch6-1.xsl中的第1行为XML的声明语句,表明该样式文档为XML文档,样式文档中标记的使用必须符合

6、XML规范。,程序ch6-1.xsl第2行中的xmlns:xsl=“http:/www.w3.org /1999/XSL/Transform“声明了一个命名空间,并与字符串xsl绑定,该命名空间是W3C在1999年11月16日发布的XSL转换语言标准。XSL文档的根元素为,它是命名空间xsl中的一个元素。版本号version=“1.0“是元素的一个属性。第3行至第5行中的元素和属性都属于xsl命名空间。具体应用在下节中介绍。,6.3 XSLT模板规则 模板规则是XSL转换中最重要的部分。模板转化需要使用模板定义元素和模板调用元素,本节将讨论模板定义语法和模板调用规则。,【例6-2】 案例说明:

7、使用模板规则将XML文档转换为HTML文档。 程序名称:ch6-2.xml 01 02 03 04 05 软件系统开发技术(修订版) 06 潘锦平,施小英,姚天昉 07 西安电子科技大学出版社 08 2001年1月,09 7-5606-0492-7 10 11 12 软件工程 13 邓良松,刘海岩,陆丽娜 14 西安电子科技大学出版社 15 2001年6月 16 7-5606-0924-4 17 18 ,程序名称:ch6-2.xsl 01 02 03 04 05 06 图书信息简介 07 08 ,09 10 11 12 13 14 15 16 书名 17 作者 18 出版社,19 出版日期 2

8、0 ISBN 21 22 23 24 25 26 27 28 29 ,30 31 32 33 34 ,6.3.1 模板定义元素和调用元素 例6-2中的程序ch6-2.xsl文件将程序ch6-2.xml文档转换为HTML文档。元素定义输入模板,属性match指定将此模板规则应用于输入文档的哪个节点,如ch6-2中的第3行将模板规则应用于输入文档的根节点,第13行将模板规则应用于输入文档的根元素BookList,第25行将模板应用于子元素Book。 调用元素通常放在输出模板中,属性select指定要处理的节点集。处理时,会将节点集中节点依次与样式单中的模板进行比较,与节点匹配的模板输出将被放在该元

9、素所在位置。,6.3.2 模板转换过程 例6-2中的ch6-2.xsl将ch6-2.xml转换为HTML文档的过程如下: (1) 程序ch6-2.xsl第03行至第08行将结果树的根节点“/”与样式单中的模板进行匹配,首先输出如下内容: 图书信息简介 ,(2) 程序ch6-2.xsl第09行使用处理XML文档的根元素节点Booklists,将BookList节点与样式表中第13行的模板进行匹配,输出第14行至第21行的内容:, 书名 作者 出版社 出版日期 ISBN ,(3) 程序ch6-2.xsl第22行的对当前节点下所有Book元素进行处理,将所有Book元素节点与样式表中第25行的模板进

10、行匹配。在第26行至第32行的模板输出代码中使用指令将Book的子元素Title、Author、Publisher、PubDate和ISBN内容输出到表格的单元格中。指令的select属性用于选择被提取的节点。如程序ch6-2.xsl第27行将XML文档ch6-2.xml第05行和第12行的元素Title的内容“软件系统开发技术(修订版)”和“软件工程”依次提取到表格的单元格中。程序ch6-2.xsl第25行至第33行模板执行后输出如下的内容:, 软件系统开发技术(修订版) 潘锦平,施小英,姚天昉 西安电子科技大学出版社 2001年1月 7-5606-0492-7 软件工程,邓良松,刘海岩,陆

11、丽娜 西安电子科技大学出版社 2001年6月 7-5606-0924-4 ,(4) 当XML文档ch6-1.xml中所有Book元素被处理完毕后,程序ch6-2.xsl执行第23行的模板输出剩余标记。 (5) 程序ch6-2.xsl执行到第24行,第一个模板执行完毕。继续执行第10行至第12行输出模板中剩余标记和。,例6-2中的程序处理完毕后输出的HTML文档如下: 图书信息简介 书名 作者,出版社 出版日期 ISBN 软件系统开发技术(修订版) 潘锦平,施小英,姚天昉 西安电子科技大学出版社 2001年1月 7-5606-0492-7, 软件工程 邓良松,刘海岩,陆丽娜 西安电子科技大学出版

12、社 2001年6月 7-5606-0924-4 ,输出的HTML文档在浏览器中的运行结果如图6-2 所示。,图6-2 例6-2输出的HTML文档在浏览器中的运行结果,6.4 常用输出指令 上节介绍了XSLT的模板规则,每一模板规则都定义了一组处理指令和规则。本节将着重介绍常用输出指令。,6.4.1 输出文本 输出文本所用到的指令为,主要应用就是输出元素文本内容。其语法如下: 其属性取值见表6-1。,表6-1 输出文本属性取值,在上节的例6-2中程序ch6-2.xsl第27行至第31行已经对指令的使用作了分析,这里不再重复。,6.4.2 生成元素 指令可用于动态生成元素,生成的元素被直接输出到目

13、标文档中。其语法如下: 其属性取值见表6-2。,表6-2 生成元素属性取值,【例6-3】 案例说明:使用指令生成元素。 程序名称:ch6-3.xml 01 02 03 04 05 软件系统开发技术(修订版) 06 潘锦平,施小英,姚天昉 07 西安电子科技大学出版社,08 2001年1月 09 7-5606-0492-7 10 11 12 软件工程 13 邓良松,刘海岩,陆丽娜 14 西安电子科技大学出版社 15 2001年6月 16 7-5606-0924-4 17 18 ,程序名称:ch6-3.xsl 01 02 03 04 05 06 图书信息简介 07 08 ,09 10 11 12

14、13 14 15 16 编号 17 书名 18 作者 19 出版社,20 出版日期 21 ISBN 22 23 24 25 26 27 28 29 ,30 31 32 33 34 35 36 37 38 39 40 ,案例分析:例6-3中的程序ch6-3.xsl第29行至第31行在表格的第一个单元格生成一个元素a,元素a的取值为当前Book元素的编号。函数position()取当前元素的编号。XML文档ch6-3.xml被转换为HTML文档后在浏览器中的运行结果如图6-3所示。,图6-3 例6-3中程序动态产生元素编号后在浏览器中的运行结果,6.4.3 生成属性 指令用于创建属性,并将属性添加到元素节点

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号