Domtree API

简介

domtree is a set of XML manuplate API, it can handle XML document using DOM API, SAX API, and it also support DTD validation.

NSL -Domtree是一套使用C语言书写的XML操纵API函数库,它支持 DTD,DOM,SAX操纵API,是一套短小精干、高效率、可移植的XML处理C函数库。NSL-Domtree包括DOM API,SAX API两大部分,Domtree同时还支持DTD校验,以及中文XML编码。

使用NSL-Domtree DOM API,用户可以方便的将XML数据转换为内存中的数据结构,并使用API对XML数据结构进行增加、删除、变更等结点操作,并且可以象访问文件系统目录
那样快速定位和更新XML DOM结构中的结点。所有这些都只需要NSL-Domtree DOM API就能完成不需要任何其它的函数库支持。并且可支持LINUX/UNIX/WINDOWS等多种操作系统平台。

使用NSL-Domtree SAX API用户可以快速和方便的解析和处理实时XML数据流。用户可以在接收XML数据流的同时,实时的对XML数据进行解析同时当遇到XML文件的各种组成部分时,调用事先定义好的处理函数进行处理。以实现XML数据的实时分析功能。

DOM API简介

一个XML文档先通过Domtree的Parse函数进行解析处理,如果结构正确,Domtree会将XML数据转换为内存中的一个树型数据结构,这个结构包括根结点,父结点,子结点,兄弟结点等。结点的类型包括文本结点,元素结点,属性结点等。随后就可以通过Domtree的DOM API对这个树型数据结构进行各种操作。更新后的内存中的树型数据结构可以通过Domtree的输出函数再反向生成XML文档。

SAX API简介NSL -Domtree支持使用SAX方式对XML数据流进行解析。与DOM API不同的是SAX API可以边接收XML数据流,边对XML内容进行解析。而不象DOM API,需要获得一个完整的XML块才能解析出正确的DOM对象。SAX API与DOM API相比,拥有更快的解析速度,和实时解析XML数据的能力。

与DOM API不同的是,SAX API并不生成静态DOM数据结构,而是在发现XML各个不同部分时,将唤醒对应的处理函数在用户空间进行处理。

Reference:

o Microsoft XML Team's WebLog

Document:

o DOMTREE_DOM_API_MANUAL_CN.doc
o DOMTREE_SAX_API_MANUAL_CN.doc

Download:

Download source code