《ML轻松学习手册ML实例解析.docx》由会员分享,可在线阅读,更多相关《ML轻松学习手册ML实例解析.docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第五章:XML 实例解析提纲:一:实例效果二:实例解析1. 定义标识。2. 建立 XML 文档。3. 建立相应的 HTML 文件。XML 在不同领域有着广泛的应用,比方在科技领域的 MathML,无线通信应用的 WML,在网络图象方面的 SVG 等等,我们这里侧重争论 XML 在 web 上的应用。XML 在web 上应用主要是利用其强大的数据操作力气。一般用 XML 协作 javascript 和 asp 等效劳器端程序,可以实现网络上几乎全部的应用需求。考虑讲解便利,我们在下面介绍一个简洁的实例,不包含效劳器端程序。目的在于让您对XML 的数据操作力气有一个感性的生疏。好,我们首先 点击这
2、里 来看实例的效果。(请用IE5.0 以上版本扫瞄器翻开)这是一个简洁的 CD 唱片数据检索功能。你通过点击“上一张“,“下一张“可以看到单张 CD 的有关信息。这样的效果我们原来用两种方法可以实现:1. 利用 DHTML,将数据隐蔽在不同的层中,通过鼠标大事依次显示;2. 利用后台程序(如 ASP,CGI,PHP,JSP 等),调用效劳器端的数据。但是在这个实例中,我们翻开页面原代码可以看到,其中没有用 DHTML 的 DIV,也没有表单的 action,它完全是用 XML 来实现的。下面我们来分析它的制作过程:第一步:定义标识。依据实际的 CD 数据,首先建一个名为的标识;其次建立它相关的
3、数据标识,分别是:CD 名称,演唱者,出版年月,国家,发行公司和价格;最终还要建立一个名为名目的标识。为什么要再建立一个标识呢?由于在 XML 文档中规定,必需且只能有一个根元素(标识),我们有多个 CD 数据,这些数据是并列的关系,所以需要为这些并列的元素建立一个根元素。以上元素的定义和关系都完全符合 XML 标准,不需要特别的 DTD 文件来定义,所以可以省略 DTD 定义。假设我们想使用DTD 来定义,以上过程可以表示为:这段代码表示:元素 CATALOG 包含多个 CD 子元素,而子元素 CD 又依次包含 Title, Artist, Year, Country, Company, P
4、rice 六个子元素,它们的内容都定义为文本(字符,数字,文本)。(注: 具体的语法说明可以看上一章关于 DTD 的介绍)其次步:建立 XML 文档。Empire BurlesqueBob DylanUSAColumbia10.901985Hide your heartBonnie TylorUKCBS Records9.901988Greatest HitsDolly PartonUSARCA9.901982Still got the bluesGary MoreUKVirgin redords10.201990ErosEros RamazzottiEUBMG9.901997上面代码首先用声
5、明语句说明这是一个 XML 文档,它的格式遵守XML 1.0 标准标准。然后是文档内容,构造树格外清楚:.一共定义了 5 组数据。我们将上面的代码存为cd.xml 文件,以备调用。第三步:建立相应的 HTML 文件。1. 导入 XML 数据。我们知道,目前流行的扫瞄器中,临时只有微软的 IE5.0 以上版本扫瞄器支持XML。IE 是通过在 HTML 中的 object 物件来支持插入 XML,并通过 js 的XMLDocument.load方法来导入数据。我们看代码: 定义一个 object,ID 名为 xmldso。然后在 head 区用 js 引入 xml 数据: xmldso.XMLDo
6、cument.load(“cd.xml“);2. 捆绑数据。然后将用标识来将 XML 数据绑定在表格中。其中 ID,DATASRC,DTATFLD 都是的属性。代码如下:Title:Artist:Year:Country:Company:Price:3. 动作操作。最终,为数据供给扫瞄按钮:并利用 js 来完成两个鼠标点击功能:movenext和 moveprevious。在 head区参与如下代码:function movenextif (xmldso.recordset.absolutepositionxmldso.recordset.movenext;function moveprevi
7、ousif (xmldso.recordset.absolutepositionxmldso.recordset.recordcount)1)xmldso.recordset.moveprevious;好,我们先看 HTML 文件的全部原代码: xmldso.XMLDocument.load(“cd.xml“); function movenextif (xmldso.recordset.absoluteposition 1)xmldso.recordset.moveprevious;CD NavigateTitle:Artist:Year:Country:Company:Price:将以上代码存为 cd.htm 文件,于其次步的 cd.xml 文件放在一起。翻开 cd.htm文件,你就观看和上面实例一样的效果了。好,到今日为止,我们已经学习了关于 XML 的不少学问,我们来总结一下前面五个章节,分别是 XML 快速入门,XML 的概念原理,XML 的术语,XML 的语法和本章的实例解析。到这里,教程局部就完毕了。在写作过程中,阿捷尽最大努力将有关 XML 概念讲得通俗易懂,尽量把自己的理解告知给大家,但由于本人学习XML 时间也不长,对整个XML 的技术把握还不够系统和深入,所以难免有疏漏的地方,请大家指正和谅解,感谢!