资源描述:
《《xml解析器》word版》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、XML解析器接口缩略语XMLeXtensibleMarkupLanguage可扩展的置标语言DOMDocumentObjectModel,文档对象模型SAXSimpleAPIforXML,简单的XMLAPIJAXPJavaAPIforXMLProcessingXML的Java接口DTDDocumentTypeDefinition,文档对象定义XSLExtensibleStylesheetLanguage,可扩展样式语言可扩展标记语言XML(eXtensibleMarkupLanguage)是标准通用标记语言SGML的子集,是
2、互联网上交换数据的标准。XML文件包含了数据对象和处理这些数据对象的程序的描述。XML文件在被浏览器显示出来或其他应用程序使用之前,经过了以下几个步骤:解析、样式表格式化、转换、数据库访问等。XML解析器完成第一步工作,它读取XML文件,生成语法树,审查文档结构,将结果传给应用程序。XML解析器可以是验证解析器,用以检查文件是否有效,也可以是非验证解析器,仅为结构良好的文件进行检查。应用程序可使用C、Java或Jscript、VBscript、ASP等脚本语言,通过解析器接口对XML文件中的元素、属性、实体和标记进行操作。常
3、见的XML解析器:1.MSXML,微软的XML解析器,与W3C规范不完全兼容。2.Xerces,开放源码组织提供,实现Xerces本地接口XNI,支持的标准有:XML1.0、XML命名空间、DOM2(Core,Events,andTraversalandRange)、SAX2(Core,andExtension)、JAXP1.1、XMLSchema1.0(StructuresandDatatypes)。Xerces有3个版本,分别用C++、java和perl实现。应用程序可以链接Xerces库,调用其接口访问XML文档。3.
4、XML4j、XML4c,IBM对Xerces的扩展。XML4j的API分为3类:Public:包括DOM1、DOM2接口,SAX1、SAX2接口Experimental:包括DOM3接口Internal:内部接口DOM接口:整个XML文档被视为具有层次关系的节点树,所有的非根节点都是以一个根节点为祖先遗传下来。例如这段文件,
ShadyGrove | Aeolian |
OvertheRiver,Charlie | Dorian< 5、/TD> |
DOM将其看作下面这棵树,当然“树“的观念只是逻辑上的,协议的实现可以采用各种方式。对树进行深度优先前序遍历即可重现文档。DOM中每一种节点类型都有一个相应的接口。DOM的节点类型有:Document、Element、Attr、Text、CDATASection、EntityReference、Entity、ProcessingInstruction、Comment、DocumentType、DocumentFragment、Notation。节点的包容关系:Document
6、Element,ProcessingInstruction,Comment,DocumentTypeElementElement,Text,Comment,ProcessingInstruction,CDATASection,EntityReferenceAttrText,EntityReferenceTextCDATASectionEntityReferenceElement,ProcessingInstruction,Comment,Text,CDATASection,EntityReferenceEntityEleme
7、nt,ProcessingInstruction,Comment,Text,CDATASection,EntityReferenceProcessinfInstructionCommentDocumentTypeDocumentFragmentElement,ProcessingInstruction,Comment,Text,CDATASection,EntityReferenceNotationDOM1由两部分组成:CoreDOM和HTMLDOM。CoreDOM进一步被划分为基础接口和扩展接口,所有解析器都必须实现基础接
8、口,如果只对HTML文档进行操作,则不需要实现扩展接口。HTMLDOM对HTML文档所特有的对象和方法进行描述,可参见相关规范,此处不详述。基础接口:DOMException接口:exceptionDOMException{unsignedshortcode;};//ExceptionCo