什么是XML: Extentsible Markup Language的缩 写,可扩展的标记语言(可自定义);如:<标记>,是用来定义其它语言的一种元语言,
XML的好处:全球统一的规范,通用,数据传输和存储。
一个有效的XML一定是合法的
而一个合法的XML却不一定是有效的;
XML效验技术有两种:
1:DTD (官方的)
DTD=类型定义(Documnet Type Definition)
DTD
是一套关于标记符的语法规则。它是XML1.0版规格得一部分,是XML文件的验证机制,属于XML文件组成的一部分。
DTD
是一种保证XML文档格式正确的有效方法,可以通过比较XML文档和DTD文件来看文档是否符合规范,元素和标签使用是否正确。一个DTD文档包含:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使用的实体或符号规则。
XML文件提供应用程序一个数据交换的格式,DTD正是让XML文件能够成为数据交换的标准,因为不同的公司只需定义好标准的DTD,各公司都能够依照DTD建立XML文件,并且进行验证,如此就可以轻易的建立标准和交换数据,这样满足了网络共享和数据交互。但是DTD 是使用非 XML 语法编写的
DTD
不可扩展,不支持命名空间,只提供非常有限的数据类型
2:Schama(非官方的)
一个XML Schema会定义:文档中出现的元素、文档中出现的属性、子元素、子元素的数量、子元素的顺序、元素是否为空、元素和属性的数据类型、元素或属性的默认和固定值。
Schema是DTD替代者的原因,一是据将来的条件可扩展,二是比DTD丰富和有用,三是用XML书写,四是支持数据类型,五是支持命名空间。
XML
Schema的优点:
1) XML Schema基于XML,没有专门的语法
2) XML可以象其他XML文件一样解析和处理
3) XML
Schema支持一系列的数据类型(int、float、Boolean、date等)
4) XML Schema提供可扩充的数据模型。
5)
XML Schema支持综合命名空间
6) XML Schema支持属性组。
XML的解析技术:
1:DOM(docnment object model)(文档 对象 模型)的缩写, 一种基于树结构的API
DOM的缺点:当文件过大时。解析会很慢。
DOM的优点:可以进行增删改。
2:SAX 解析XML文档的事件驱动模型
SAX的优点:不必将整个文件加载到类存中。占用内存少;
SAX的缺点:不能进行增删改,是一次性读完的。