当前位置: 首页 > 专利查询>黄放专利>正文

xml数据压缩和解压方法技术

技术编号:2872409 阅读:219 留言:0更新日期:2012-04-11 18:40
一种xml数据压缩和解压方法,包括压缩过程和解压缩过程,其特征是:    压缩过程包括如下步骤:    1)  计算机系统把xml格式的数据代码中的“数据结构特征”归纳成为xml格式的结构代码;    2)  计算机系统运行数据压缩程序,参照结构代码对数据特征的描述,把xml数据转换为平文格式的数据代码;    解压缩过程中,计算机系统运行解压缩程序,解析数据代码,并参照结构代码对数据特征的描述,恢复源数据的信息。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及一种。
技术介绍
扩展标记语言(Extensible Markup Lange)xml是World Wide WebConsortium(W3C)公布的一种语义标记规则,自从1997年12月发布以来,xml已取得了巨大成功;它被广泛地按照许多方式应用,其中一些应用正在开始进行,而另一些应用已经有了相当惊人的成果,可以预测xml的作用会越来越重要。由于xml是非专有的并且易于阅读和编写,就使得它成为在不同的应用之间交换数据的理想格式。xml数据格式文件可以分为两个部分,载体和载荷。载体又可以分为两个部分属性特征和结构特征。属性特征在xml数据文件中起着描述、定义数据格式和数据属性的功能,如数据类型,长度和显示或打印格式等,结构特征在xml数据文件中描述数据的结构形式和数据之间的关系。剩余部分则是有效数据载荷。xml语言作为一种数据载体的格式规范存在一个明显的缺点就是载体部分往往占据了整个数据文件的较大部分,而且,通常载体部分大于载荷(数据)的部分。例如用xml对“铁”的比重的描述可以如下Script 1<OBJECT name=”iron”> <specific_gravitytype=”number”1ength=”4”unit=”g/cube cm”>7.86<specific_gravity/> </OBJECT>(119个字符)可解析为物体“铁”的比重为7.86,计量单位为“克/立方厘米”,有效数据长度为4,数据类型为数字。其中,有效数据为iron,7.86(8个字符,不包含分隔符)。其余部分(111个字符)都是按照格式规范要求和应用需要对相应数据的描述或定义,载体使得处理该数据的计算机程序或阅读者可以理解数据的含义,从而实现和简化计算机自动处理数据的功能,或实现xml数据的可阅读功能。因此,如果忽略数据载体的部分,数据本身的含义就会消失而使数据变得没有意义,或者说不可解析。然而,如果按照以上的格式,描述100种不同物质的比重,数据载体部分将大量重复出现(为11100个字符)。占据了数据文件的大部分存储空间和传输空间。xml数据压缩算法的目标就是希望压缩数据载体的尺寸。对上述数据格式,我们可以用xml的一个特殊xml文件,“大纲”(xml Schema)归纳其载体部分为不重复的内容Script 2<Element name=”OBJECT”> <Attribute name=”name”type=”string”/> <Element name=”specific_gravity”> <Attribute name=”type”type=”string”/> <Attribute name=”length”type=”number”length=”4”/> <Attribute name=”unit”type=”string”/> </Element> </Element> Script 2归纳了Script 1的结构特征和属性特征,而与具体的数据值没有关系。根据Script 2的归纳,Script l可以改写为Script 3<OBJECT name=”iron”> <specific_gravity>7.86<specific_gravity/> </OBJECT> 在Script 3中去掉了specific_gravity的属性内容,即把载体中对数据属性的描述归纳到了大纲文件中,使得文件的尺寸减小。利用现有的xml技术,可以从大纲Script 2中检索到specific_gravity的属性,从而保持了信息的完整性。但是,与载荷的尺寸(8个字符)相比,Script 3的尺寸仍然很大,这是因为虽然在Script 2包含了Script 1的数据结构规则,但是在xml数据文件中,仍然必须通过使用xml的语法去实现数据结构的具体形式。也就是说用xml的语法规则和Schema技术,无法有效地减小xml数据文件中载体的结构的大小。
技术实现思路
本专利技术的目的就是为了解决以上问题,提供一种,有效地减小xml数据文件中载体的结构的大小。为实现上述目的,本专利技术提出一种,包括压缩过程和解压缩过程,其特征是压缩过程包括如下步骤1)计算机系统把xml格式的数据代码中的“数据结构特征”归纳成为xml格式的结构代码;2)计算机系统运行数据压缩程序,把xml数据转换为平文格式的数据代码;解压缩过程中,计算机系统运行解压缩程序,解析数据代码,并参照结构代码对数据特征的描述,恢复源数据的信息。由于采用了以上的方案,把xml数据转换为平文格式的数据代码,这种数据格式的有效载荷比例增大了许多,数据得到压缩。只要把压缩后的平文格式数据中的各项数据与结构代码对数据特征的描述联系起来,我们就可以把它们恢复成原来的xml数据格式。如果原始文件中包含了大量的数据,显而易见,把文件转换成结构代码+平文格式数据的格式进行存储和传输,将能大大地压缩数据的存储空间和传输空间。附图说明图1是本专利技术实施例结构代码生成流程示意图。图2是本专利技术实施例压缩代码生成流程示意图。图3是本专利技术实施例数据压缩流程示意图。图4是本专利技术实施例数据解压缩流程示意图。图5本专利技术实施例扩充功能流程示意图。具体实施例方式下面通过具体的实施例并结合附图对本专利技术作进一步详细的描述。仍以前文中对铁的比重是的描述为例,如果把载荷(数据)部分转换成用约定分隔符分割数据的平文格式Script 4OBJECT,water+1OBJECT,iron+7.86OBJECT,lead+11.34... OBJECT,copper+8.96这种数据格式的有效载荷比例增大了许多,数据得到压缩。如果把Script 4中的各项数据与大纲文件Script 2中的相应节点用某种方法联系起来,我们就可以获得Script 4内各项数据的有关特征,并把它们恢复成原来的xml数据格式。如果Script 1包含了大量的数据,显而易见,把它转换成Script 2+Script 4的格式进行存储和传输,将能大大地压缩数据的存储空间和传输空间。本专利技术就提供了这样一种方法。本方法在数据压缩时,把xml格式的数据代码中的“数据结构特征”归纳成为xml格式的结构代码。利用结构代码,计算机系统可以运行通用的压缩代码生成程序,动态地生成压缩程序。计算机系统运行数据压缩程序,把xml数据转换为平文格式的数据代码。数据解压缩时,计算机系统运行解压缩程序,解析数据代码,并参照结构代码对数据特征的描述,恢复源数据的信息。通过应用这种技术在保存数据完整信息的同时减小数据存储和传输的大小。其中,压缩程序的生成也可采用其他方式,如通过编程生成通用的压缩程序本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:黄放
申请(专利权)人:黄放
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1