毕业设计论文XML快速解析技术.doc
《毕业设计论文XML快速解析技术.doc》由会员分享,可在线阅读,更多相关《毕业设计论文XML快速解析技术.doc(48页珍藏版)》请在三一办公上搜索。
1、ABSTRACT摘 要本文研究了XML解析技术,介绍了SAX,DOM,和VTD-XML技术以及一种基于XML的数据通信模型。文中首先对XML产生背景和未来的发展趋势进行了介绍,分析了XML文档数据解析的必要性以及快速解析理论。在第二章中具体讲解了在XML文档中的语法和相应的格式和标准。第三章中详细介绍了XML解析方式DOM和SAX,并对两种方式进行了性能的比较,并在最后介绍了VTD-XML解析技术。在分析了现有解析方式优劣的基础上,第四章重点讨论了XML在监控系统的数据通信模型中的设计与实现。关键词:XML解析;DOM;SAX;虚拟令牌环;数据通信模型ABSTRACTThis thesis s
2、tudies a parsing technology of Extensible Markup Language,introduces SAX,DOM,VTD-XML and an communicationing model that based on XML technology.In the first part of the thesis,the developed background and developing trend of XML are introduced,the necessity of XMLdocument parsing and fast parsing th
3、eory are also analyzed.The grammar and formsrelated to XML document are discussed in chapter two.The third part introduces thepresent parsing methods DOM and SAX and makes comparison of their performances,and introduces the VTD-XML parsing technology.On the basis of the first three chapters,chapter
4、four discusses the design and implement of XML technology in data communicationing model.Keywords: XML parsing;DOM;SAX;VTD;Data Communicationing Model目 录i目 录第一章 绪论31.1论文研究背景31.2论文研究内容及结构3第二章 可扩展标记语言32.1XML技术的产生32.2XML文档语法基础32.2.1文档说明32.2.2标记32.2.3实体引用32.2.4注释32.2.5处理指令32.2.6CDATA段32.3XML相关技术和标准32.3.
5、1DTD和模式32.3.2名域32.3.3XLink32.3.4XSL32.4本章小结3第三章 XML解析技术基础33.1解析原理33.2XML解析器工作模式33.3文档对象模型33.3.1DOM结构33.3.2DOM的优缺点33.4基于事件的简单应用编程接口(SAX)33.4.1SAX结构33.4.2SAX的优缺点33.5基于虚拟令牌环的XML解析技术33.5.1VTD-XML概述33.5.2VTD-XML原理结构33.5.3VTD-XML优点33.6本章小结3第四章 一种基于XML的数据通信模型的设计与实现34.1监控系统的数据通信34.2系统模型的建立34.3系统实现34.3.1网络文件
6、传输34.3.2XML文件封装协议34.3.3XML文件控制34.4本章小结3第五章 总结与展望3致谢3参考文献3第一章 绪论3第一章 绪论1996年,W3C组织开始设计一种Web数据存储和交换的标准,这就是XML(eXtensible MarkupLanguage,可扩展标记语言),它使得现有的因特网协议和软件更为协调,从而简化了对数据的处理和传输。XML所拥有的可扩展性、自描述性、自相容性以及跨文种等优点,使得它非常适于Web上的数据交换与信息发布,被广泛应用到电子商务、电子政务、Web服务等许多领域。目前很多国际著名的公司已完全加入到XML支持者的行列,如微软IE6.0已广泛使用了XML
7、,Netscape新版本也将会支持XML,其它公司,包括IBM,Adobe,Sun和Xerox等也宣布支持XML,并都在着手相关产品的研制。相对于HTML的“所见即所得”,XML将数据和显示信息分离,被称为“文档数据库”,这就使XML文档很适合于描述数据库中的数据。而其它非标准化、非结构化的数据转换为XML文档后,就可以将大量遗留数据实现信息共享和交换。XML解析技术是操作XML文档的重要环节,它在实现把非结构化数据转换为XML数据的过程中,起着重要的作用1 逯鹏.XML文档解析技术及其应用.郑州工业大学学报.2002年第23卷第4期.。1.1 论文研究背景XML(eXtensible Mar
8、kup Language)可扩展标记性语言,是W3C组织认可的文档数据格式标准,是SGML(Standard Generalized Markup Language,标准通用标记语言)的子集,保留了SGML主要的使用功能,同时大大缩减了SGML的复杂性。它独立于任何语言和体系结构,是公认的下一代网络标记语言。由于XML文档能应用在不同平台上,实现数据的协同工作,它现在已成为不可缺少的企业技术的一部分。比如,XML增加了在商场中的电子商务和交流沟通,以及公司内部多样数据的综合。XML的使用因此而快速增长,分析家Ron Schmelzer预测,到2006年,XML将由2003年网络流量的3%上涨至
9、24%,并且到2008年将至少上涨至40%。然而,对不断增长的XML文档的执行引起了一个关键的问题:由于文档中每个元素都包含了相当大的元数据,所以XML文档就包含了大量的数据。这便造成了程序处理的低效,并且给公司网络、处理器和存储结构都带来了很大的负载压力,这就导致了XML的两个关键问题:冗长和性能。1. 冗长:以XML格式储存的数据要比以其他数据库格式储存占有的空间要大的多。2. 性能:由于XML固有的冗余特性,对XML数据的管理将增大应用服务器的负担。1.2 论文研究内容及结构应用XML文档主要有三个技术环节,包括对XML文档的编辑、XML文档的解析和显示或使用XML文档的数据。XML文档
10、的编辑目前有两种方式:一种是使用通用的编辑器生成XML文档,如Notepad;另一种是使用XML IDE(集成开发环境),如XMLSPY等工具。也可以针对具体应用开发某种专用的可视化XML编辑器。XML文档解析的主要任务是检查编辑的XML文档是否是结构完整(Well-formed)和合法的(Validate)。如果XML解析器发现XML文档中的数据或者结构不完整,就会向应用程序报告一个“致命”错误,而且不再会以正常的方式向应用程序传递数据或XML结构。XML的解析技术在XML文档的应用过程中有着重要的作用,它的行为减少了应用程序处理XML数据的负担,为应用程序和数据库提供了可操作的数据。换句话
11、说,XML解析器是XML文档应用的基础。本文章节安排如下:第一章对XML的发展、XML解析技术的分类和本文研究背景进行了简要介绍。第二章介绍了XML文档的特点和XML语法基础以及相关技术和标准,对全文的进一步研究作了基础性的铺垫。第三章首先说明了XML解析的必要性以及解析原理,并详细讲解了基于对象的解析方式(DOM)和基于事件的解析方式(SAX)。在此基础上,进一步比较了两者的优缺点,分析了它们不能够进行普遍应用的原因。然后介绍了VTD-XML解析结构的原理。第四章在前三张的地主之上,重点研究了一种基于XML数据通信模型的设计与实现。第五章是本论文的结束部分,对全文做统一总结,并简要概括了本文
12、未详细讨论的如何使VTD记录具有唯一性的内容。最后是致谢、参考文献。第五章 总结与展望37第二章 可扩展标记语言2.1 XML技术的产生上个世纪的80年代,SGML(Standard Generalized Markup Language,标准通用标记语言)作为文档说明工具而被世人所知,并成为国际标准组织(ISO)的一项国际标准,即ISO8879。不过,由于SGML过于详细和复杂,所以一直没有在全球范围内被广泛地采用。而从SGML衍生出来的HTML(Hyper Text MarkupLanguage,超文本标记语言),凭借其简洁性使得每个人都可能创建Web页面并将它们推向外部世界,从而迅速成为
13、在网上制作页面的标准语言格式2 Norman Walsh.A Technical Introduction to XML.。但是,随着Web的应用越来越广泛和深入,人们渐渐发现HTML的不一致和不可扩展等缺陷严重阻碍了它的进一步发展。尽管HTML推出了一个又一个新版本,却始终满足不了不断增长的需求。1996年11月,在波士顿SGML世界年会上,Internet Homepage的撰写标准HTML被宣告终结,取而代之的是另一个电子文件格式化通用标准XML(Extensible Markup Language,可扩展标记语言)。XML是一个更具弹性、更容易添加新功能而又具有统一标准的语言格式,它的
14、目标是以目前用HTML尚不可能的方法在Web上服务、接受和处理SGML。与用来定义某一类文件格式的HTML等传统标记语言不同,XML本身不是一个单一的标记语言,而是一种元语言(meta-language),可以用来创造类别文件的格式定义,也就是在XML之中创造出很多不同的新标记语言,用来定义不同的文件类别。2.2 XML文档语法基础XML解析器读取两类XML文档:良构文档和有效文档。良构文档语法上正确,满足XML规范描述的生成规则,但不一定符合某个DTD。有效文档则已经针对某个DTD验证过了。XML文档由两个或多个主文档实体组成:文档首部、文档实例以及可能拥有的任何处理指令。文档首部就像一个引
15、导记号,给处理器提供关于如何处理文档主体(即文档实例)的指示。处理指令可任意出现在文档首部或文档实例中。它们用于在XML分析器外给另一个处理应用发送指示。XML文档的基本语法由W3C创建的一个文档所定义的一组规则所规定。在深入了解XML文档结构之前,先需要了解以下几条基本语法规则3 陆新年,陆新宇等.XML揭秘入门.应用.精通.北京:清华大学出版社.2001.6: XML区分大小写,元素的起始标注必须正好匹配结束标注。 所有起始标注必须有结束标注,即所有XML文档都必须包含一个根元素,这个根元素是包含了文档所有内容的最外层元素。 元素必须正确的嵌套。文档中元素不是孤立的(除非只有一个元素根元素
16、),所有元素都必须包含在以根元素开始的元素层次中。 XML用五种预定义实体“<;”、“>;”、“&;”、“&apos;”和“";”来分别代替“”、“&”、“”和“”字符。 XML说明优先,即如果使用一个XML说明,它必须最先出现。为了更好地理解XML语法的主要组成部分,图2.1包含一个用来保存联系信息的XML地址簿。下面用该例子来具体讲解不同XML语法组成部分的作用。 Frank Rizzo 12 12 w Street New York New York 10011 212-555-1212212-555-1213 frizzo Frank's Ratchet
17、 Service 图2.1 XML地址簿文件2.2.1 文档说明所有的XML文档都以首部开始,即使首部中没有任何内容。文档首部由出现次序固定的几个部分组成,下面按顺序列出4 Heather Williamson.XML技术大全.北京机械工业出版社.2002:l XML说明文档示例的第一句就是该文档的XML说明,它是XML文档中最先出现的东西,由一个左尖括号、后跟一个问号(没有空格)、再跟三个字符xml组成。该说明有三个组成部分: version=“1.0”是版本说明,表示该文档遵循XML1.0规范; encoding=“UTF-8”是编码说明,表示采用UTF-8作为编码方式; standalo
18、ne=“yes”是独立说明,指出该文档在一个文件里完成,不需要从外部导入文件。l 各种语句各种语句可能包括注释,它们是描述文档目的的记号。在图2.1的文档示例中,就是注释。注释可以出现在首部或文档实例中,总是以“”字符结束。注释是调试代码的好方法,它不是为机器准备的,而是供人阅读的,因此分析器总是不理会“”中间的一切。此外,注释不能嵌套在定义一个元素名的标注内,且注释中不能再包含注释。l 文件类型说明文件类型声明在XML中用来在文件中详细地说明文件信息,其中包括文件根元素和文件类型定义(Document Type Definition,DTD)5 Elliotte Rusty Harold.X
19、ML使用大全.中国水利出版社.2002。文件的文件类型声明对于确定一个文件是否有效或是否仅仅是结构良好的来说是非常重要的。文件类型声明有如下三个主要作用: 指定文件的根元素。 为文件定义元素、属性和实体的细节(内部DTD)。 指出文件的外部DTD。如果DTD完全嵌套在文档中,那么它的说明语句也在该文档中,这叫做嵌套文档类型说明。如果链接DTD,那么说明包括指示XML分析器到哪去寻找该DTD的链接信息,这叫做链接文档类型说明。地址簿文件的例子说明了文件类型声明的这些功能是怎样实现的。在该例子中使用了下面的文件类型声明:在文件类型声明中明确地指定了文件的根元素是addressbook元素,文件的外
20、部DTDAddressBook.dtd在文件的类型声明中也被明确地引用。XML解析器使用这些DTD来验证文件是否有效。2.2.2 标记标记(tag)是XML语法中最显而易见的组成部分,它被用来描述元素。在地址簿的例子中,元素city是由标记和构成的。为了便于理解,可以将“元素”这个主语理解为逻辑上的标记片段,而“标记”是指用来在XML文件中表示元素的文本字符串。XML元素可以是空的,这意味着元素可以不含有任何解析的字符数据。在HTML中的元素br就是一个空元素,因为它不含有任何字符数据。然而XML语法不允许在传统的HTML风格下使用标记来使用元素br。XML中空元素的标记必须在元素名之后用一个
21、斜杠(/)用来指出它是空的。因此,标记在XML中的用法就变成了。HTML中空元素的语法来自结束标记的格式。比如,HTML中元素head被编为一对标记和。第二个标记中的斜杠指出它是这对标记中的结束标记。空元素使用相同的方法来说明没有相应的结束标记。然而,仍然可以以“起始标记/结束标记”的形式来表示空元素。比如,可以使用来表示标记,在XML语法中,这也是合法的。2.2.3 实体引用实体是构成XML文件的基本单位,而这就是实体本身以及通常通过实体引用构成的其它实体。实体引用在XML中被用来为数据篇幅与别名。实质上,实体引用还是XML片段的唯一名称。比如,地址簿文件通过实体引用来使用单引号()与和号(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 XML 快速 解析 技术
链接地址:https://www.31ppt.com/p-4860502.html