XML文件结构和基本语法
2017-03-08 22:11
309 查看
4.1.1 XML文件结构
一个XML文件通
列表内容
常包含文件头和文件体两大部分
1. 文件头
XML文件头由XML声明与DTD文件类型声明组成。其中DTD文件类型声明是可以缺少的,关于DTD声明将在后续的内容中介绍,而XML声明是必须要有的,以使文件符合XML的标准规格。
在前面的Flowers.xml文件中的第一行代码即为XML声明:
图 4.2 利用CSS 显示XML文件
用CSS来显示XML文件时,不具备任何选择性,也就是说,根元素之下的所有数据都会被全部显示,不能改变原文件的结构和内容的顺序。另外,CSS并不支持中文标记,因为CSS 不是专门为XML开发的样式语言,而下面要介绍到的XSL就可以,XSL是特别为XML设计的,它比CSS更为复杂。
4.3 XSL
在上一节介绍的用CSS显示XML文件,效果不是很理想,实际上,CSS主要是适合HTML文件,对于XML这种数据文件,CSS就不适合了,尤其是对那些需要按照不同的条件将文件内容重新排列显示的情况,而用XSL就可以。
XSL是当前最强大和灵活的样式语言,是特别为应用XML而设计的,它比CSS要复杂的多。但是,目前它还未被很好的支持,也还没有最后完成。
利用XSL来设定XML文件的显示方式,即在XML文件的头部,XML声明的下面加入下面一条语句:
我们可以看出:一个XSL文件就如一个空的HTML文件,通过填充一个XML文件产生一个传统的HTML文件。
一个XSL文件首先必须有一个XML声明(即第一行),因为XSL实际上是一种特殊的XML文件。XSL的根元素是xsl:stylesheet,即一个XSL文件必须以标记开始,以标记结束,xmlns:xsl属性用于设定XSL的命名域。
XSL的根元素通常是由一个或多个样板元素所组成,在此例中只包含单一样板,它是由标记开始,以标记结束,使用match属性可以在XML文件中选取符合条件的节点,即设定样板名称,对于最上层样板,match设为“/”,代表整个XML文件的根元素。
然后是从XML文件中取得所需的数据,取得数据最简单的方法是:
如果要取得多个元素,则要使用xsl:for-each元素,格式如下:
…..
接下来,我们要在flowers.xml文件中使用这个xsl文件,即在flowers
4000
.xml文件中的XML声明下面加入以下语句:
此例在浏览器中的显示效果如图 4.3所示。
一个XML文件通
列表内容
常包含文件头和文件体两大部分
1. 文件头
XML文件头由XML声明与DTD文件类型声明组成。其中DTD文件类型声明是可以缺少的,关于DTD声明将在后续的内容中介绍,而XML声明是必须要有的,以使文件符合XML的标准规格。
在前面的Flowers.xml文件中的第一行代码即为XML声明:
ex4_3_01.xml:利用CSS 显示XML文件 <?xml version="1.0" encoding="gb2312"?> <?xml:stylesheet type="text/css" href="Flowers.css"?> <Flowers> <Flower> <Vendor>shop1</Vendor> <Name>iris</Name> <Price>$4.00</Price> </Flower> <Flower> <Vendor>shop2</Vendor> <Name>iris</Name> <Price>$4.30</Price> </Flower> <Flower> <Vendor>shop3</Vendor> <Name>iris</Name> <Price>$3.50</Price> </Flower> </Flowers>
此例在浏览器中的显示效果如图 4.2所示。
图 4.2 利用CSS 显示XML文件
用CSS来显示XML文件时,不具备任何选择性,也就是说,根元素之下的所有数据都会被全部显示,不能改变原文件的结构和内容的顺序。另外,CSS并不支持中文标记,因为CSS 不是专门为XML开发的样式语言,而下面要介绍到的XSL就可以,XSL是特别为XML设计的,它比CSS更为复杂。
4.3 XSL
在上一节介绍的用CSS显示XML文件,效果不是很理想,实际上,CSS主要是适合HTML文件,对于XML这种数据文件,CSS就不适合了,尤其是对那些需要按照不同的条件将文件内容重新排列显示的情况,而用XSL就可以。
XSL是当前最强大和灵活的样式语言,是特别为应用XML而设计的,它比CSS要复杂的多。但是,目前它还未被很好的支持,也还没有最后完成。
利用XSL来设定XML文件的显示方式,即在XML文件的头部,XML声明的下面加入下面一条语句:
flowers.xsl:用来显示XML文件的xsl文件 <?xml version="1.0" encoding="gb2312"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <xsl:template match = "/"> <table border="1"> <tr align="center"> <th width="100">Vendor</th> <th width="100">Flower</th> <th width="100">Price</th> </tr> <xsl:for-each select="//Flowers/Flower"> <tr align="center"> <td><xsl:value-of select="Vendor"/></td> <td><xsl:value-of select="Name"/></td> <td><xsl:value-of select="Price"/></td> </tr> </xsl:for-each> </table> </xsl:template> </xsl:stylesheet>
我们可以看出:一个XSL文件就如一个空的HTML文件,通过填充一个XML文件产生一个传统的HTML文件。
一个XSL文件首先必须有一个XML声明(即第一行),因为XSL实际上是一种特殊的XML文件。XSL的根元素是xsl:stylesheet,即一个XSL文件必须以标记开始,以标记结束,xmlns:xsl属性用于设定XSL的命名域。
XSL的根元素通常是由一个或多个样板元素所组成,在此例中只包含单一样板,它是由标记开始,以标记结束,使用match属性可以在XML文件中选取符合条件的节点,即设定样板名称,对于最上层样板,match设为“/”,代表整个XML文件的根元素。
然后是从XML文件中取得所需的数据,取得数据最简单的方法是:
如果要取得多个元素,则要使用xsl:for-each元素,格式如下:
…..
接下来,我们要在flowers.xml文件中使用这个xsl文件,即在flowers
4000
.xml文件中的XML声明下面加入以下语句:
ex4_4_01.xml:利用XSL 显示XML文件 <?xml version="1.0" encoding="gb2312"?> <?xml:stylesheet type="text/xsl" href="flowers.xsl"?> <Flowers> <Flower> <Vendor>shop1</Vendor> <Name>iris</Name> <Price>$4.00</Price> </Flower> <Flower> <Vendor>shop2</Vendor> <Name>iris</Name> <Price>$4.30</Price> </Flower> <Flower> <Vendor>shop3</Vendor> <Name>iris</Name> <Price>$3.50</Price> </Flower> </Flowers>
此例在浏览器中的显示效果如图 4.3所示。
相关文章推荐
- XML文件结构和基本语法
- C#笔记(3)---基本语法[程序结构]
- XML文件结构和基本语法
- 数据库学习笔记之SQL查询的基本语法结构
- 深入解读PHP基本语法结构
- MySQL的一些基本语法(3)-查看表结构
- go学习笔记(14)-基本语法-结构
- PHP学习笔记(二) 了解PHP的基本语法以及目录结构
- 两种arm汇编程序结构和基本语法
- css基本语法结构(看张鹏老师的视频课程后所总结的)
- XML实例入门笔记(02) - 基本结构和语法1
- 第一章 ASP.net C#基本语法(B篇 程序结构、运算符、运算优先级)
- 第一章 ASP.net C#基本语法(B篇 程序结构、运算符、运算优先级)
- SQL的查询、添加、修改、删除基本语法结构
- XML文件结构和基本语法
- CSS 结构和规则 [ 基本语法 | 伪类别和伪元素 | 层叠顺序 ]
- ASP.net C#基本语法(B篇 程序结构、运算符、运算优先级)
- PHP学习笔记(二) 了解PHP的基本语法以及目录结构
- XML文件结构和基本语法
- C#笔记(3)---基本语法[程序结构]