•   欢迎来到21NN网.
  •   请记住本站网址www.21nn.cn

XML文件构造和基础语法【XML教程】,XML结构 语法

摘要: XML文件构造和基础语法分类:htmljava2010-03-1217:04903人浏览批评(1)珍藏告发4.1.1XML文件构造一个XML文件一般包含文件头和文件体两...
XML文件构造和基础语法

分类: html java2010-03-12 17:04 903人浏览 批评(1) 珍藏 告发

4.1.1 XML文件构造

一个XML文件一般包含文件头和文件体两大部份

1. 文件头

XML文件头由XML声明与DTD文件范例声明构成。个中DTD文件范例声明是能够缺乏的,关于DTD声明将在后续的内容中引见,而XML声明是必须要有的,以使文件相符XML的规范规格。

在前面的Flowers.xml文件中的第一行代码即为XML声明:

<?xml version="1.0" encoding="gb2312"?>

个中:

“<?”代表一条指令的最先,“?>”代表一条指令的完毕;

“xml”代表此文件是XML文件;

“ version="1.0" ”代表此文件用的是XML1.0规范;

“ encoding="gb2312" ” 代表此文件所用的字符集,默认值为Unicode,假如该文件中要用到中文,就必需将此值设定为gb2312。

注重:XML声明必需出现在文档的第一行。

2. 文件体

文件体中包含的是XML文件的内容,XML元素是XML文件内容的基础单位。从语法讲,一个元素包含一个肇端标记、一个完毕标记以及标记之间的数据内容。

XML元素与HTML元素的花样基础雷同,其花样以下:

<标记称号 属性名1="属性值1" 属性名1="属性值1" ……>内容</标记称号>

一切的数据内容都必需在某个标记的最先和完毕标记内,而每一个标记又必需包含在另一个标记的最先与完毕标记内,构成嵌套式的散布,只需最外层的标记没必要被其他的标记所包含。最外层的是根元素(Root),又称文件(Document)元素,一切的元素都包含在根元素内。

在前面的Flowers.xml文件中,根元素就是<Flowers>,根元素必需而且只能有一个,在该文件有三个<Flower>子元素,如许的元素能够有多个。

4.1.2 XML的基础语法

1. 诠释

XML的诠释与HTML的诠释雷同,以“<!--”最先,以“-->”完毕。

2. 辨别大小写

在HTML中是不辨别大小写的,而XML辨别大小写,包含标记,属性,指令等。

3. 标记

XML标记与HTML标记雷同,“<”示意一个标记的最先,“>” 示意一个标记的完毕。XML中只需有肇端标记,就必需有完毕标记,而且在运用嵌套构造时,标记之间不能交织。

在XML中不含任何内容的标记叫做空标记,花样为:<标记称号/>

4. 属性

XML属性的运用与HTML属性基础雷同,但须要注重的是属性值要加双引号。

5. 实体援用

实体援用是指剖析文档时会被字符数据庖代的元素,实体援用用于XML文档中的特别字符,不然这些字符会被诠释为元素的构成部份。比方,假如要显现“<”,须要运用实体援用“&lt;”不然会被诠释为一个标记的肇端。

XML中有5个预定义的实体援用,如表 4.1所示。

表 4.1 XML预定义的实体援用

6. CDATA

在XML中由一个特别的标记CDATA,在CDATA中一切文本都不会被XML处置惩罚器诠释,直接显现在浏览器中,运用要领以下:

<![CDATA[

这里的内容能够直接显现。

]]>

7. 处置惩罚指令

处置惩罚指令运用来给处置惩罚XML文件的运用程序供应信息的,处置惩罚指令的花样以下:

<?处置惩罚指令称号 处置惩罚指令信息?>

比方,XML声明就是一条处置惩罚指令:

<?xml version="1.0" encoding="gb2312"?>

个中,“xml”是处置惩罚指令称号,version="1.0" encoding="gb2312"是处置惩罚指令信息。

4.2 XML与CSS

运用CSS能够用来设定XML文件的显现体式格局,即在XML文件的头部,XML声明的下面到场下面一条语句:

<?xml:stylesheet type="text/css" href="css文件的URL"?>

下面我们经由过程例子来引见怎样运用CSS来显现XML文件。起首竖立一个css文件,代码以下:

flowers.css:一个显现XML文件的CSS款式

flower{font-size:24px; display:block}

vendor{font-size:36px;color:red}

price{display:block}

然后,在flowers.xml文件中运用这个css款式,即在flowers.xml文件中的XML声明下面到场以下语句:

<?xml:stylesheet type="text/css" href="flowers.css"?>

完全的程序代码以下:

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声明的下面到场下面一条语句:

<?xml:stylesheet type="text/xsl" href="xsl文件的URL"?>

下面我们经由过程例子来引见怎样运用XSL来显现XML文件。起首竖立一个xsl文件,代码以下:

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文件必需以<xsl:stylesheet>标记最先,以</xsl:stylesheet>标记完毕,xmlns:xsl属性用于设定XSL的定名域。

XSL的根元素一般是由一个或多个榜样元素所构成,在此例中只包含单一榜样,它是由<xsl:template>标记最先,以<xsl:template>标记完毕,运用match属性能够在XML文件中拔取相符前提的节点,即设定榜样称号,关于最上层榜样,match设为“/”,代表全部XML文件的根元素。

然后是从XML文件中获得所需的数据,获得数据最简朴的要领是:

<xsl:value-of select="形式"/>

假如要获得多个元素,则要运用xsl:for-each元素,花样以下:

<xsl:for-each select="形式">

…..

</xsl:for-each>

接下来,我们要在flowers.xml文件中运用这个xsl文件,即在flowers.xml文件中的XML声明下面到场以下语句:

<?xml:stylesheet type="text/xsl" href="flowers.xsl"?>

完全的程序代码以下:

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>



更多XML文件构造和基础语法相干文章请关注ki4网!

分享到:

发表评论

评论列表

还没有评论,快来说点什么吧~

公众号二维码

微信公众号