论文部分内容阅读
虽然对XML的某些技术标准尚有争议,但是人们已经普遍认识到XML的作用和巨大潜力,并将其应用到互联网的各个方面,如:数据交换、替代传统的电子数据交换、集成不同数据源、数据的多种显示等。XML特有的自我描述和平台无关等特性,使其在数据交换和不同数据源集成等方面的应用尤为突出。但是,XML格式的信息冗余过大,对磁盘空间、带宽都存在着浪费。为了有效地存储和交换XML数据,有必要对XML数据进行压缩。在传统的基本数据压缩算法的基础上,分析并结合XML文档的结构特点,给出了一种主要应用于数据交换和XML数据存档的高压缩率的XML文档专用压缩技术XCfde。根据XML文档自身特点,以基本数据压缩算法为基础,采取特有的四步压缩策略:重载SAX相关接口实现自己的XML解析器将XML文档分离为内容数据和结构数据,对结构数据进行字典编码;构建数据类型分类引擎,自动识别内容数据中包含的数据的类型(如整数、浮点数等)并且将内容数据根据其路径和数据类型进行分类后存入相应的容器;在传统算法的基础上设计不同的编码方法,对每个内容数据容器采取相应的编码方法进行初步编码处理;用7Zip压缩工具将初步编码后的内容数据和结构数据进行整合压缩,以期获得比较高的压缩率。此外详细描述了XCfde实现中的关键技术,包括数据类型分类引擎、中文压缩算法的改进等。将XCfde与流行的通用压缩工具和其它一些XML专用压缩工具进行压缩率对比,并且通过简单的网络应用程序范例模拟XML文档传输过程来展示XCfde的实际应用效果,测试XCfde在传输效率和性能方面的改善程度。从试验结果可以看出,XCfde的压缩率超过了现今流行的通用压缩工具和其它一些XML专用压缩工具,有效改善XML数据交换的传输速度和带宽利用率以及存档中的空间利用率。