XML——小结二

前两天看了四集XML视频,也没有额外查找别的资料,就简单的把个别小知识点总结了一下,但有位美女看了我的博客后,给了我一个建议——“再把知识整合一下”。她的话在我的脑海里呆了一天,把她说的话用来反问自己,看完这四集视频我知道了点啥?虽然视频只有四集,只讲了XML基础和文档定义,但是别的呢?

视频没讲我就不去了解了?——心里的不安让自己决定还是回头整合知识,查查视频以外的资料,再对其多了解点!

所以本篇博客我打算先概括一下视频讲解的内容,然后简单讲讲XML文档的定义(Schema)和XML文档的解析(SAX和DOM的区别)。


一、首先把视频讲解的内容用图大概表示一下:


二、XML文档定义方式 之Schema

XML文档定义方式有DTD(定义了文档的整体结构以及文档的语法,应用广泛并有丰富工具支持。)和XML Schema(用于定义管理信息等更强大、更丰富的特征。),此次主要介绍XML Schema,DTD上篇博客已经介绍了。

Schema也称XSD(XML Schema Definition)

1、作用:

△ 描述XML文档的结构,是基于XML的DTD替代者
△比DTD更完善 功能更强大,
△使用XML语法,可以使用XML编辑器来编辑Schema文件,可以用XML解析器来解析Schema文件
△可保护数据通信

2、优势:

可针对未来的需求进行扩展,基于XML编写,支持数据类型


三、XML文档解析:SAX和DOM

DOM是w3c指定的一套规范标准,核心是按树形结构处理数据,dom解析器读入xml文件并在内存中建立一个结构一模一样的“树”,这树各节点和xml各标记对应,通过操纵此“树”来处理xml中的文件。xml文件很大时,建立的“树”也会大,所以会大量占用内存。
SAX解析器核心是事件处理机制。例如解析器发现一个标记的开始标记时,将所发现的数据会封装为一个标记开始事件,并把这个报告给事件处理器,事件处理器再调用方法(startElement)处理发现的数据。事件处理器可以自己编写也可以从父类继承。

选择DOM与SAX,与在一个数据库中的表单与视图之前选择一样:选择适合于当前实际情况的方法。如果你只是想简单地查看XML文档而不处理它,那么请选择使用SAX。

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念