Username: Password:

xml轻松学习手册(5)xml实例解析_xml教程
来源:作者:网友供稿 发布时间:2007-12-07 05:40:33

第五章:XML实例解析

提纲:

一:实例效果

二:实例解析
  1.定义新标识。
  2.建立XML文档。
  3.建立相应的HTML文档。

XML在不同领域有着广泛的应用,比如在科技领域的MathML,无线通信应用的WML,在网络图象方面的SVG等等,我们这里侧重讨论XML在web上的应用。XML在web上应用主要是利用其强大的数据操作能力。一般用XML配合javascript和asp等服务器端程式,能够实现网络上几乎任何的应用需求。

考虑讲解方便,我们在下面介绍一个简单的实例,不包含服务器端程式。目的在于让您对XML的数据操作能力有一个感性的认识。

好,我们首先[ 点击这里 ]来看实例的效果。(请用IE5.0以上版本浏览器打开)

这是个简单的CD唱片数据检索功能。您通过点击"上一张","下一张"能够看到单张CD的有关信息。这样的效果我们原来用两种方法能够实现:

1.利用DHTML,将数据隐藏在不同的层中,通过鼠标事件依次显示;

2.利用后台程式(如ASP,CGI,PHP,JSP等),调用服务器端的数据。

但是在这个实例中,我们打开页面原代码能够看到,其中没有用DHTML的DIV,也没有表单的action,他完全是用XML来实现的。下面我们来分析他的制作过程:

第一步:定义新标识。
根据实际的CD数据,首先新建一个名为的标识;其次建立他相关的数据标识,分别是:CD名称,演唱者<Artist>,出版年代<Year>,国家<Country>,发行公司<Company>和价格<Price>;最后还要建立一个名为目录<CATALOG>的标识。为什么要再建立一个<CATALOG>标识呢?因为在XML文档中规定,必须且只能有一个根元素(标识),我们有多个CD数据,这些数据是并列的关系,所以需要为这些并列的元素建立一个根元素。<BR>以上元素的定义和关系都完全符合XML标准,无需特别的DTD文档来定义,所以能够省略DTD定义。假如我们想使用DTD来定义,以上过程能够表示为:<BR><BR><!ELEMENT CATALOG (CD)*><BR><!ELEMENT CD (Title,Artist,Year,Country,Company,Price)><BR><!ELEMENT Title (#PCDATA)><BR><!ELEMENT Artist (#PCDATA)><BR><!ELEMENT Year (#PCDATA)><BR><!ELEMENT Country (#PCDATA)><BR><!ELEMENT Company (#PCDATA)><BR><!ELEMENT Price (#PCDATA)><BR><BR>这段代码表示:元素CATALOG包含多个CD子元素,而子元素CD又依次包含Title, Artist, Year, Country, Company, Price 六个子元素,他们的内容都定义为文本(字符,数字,文本)。(注:具体的语法说明能够看上一章关于DTD的介绍) <BR><BR>第二步:建立XML文档。<BR><BR><?xml version="1.0"?><BR><CATALOG><BR><CD><BR><TITLE>Empire Burlesque
Bob Dylan
USA
Columbia
10.90
1985


Hide your heart
Bonnie Tylor
UK
CBS Records
9.90
1988


Greatest Hits
Dolly Parton
USA
RCA
9.90
1982


Still got the blues
Gary More
UK
Virgin redords
10.20
1990


Eros
Eros Ramazzotti
EU
BMG
9.90
1997



上面代码首先用声明语句表明这是个XML文档,他的格式遵守XML 1.0标准规范。然后是文档内容,结构树很清楚:


......


......



一共定义了5组数据。我们将上面的代码存为cd.xml文档,以备调用。

第三步:建立相应的HTML文档。
1.导入XML数据。
我们知道,现在流行的浏览器中,暂时只有微软的IE5.0以上版本浏览器支持XML。IE是通过在HTML中的object物件来支持插入XML,并通过js的XMLDocument.load()方法来导入数据。我们看代码: CLASSID="clsid:550dda30-0541-11d2-9ca9-0060b0ec3d39" ID="xmldso">


定义一个object,ID名为xmldso。然后在head区用js引入xml数据:



2.捆绑数据。
然后将用标识来将XML数据绑定在表格中。其中ID,DATASRC,DTATFLD都是的属性。代码如下:








Title:
Artist:
Year:
Country:
Company:
Price:


3.动作操作。
最后,为数据提供浏览按钮:



并利用js来完成两个鼠标点击功能:movenext()和moveprevious()。在head区加入如下代码:



好,我们先看HTML文档的全部原代码:








CD Navigate




CLASSID="clsid:550dda30-0541-11d2-9ca9-0060b0ec3d39" ID="xmldso">









Title:
Artist:
Year:
Country:
Company:
Price:










将以上代码存为cd.htm文档,于第二步的cd.xml文档放在一起。打开cd.htm文档,您就看见和上面实例相同的效果了。

好,到今天为止,我们已学习了关于XML的不少知识,我们来总结一下前面五个章节,分别是XML快速入门,XML的概念原理,XML的术语,XML的语法和本章的实例解析。到这里,教程部分就结束了。在写作过程中,阿捷尽最大努力将有关XML概念讲得通俗易懂,尽量把自己的理解告诉给大家,但因为本人学习XML时间也不长,对整个XML的技术把握还不够系统和深入,所以难免有疏漏的地方,请大家指正和谅解,谢谢!

喜欢本文,那就收藏到:

    Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘 和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网
相关评论  我也要评论
还没有关于此文章的相关评论!
  • 昵称: (为空则显示guest)
  • 评论分数: ★ ★ ★★★ ★★★★ ★★★★★
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
  • 导航
    赞助商
    文章类别
    订阅