XML文档解析方法.docVIP

  • 1
  • 0
  • 约5.21万字
  • 约 22页
  • 2017-08-23 发布于河南
  • 举报
XML文档解析方法

作者:未知??来源:网络??日期:2007-3-22 21:55:45 一、 XML 简介 XML(Xtensible Markup Language,即扩展标记语言)的发展起源于1996年。当时,出版界巨头和Web业内人士经过共同讨论,提出了创建SGML(Standard Generalized Markup Language,即标准通用标识语言)子集(HML)的建议。该子集专用于Web,具有可扩展(或可扩充)性,并且能利用结构化标记语言的所有高级功 能,但摒弃了SGML的复杂性。XML规范的第一份草稿于1996年11月发布后不久,1997年1月首个XML解析器就面世了。随后,便出现了XML的 应用以及新的规范和解析器。 HTML(Hypertext Markup Language)语言是大家所熟悉的开发网页的一种标记语言,但它不是一种编程语言,它的主要标记是针对文档内容本身结构的描述,因机器本身是不能够解 析它的内容的。XML语言是SGML语言的子集,它保留了SGML主要的使用功能,同时大大减小了SGML的复杂性。它不仅能表示文档的内容,而且可以表 示文档的结构,这样在能够被人类理解的同时,也能够被机器所理解。虽然HTML是SGML的一个应用,XML是SGML的一个子集,但是XML绝不是在 HTML上添加某些元素而形成的,它们之间是有很大区别的。最大的区别就是XML允许使用者为某种特殊目的而定义自已的元素。除此之外,另一个最主要的区 别就是XML致力解决的问题,正是在使用HTML时所遇到的一些特殊问题。 XML要求遵循一定的严格标准,其分析程序比HTML浏览器对语法和结构的要求更加严格。XML文档每次分析的结果都一致,而HTML在不同的浏览器 中可能会作出不同的分析和显示。同时,XML标准是对数据的处理应用,而不只是针对Web页的,它还可涉及到数据库电子商务系统,以及任何显示系统的高级 应用。开发者可根据特定的工业需求,利用XML创建自定义的数据结构。这些数据结构和数据库可以在许多设备上查看,而不需要使用自定义的接口在不同的显示 设备上查看相同的数据。 XML主要有三个要素:文档类型声明(DTD:Document Type Declaration)或XML Schema(XML大纲)、可扩展样式语言(XSL:eXtensible Stylesheet Language)和可扩展链接语言(XLink:eXtensible Link Language)。DTD和XML大纲规定了XML文件的逻辑结构,定义了XML文件中的元素、元素的属性以及元素与元素属性之间的关系; Namespace(名域)实现了统一的XML文档数据表示以及数据的相互集成;XSL是用于规定XML文档呈现样式的语言,它使得数据与其表现形式相互 独立,比如XSL能使Web浏览器改变文档的表示法,如数据显示顺序的变化,不需要再与服务器进行通讯。通过改变样式表,同一个文档可以显示得更大,或者 经过折叠只显示外面的一层,或者可以变为打印的格式。而XLink 将进一步扩展目前Web上已有的简单链接。 二、文档对象模型(DOM) DOM是Document Object Model(文档对象模型)的简称,是对Web文档进行应用开发、编程的应用程序接口(API)。作为W3C公布的一种跨平台、与语言无关的接口规范,DOM提供了在不同环境和应用中的标准程序接口,可以用任何语言实现。 DOM采用对象模型和一系列的接口来描述XML文档的内容和结构,即利用对象把文档模型化。这种对象模型实现的基本功能包括: 描述文档表示和操作的接口; · 接口的行为和属性; · 接口之间的关系以及互操作。 DOM可对结构化的XML文档进行解析,文档中的指令、元素、实体、属性等所有内容个体都用对象模型表示,整个文档被看成是一个有结构的信息树,而不 是简单的文本流,生成的对象模型就是树的节点,对象同时包含了方法和属性。因此,对文档的所有操作都是在对象树上的进行。在DOM中,树中的一切都是对 象,不管是根节点还是实体的属性。 在DOM中主要有以下三个对象: · XML文档对象 XML文档既是一种对象,同时又代表整个XML文档。它由根元素和子元素组成。 · XML节点对象 XML节点对象代表的是XML文档内部的节点,如元素、注释、名字空间等。 · XML节点列表 XML文档模块列表代表了节点的集合。 利用DOM,开发人员可以动态地创建XML文档,遍历结构,添加、修改、删除内容等。其面向对象的特性,使人们在处理XML解析相关的事务时节省大量的精力,是一种符合代码重用思想的强有力编程工具。 三、MSXML 从理论上说,根据XML的格式定义,我们可以自己编写一个XML的语法分析器,但实际上微软已经给我们提

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档