一.对xml的感性认识
这几天在学习xml(Extensible Markup Language)可扩展标记语言,对xml的逻辑结构也挺感兴趣的,xml就象我以前学过的数据结构里面的树一样,它有根<root></root>,树枝<child></child>和树叶<subchild></subchild>。
下面根据我的理解写一下完整的xml文档:
<?xml version="1.0" encoding="gb2312"?>
<root>
<child>
<subchild>......</subchild>
</child>
</root>
注意:一个完整的xml文档只有一个根元素,其他的子元素必须在根元素中成对嵌套。第一行是xml的版本信息以及它的编码方式(允许出现中文字符)。第一行和第二行<root>省略了DTD (文挡类型定义)有效校验。
二.xml与html的区别
xml可以自己定义标记,不是预定义的。其自由与可扩展性远远超过html。xml重点是用描述数据与存放数据,而html用来显示数据,因为html可以将数据格式化。xml在浏览器显示是一个没有经过格式化的纯文档类型,这往往不是用户想要看到的浏览结果.那就要通过css(层叠样式表)和xsl(可扩展样式语言)将xml里面存放的数据格式化显示出来,达到用户所要看的表现结果.从这一点可以看出,xml实现了文档内容与表现形式的分离以及同一个文档不同的表现形式.
为了更好的了解它,下面以我看过的一部电影为题材写了以下的代码,这里只提供参考(有不正确的地方恳请指正):
<?xml version="1.0" encoding="gb2312"?>
<?xml-stylesheet type="text/xsl" href="film.xsl"?>
<film>
<EnglishName>Pirates.of.The.Caribean</EnglishName>
<ChineseName>加勒比海盗2</ChineseName>
<Director>Gore Verbinski</Director>
<Class>冒险/动作/喜剧/幻想</Class>
<Country>美国</Country>
<Language>英语</Language>
</film>
保存为film.xml
=================================
<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
<BODY>
<H2 ALIGN="CENTER">电影资料集<HR></HR></H2>
<TABLE COLSPAN="8" CELLPADDING="5" BORDER="0">
<TR>
<TD ALIGN="CENTER" WIDTH="250" BGCOLOR="#4682B4">
<FONT COLOR="#FFFFFF" SIZE="1" FACE="黑体">英文名称</FONT>
</TD>
<TD ALIGN="CENTER" WIDTH="250" BGCOLOR="#4682B4">
<FONT COLOR="#FFFFFF" SIZE="1" FACE="黑体">中文名称</FONT>
</TD>
<TD ALIGN="CENTER" WIDTH="250" BGCOLOR="#4682B4">
<FONT COLOR="#FFFFFF" SIZE="1" FACE="黑体">导演</FONT>
</TD>
<TD ALIGN="CENTER" WIDTH="250" BGCOLOR="#4682B4">
<FONT COLOR="#FFFFFF" SIZE="1" FACE="黑体">类型</FONT>
</TD>
<TD ALIGN="CENTER" WIDTH="250" BGCOLOR="#4682B4">
<FONT COLOR="#FFFFFF" SIZE="1" FACE="黑体">国家</FONT>
</TD>
<TD ALIGN="CENTER" WIDTH="250" BGCOLOR="#4682B4">
<FONT COLOR="#FFFFFF" SIZE="1" FACE="黑体">语言</FONT>
</TD>
</TR>
<xsl:for-each select="film">
<TR>
<TD BGCOLOR="#F7EFDE" ALIGN="CENTER">
<FONT SIZE="1"><xsl:value-of select="ChineseName"/></FONT>
</TD>
<TD BGCOLOR="#F7EFDE" ALIGN="CENTER">
<FONT SIZE="1"><xsl:value-of select="EnglishName"/></FONT>
</TD>
<TD BGCOLOR="#F7EFDE" ALIGN="CENTER">
<FONT SIZE="1"><xsl:value-of select="Director"/></FONT>
</TD>
<TD BGCOLOR="#F7EFDE" ALIGN="CENTER">
<FONT SIZE="1"><xsl:value-of select="Class"/></FONT>
</TD>
<TD BGCOLOR="#F7EFDE" ALIGN="CENTER">
<FONT SIZE="1"><xsl:value-of select="Country"/></FONT>
</TD>
<TD BGCOLOR="#F7EFDE" ALIGN="CENTER">
<FONT SIZE="1"><xsl:value-of select="Language"/></FONT>
</TD>
</TR>
</xsl:for-each>
</TABLE>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
保存为film.xsl
以上代码在IE7.0解析通过.
=============================================
三.总结
通过对xml的学习,使我对网络编程的接触有更进一步,对xml的接触还是初步,甚至皮毛而已,还有待于更深入的学习,希望广大网络编程爱好者能够给点意见.以后随着自己的学习不断深入,我会继续发表关于xml和asp,asp.net,java.pb方面的文章.
评论