CN102379087B - 压缩方法、解压缩方法、压缩单元、解压缩单元以及压缩文档 - Google Patents
压缩方法、解压缩方法、压缩单元、解压缩单元以及压缩文档 Download PDFInfo
- Publication number
- CN102379087B CN102379087B CN201080015288.XA CN201080015288A CN102379087B CN 102379087 B CN102379087 B CN 102379087B CN 201080015288 A CN201080015288 A CN 201080015288A CN 102379087 B CN102379087 B CN 102379087B
- Authority
- CN
- China
- Prior art keywords
- type
- decompression
- regular expressions
- fundamental type
- predetermined
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明涉及一种压缩方法,其将根据第一基本类型包括一个或多个字符的至少一个信息单元划分成第二基本类型的片段并且根据预给定的压缩规则对于第二基本类型压缩所述片段。所述处理方式实现更高的压缩率。信息元素例如是XML语言的部分。除该压缩方法以外,相应的压缩单元、解压缩方法和解压缩单元也是本发明的一部分。本发明可用于终端设备初始化环境中,例如在系统工程和IT消费领域中。
Description
技术领域
本发明涉及结构化文档的压缩和解压缩,尤其是压缩方法、解压缩方法、压缩单元和解压缩单元以及例如二进制形式的压缩文档。
背景技术
多年以来,借助结构化文档来表示信息。用于表示结构化文档的普遍公知的标准是W3C(W3C-World Wide Web Consortium:万维网联盟)的XML(XML-eXtensible
Markup Language:可扩展标记语言)。借此在很多应用和设备中准备信息。例如,可以借助结构化文档提供用于初始化终端设备(例如,移动电话或者设备组件)的配置数据。另一示例是结构化文档用于描述多媒体内容,如其例如用于标准SVG(SVG- Scalable Vector Graphic:可缩放矢量图)。
结构化文档具有以下缺点:存储或传输所需的数据体积大。因此开发了一些压缩方法,这些压缩方法可以减小结构化文档的数据体积。例如提到GZIP(GZIP-GNU ZIP)、标准BIM(BIM-Binary MPEG format for XML:用于XML的二进制MPEG格式)或者W3C的EXI(Efficient XML Interchange:高效XML交换),它们产生二进制形式的压缩文档。尽管如此,仍需要进一步减小数据体积,因为尤其是较小的并且很廉价的终端设备(例如通过网格网络进行通信的传感器)仅仅具有较小的存储器。
发明内容
因此,本发明的任务在于说明一种压缩方法和一种压缩单元,它们进一步减小在压缩结构化文档时的数据体积。此外,本发明的任务还在于说明一种相应的解压缩方法和解压缩单元。
所述任务通过独立权利要求解决。在从属权利要求中可以获知本发明的扩展方案。
本发明涉及一种用于压缩结构化文档的压缩方法,其中,所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型具有通过至少一个第一基本类型表述的数据域,并且所述数据域的结构通过正则表达确定,预给定的压缩方法可以将所述结构化文档压缩成压缩文档,其中实施以下步骤:
- 如此求得所述正则表达的至少一个部分,使得所述相应部分可通过所述第二基本类型表示;
- 求得所述至少一个信息单元的相应片段,该片段基于所述正则表达的所述相应部分;
- 借助于所述预给定的压缩方法如此压缩所述相应片段,使得通过所述预给定的压缩方法基于预给定的压缩规则对于所述第二基本类型压缩所述相应片段。
发明人认识到,借助于第一基本类型字符串表示的数据的压缩导致较差的压缩率。这基于以下知识:第一基本类型由于其可以进行表示的多个字符而仅仅实现较差的压缩率。通过基于第一基本类型的类型实例化产生的信息元素在通过第一基本类型定义的数据域中具有字符串。压缩率的改善可以通过以下方式实现:将字符串划分成至少一个片段,其可以借助与第一基本类型不同的第二基本类型进行压缩。在当前方法中,数据域的结构基于例如BNF的正则表达,其中,通过正则表达的分析所述正则表达的至少一个部分可对应于一个或多个非第一基本类型。在此有利的是,正则表达详细地说明数据域或至少一个片段的结构和可能内容,从而所述至少一个部分可对应于一个或多个非第一基本类型,而不存在片段的可能内容不能通过所选择的第二基本类型表示的危险。
所述压缩方法的另一优点在于,为了解压缩结构化文档,可使用预给定的解压缩方法,因为片段的压缩仅仅借助于预给定的压缩方法基于结构规则的预给定的基本类型实施。应当注意,第一基本类型和第二基本类型是不同的基本类型。此外,预给定的压缩方法可以考虑实施压缩时的结构规则。
在压缩方法的一个扩展方案中,确定正则片段的两个部分和至少一个信息内容的两个片段,其中,所述两个片段基于正则表达的相应部分,所述两个片段组合成一个新的片段,并且借助于预给定的压缩方法基于预给定的压缩规则关于第二基本类型压缩所述新的片段。由此,通过两个或多个片段组合成一个新的片段实现压缩率的进一步提高。
此外,对于所述部分的一个,基于所述基本类型形成一个新的类型,取代至少一个信息单元形成第一数量的新的信息单元,其中,所述第一数量对应于部分的第二数量,并且基于与相应部分相对应的新的类型实例化并且以与所述部分相对应的片段赋值所述新的信息单元。借助所述扩展方案,为正则表达的部分的每一个基于结构规则的预给定的基本类型分配一个自己的类型。由此可以实现内容对应,例如在日期——日、月或年的情况下那样。因此,可以进一步提高压缩率,因为基于内容对应相应部分和(因此)相应片段的值范围是已知的。例如通过关于日期的日的片段的内容对应,清楚的是,所述值范围仅仅包括自然数1至31。基于所述知识,在分配基本类型时,选择既包括整个值范围并且对于所覆盖的值范围也实现最高压缩率的那个基本类型。
此外,可以为压缩片段中的至少一个(在其压缩前)添加标识,所述标识辨识待压缩的片段。通过所述扩展方案可以实现,通过向压缩文档中添加一个待压缩片段的标识部分地简化了压缩文档的内容辨识。这提高了压缩率,因为通过划分成多个片段提高了压缩率并且通过添加标识还改善了相应片段的可读性。
附加地,可以基于正则片段的基于相应片段的部分来形成标识。有利地,标识的形成可通过分析正则表达的部分来实施。例如,正则表达具有所谓的“Tag”,如日、月或年,其可以直接作为标识。所述处理方式是建立标识时的简化方案。
优选地,通过标准XML定义结构规则,其中
- 所述至少一个信息单元是XML元素或XML属性,
- 所述结构化文档是XML文档,
- 所述基本类型由XML类型(内置基本类型和内置派生类型)的集合中形成。
当前方法也可使用基于XML的结构化文档。恰好XML标准广泛使用,从而尤其在使用本发明时具有较大的经济效益。
此外,用于压缩结构化文档的压缩单元也是本发明的一部分,其中,所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型具有通过至少一个第一基本类型表述的数据域,并且所述数据域的结构通过正则表达确定,预给定的压缩方法可以将所述结构化文档压缩成压缩文档,其中所述压缩单元具有以下装置:
- 第一装置,用于如此求得所述正则表达的至少一个部分,使得所述相应部分可通过所述第二基本类型表示;
- 第二装置,用于求得所述至少一个信息单元的一个相应片段,该片段基于所述正则表达的所述相应部分;
- 第三装置,用于求得借助于所述预给定的压缩方法如此压缩所述相应片段,使得通过所述预给定的压缩方法基于预给定的压缩规则对于所述第二基本类型压缩所述相应片段。
所述压缩单元具有与压缩方法相同的优点。
所述压缩单元还具有第四装置,所述第四装置如此设计,使得其实施压缩方法的以上所述的方法步骤。所述压缩单元具有与压缩方法的扩展方法相同的优点。
此外,用于解压缩压缩文档的解压缩方法也是本发明的一部分,其中,结构化文档已经根据以上所述的压缩方法的方法步骤压缩成压缩文档,所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型包括一个数据域,所述数据域通过至少一个第一基本类型表述,并且所述数据域的结构通过正则表达确定,预给定的解压缩方法可以解压缩所述压缩文档,其中实施以下步骤:
- 如此求得所述正则表达的至少一个部分,使得所述相应部分可通过所述第二基本类型表示;
- 通过预给定的解压缩方法至少部分地将所述压缩文档解压缩成至少一个片段,其中,基于预给定的解压缩规则对于第二基本类型获得相应片段;
- 使相应片段对应于正则表达的相应部分。
所述解压缩方法在解压缩压缩文档时利用压缩方法的优点。
优选地,在解压缩方法中,将相应片段分配给至少一个信息单元,其中,所述相应片段基于正则表达的相应部分。由此可以产生重建的结构化文档。
此外,可以通过解压缩方法确定正则表达的两个部分,基于所述两个部分将通过解压缩获得的新的片段如此划分成两个片段,使得片段的每一个分别对应于部分的每一个。因此可以实现更高的压缩率。
在解压缩方法的一个扩展方案中,对于部分的每一个基于基本类型形成一个新的类型,取代至少一个信息单元基于解压缩形成第一数量的新的信息单元,其中,所述第一数量对应于部分的第二数量,并且基于与相应部分相对应的新的类型实例化并且以与所述部分相对应的、通过解压缩重建的片段赋值所述新的信息单元。在此,优点类似于相应的解压缩方法的描述。
在解压缩范畴内,可以通过以下方式改善片段的可读性,给片段的至少一个分配一个标识,所述标识辨识所述至少一个片段。这尤其可以通过以下方式实现,基于正则表达的基于相应片段的部分来形成所述标识。
优选地,在解压缩方法中,通过标准XML定义结构规则,其中
- 所述至少一个信息单元是XML元素或XML属性,
- 所述结构化文档是XML文档,
- 所述基本类型由XML类型(内置基本类型和内置派生类型)的集合形成。
因此,解压缩方法也可以用于最通用的标准之一XML中。
此外,可以如此扩展解压缩方法,使得在解压缩步骤前根据正则表达的至少一个部分判断基于相应的预给定解压缩方法对于第一基本类型还是对于第二基本类型获得与至少一个部分相对应的片段。所述变型方案允许解压缩方法的简单实现,因为无需改变结构规则。
在解压缩压缩文档时,所述解压缩方法利用压缩方法的优点。在此应当注意,根据实现,通过解压缩方法获得的片段与相应的信息单元的对应是一种扩展方案,因为可以通过进一步处理的单元直接负责所述片段,例如用于在屏幕上显示信息。
所述解压缩方法的另一优点在于,为了解压缩压缩文档,可使用预给定的解压缩方法,因为片段的压缩仅仅基于结构规则的预给定的基本类型借助于预给定的压缩方法实施。此外,可以基于预给定的结构规则和/或正则表达的部分实施预给定的解压缩方法,其中,由此可以考虑预给定的解压缩方法和结构规则和/或正则表达的具体情况匹配。
本发明涉及用于解压缩压缩文档的解压缩单元,其中,结构化文档借助于压缩单元压缩成了压缩文档,所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型包括通过至少一个第一基本类型表述的数据域,并且所述数据域的结构通过正则表达确定,通过预给定的解压缩方法可解压缩所述压缩文档,其中,解压缩单元具有以下装置:
- 第一装置,用于如此求得所述正则表达的至少一个部分,使得所述相应部分可通过所述第二基本类型表示;
- 第五装置,用于通过预给定的解压缩方法至少部分地将所述压缩文档解压缩成至少一个片段,其中,基于预给定的解压缩规则对于第二基本类型获得相应片段,以及用于使相应片段对应于正则表达的相应部分。
所述解压缩单元具有与解压缩方法相同的优点。
所述解压缩单元还具有第六装置,所述第六装置如此设计,使得其可实施至少一个根据解压缩方法的方法步骤。所述解压缩单元具有与解压缩方法的扩展方法相同的优点。
最后,压缩文档也形成本发明的一部分,其中,该压缩文档可根据压缩方法的方法步骤中的一个生成。例如二进制文档或数据流形式的压缩文档相对于已知的压缩方法具有更高的压缩率。压缩文档的另一优点在于,为了解压缩压缩文档可使用预给定的解压缩方法,因为片段的压缩仅仅基于结构规则的预给定的基本类型借助于预给定的压缩方法实施。因此实现本发明的成本有利的实现。
附图说明
根据附图详细阐述本发明及其扩展方案。具体地:
图1A示出基于SVG语言的具有字符串的XML元素
图1B示出根据图1A基于SVG语言的具有字符串的XML元素的可视化表示
图2示出EXI压缩方法的压缩率与本发明的压缩方法的压缩率的比较
图3示出用于实施压缩方法的压缩单元的结构
图4示出包括压缩单元、用于实施解压缩方法的解压缩单元以及用于存放解压缩文档的存储单元的系统的结构。
具有相同功能和作用的元素配备有相同的附图标记。
具体实施方式
借助第一实施例详细地阐述本发明。可以借助于正则表达RA[1]如下定义一个日期:
[0-9]{2, 2}[.][0-9]{2, 2}[.][0-9]{4, 4}
表1:日期定义为正则表达。
因此,有以上正则表达生成的日期字符串例如是“23.03.2009”。
结构化文档DOC[2]具有一个或多个信息单元ELE、ATT。由W3C标准化的XML[3]是结构化文档定义的最有名的代表。在XML中,信息单元通过元素和属性形成。结构化文档的结构由结构规则SYN预给定,其除语法外还确定类型TYP。在XML中,结构规则例如称作方案或者DTD(DTD-Document Type Definition:文档类型定义)。信息单元由类型的实例化生成。结构规则为不同功能确定多种基本类型。因此第一基本类型(BTSTR)规定用于接收或者表示一个或多个字符。在XML中,这样的基本类型称作内置基本类型和内置派生类型,其中,第一基本类型在XML中定义为“字符串”。此外,第二基本类型BTINT规定用于接收非负的整数,在XML中这例如是基本类型“nonNegativeInteger”。
这样,日期在XML中作为类型TYP=typeDatum以字符串的形式表达为:
<simpleType name="typeDatum" base="string"/>
表2:在XML中借助于第一基本类型字符串定义类型typeDatum。
此外,类型日期的文档定义可以生成为
<element name="Datum" type
="typeDatum"/>
表3:XML中日期的文档定义。
在根据XML的结构化文档DOC中,日期编码为
…
<Datum>23.03.2009</Datum>
…
表4:XML中具有日期的结构化文档的片段。
通过根据表1的日期描述,确定数据域DF的结构,即编码为根据表2的字符串的值的结构。在根据表4的结构化文档中示出了通过正则表达定义的字符串的日期的具体示例。结构化文档的预给定的压缩方法CM,例如MPEG组织(MPEG-Motion
Picture Expert Group:运动图像专家组)的标准BIM(BIM-Binary MPEG format for XML:用于XML的二进制MPEG格式)或者W3C的的EXI(Efficient XML Interchange:高效XML交换)产生压缩文档BDOC。
在第一步骤中,如此求得正则表达的至少一个第一部分ETA,即所述第一部分可由第二基本类型BTINT表示。在正则表达中,首先求得分别具有一个0和9之间的数字的两个位置([0-9]{2, 2})。这得出0和99之间的数字。如果已知所述数字代表日期的日,则可以将所述数字限制到1和31之间的值域上。第二基本类型“nonNegativeInteger”能够表示0、1等的非负数。因此,第一部分是ETA=[0-9]{2, 2}。在正则表达的另一分析中,清楚的是,正则表达的另两部分可表示为数字,更确切地说,[0-9]{2,
2}和[0-9]{4, 4}。此外显然的是,在正则表达的作为数字的部分之间分别出现一个字符“冒号”。
在应用类型typeDatum具有以上所述结构的知识时,预给定的压缩方法CM基于预给定的压缩规则CMBTINT对于第二基本类型BTINT至少部分地将日期压缩成多个片段而不是字符串。为此,由结构化文档根据以上求得的部分分析在那里存在的信息单元,即XML元素日期,由此找到与这些部分相对应的片段EAS、EAT、EAU。第一部分EAS=[0-9]{2, 2}相应于第一片段EAS=23。下表示出相应的部分和片段以及每个片段所基于的基本类型:
表5:部分与片段和与基本类型的对应关系。
在第一实施例中,看到用于日期的字符串,其根据通过正则表达的定义不解释为内容。
在第二实施例中,正则表达还具有附加信息,在压缩时考虑这些附加信息。表6
{Tag}[0-9]{2,
2}[.]{Monat}[0-9]{2, 2}[.]{Jahr}[0-9]{4, 4}
表6:日期定义为扩展的正则表达
在附加的{}括号内示出正则表达的各个域的解释。因此,可以作为中间步骤在压缩前在求取正则表达的部分时对于每个部分定义一个自己的类型,例如:
<simpleType name="typeTag"
base="nonNegativeInteger"/>
<simpleType name="typeMonat"
base="nonNegativeInteger"/>
<simpleType name="typeJahr"
base="nonNegativeInteger"/>
表7:根据扩展正则表达的用于日期的新类型。
此外,可以通过新类型生成文档定义
<element name="Tag" type
="typeTag"/>
<element name="Monat" type
="typeMonat"/>
<element name="Jahr" type
="typeJahr"/>
表8:根据扩展正则表达的XML中用于日期的文档定义。
在所述文档定义中,给予待实例化的信息单元一个相应的名称Tag、Monat、Jahr作为标识。这些相应的标识可从根据表6的扩展正则表达得出。在英语中,标识的专业概念是“Tag”。
下表示出相对应的部分ETA、ETB、ETC和片段EAS、EAT、EAU以及每个片段所基于的基本类型和新类型:
表9:部分与片段和基本类型的对应关系。
所述扩展具有以下优点:每个片段和正则表达的每个部分可分配一个内容意义。这样可以取代XML类型“nonNegativeInteger”和XML类型“PositiveInteger”分配新的类型,因为由于内容意义的分配已知的是用于日、月、年的值是大于零的。XML类型“PositiveInteger”可以相对于XML类型“nonNegativeInteger”实施更高的压缩率。
在一个扩展方案中,如下在压缩前相应于所形成的新类型的数量将结构化文档的信息单元<Datum>23.03.2009<Datum>改成三个信息单元,参见表8:
表10:改变的结构化文档。
在本发明的一个扩展方案中,可以省略两个包含在正则表达RA中的点的压缩,因为通过元素名称日、月和年的顺序结合分别对应的正则表达已知两个点的位置。
借助SVG(SVG- Scalable
Vector Graphic:可缩放矢量图)[4]、W3C组织的标准来详细阐述另一实施例。SVG描述二维矢量图。规范借助于XML定义SVG的结构和功能。在此,定义了14个重要的功能域——例如基本形状、文本和颜色。一个非常重要的功能是路径(path)。在路径内定义需描述的主体的直线或曲线,所述主体也可以是实心的。路径由XML属性d产生,其借助标记M由坐标对(x, y)出发初始化主体形状,借助于标记L定义形状的之后的坐标对(x, y)并且最后借助于标记Z结束路径。图1a示出这样的SVG路径的文字描述,图1b示出通过文字路径说明的主体的图形表示。
以下示出,为了压缩结构化文档在已知方法和根据本发明的方法中可以实现哪些压缩率。使用以下两个压缩算法:
名称
解释
XML
对应于未压缩形式的结构化文档(参考值);
EXI
由EXI提供的压缩方法;
EXI+COD 所述压缩方法作为预给定的压缩方法使用EXI压缩方法和在本发明中描述的处理方式。
借助于以上所述的两种压缩方法压缩五个XML结构化文档F1…F5。图2示出关于未压缩的XML结构化文档=100%的压缩率。对于文档F1,得出原始大小是100%,借助于EXI压缩方法实施压缩后的大小是约87%而借助于压缩方法EXI+COD的经压缩的压缩文档的大小是约57%。因此,通过使用在本发明中说明的方法在实施结构化文档的压缩时实现显著的数据减少。
此外,图2在相应的阴影柱中记录了路径d在相应未压缩或压缩的文档的数据大小中的份额(百分比)。在原始未压缩的结构化文档F1中,路径具有82%的数据份额,在根据EXI压缩方法的压缩文档中是83%而在使用压缩方法EXI+COD时是50%。因此,显然通过使用根据本发明的方法可在路径信息方面实现显著的数据减少。所述观察可类似地适于结构文档F2、F4。在文档F3、F5中,在EXI压缩方法和压缩方法EXI+COD后的压缩文档的大小没有区别,因为在当前实施例中本发明的方法仅仅应用于路径。但以上提到的两个结构文档不包括任何路径说明,从而在此通过根据本发明的方法在应用于路径说明时没有实现任何改善。然而,当本发明的方法应用于(在所述示例中根据SVG标准)结构文档的其他结构元素时,仍然可以实现改善。
在压缩方法的一个扩展方案中,辨识正则片段RA的两个部分ETA、ETB。在此,ETA=[0-9]{2, 2}并且ETB=[0-9]{2, 2}。此外,确定信息单元ELE、ATT的两个片段EAS、EAT,其中,所述两个片段基于相应的部分ETA和ETB,即EAS=23并且EAT=03。两个片段组成新的片段EAN,即EAN=2303。随后,取代至今的片段EAS、EAT,基于第二基本类型BTINT的预给定压缩规则CMBTINT压缩新的片段EAN。在所述扩展方案中,需要考虑,通过片段EAS、EAT组合成新的片段EAN形成同样借助第二基本类型表示并且可借助相应的预给定压缩规则CMBTINT进行压缩的片段。这可以通过分析两个部分ETA、ETB和用于组合两个片段的规则进行,因为用于组合的规则可用于两个部分。由此得出一个新的部分[0-9]{2,
2}[0-9]{2, 2}。在此,可以通过新的部分描述0至9999的数字。因此,在所述情形中,使用第二基本类型表示新的部分,并且随后使用预给定的压缩规则。
图3示出用于压缩结构化文档DOC的压缩单元CE。压缩单元具有预给定的结构规则SYN,其包括用于表示至少一个字符CH的第一基本类型BTSTR和第二基本类型BTINT。此外,结构规则定义类型TYP,其具有通过至少一个第一数据类型表述的数据域,并且数据域的结构由正则表达RA确定。类型TYP与第一基本类型BTSTR的关系和其与正则表达RA的关系在图3中分别通过箭头表示。
此外,在图3中可以看到具有至少一个从类型实例化的信息单元ELE、ATT的结构化文档。通过指向结构化文档DOC的箭头象征性地表示实例化。
在第一步骤中,第一装置M1如此求得正则表达RA的至少一个部分ETA,使得所述相应部分ETA可通过第二基本类型BTINT表示。为此,第一装置M1至少部分地读取正则表达RA并且在实施所述步骤后至少向另一装置M2传输部分ETA。
第二装置M2在第二步骤中如此构造,使得其求得至少一个信息单元ELE、ATT的相应片段EAS,该片段基于正则表达RA的相应部分ETA。为此,通过第二装置至少部分地读取、处理所述至少一个部分ETA和信息单元并且在其输出端上向预给定的压缩方法传输所求得的相应片段EAS。预给定的压缩方法CM如此设计,使得其可以压缩基于预给定的结构规则SYN形成的结构化文档。为此,预给定的压缩方法例如对于第二基本类型BTINT具有可预给定的压缩规则CMBTINT。基于所述预给定的压缩规则,压缩所述至少一个信息单元ELE的片段EAS。压缩意味着减少存储相应的片段EAS所需的存储体积。在压缩单元CE的输出端上,作为压缩文档BDOC以压缩形式输出结构化文档DOC。预给定的压缩方法CM例如基于BIM或EXI。借助于预给定的压缩方法CM压缩相应片段通过第三装置M3实施。仍需注意,可借助于第四装置M4实施根据当前实施例的一个或多个另外的方法步骤。
以下借助于图4详细阐述用于将压缩文档BDOC解压缩成结构化文档DOC的解压缩方法以及相应的解压缩单元DE。解压缩单元具有预给定的结构规则SYN,该结构规则包括用于表示至少一个字符CH的第一基本类型BTSTR和第二基本类型BTINT。此外,结构规则定义类型TYP,该类型TYP具有通过至少一个第一数据类型表述的数据域,并且数据域的结构由正则表达RA确定。类型TYP与第一基本类型BTSTR的关系和其与正则表达RA的关系在图3中分别通过箭头表示。第一装置提供正则表达RA的至少一个部分ETA。在解压缩方法的范畴内或者通过第五装置M5,至少部分地读取所述至少一个部分ETA和压缩文档。
第五装置如此设计,使得其可以将压缩文档BDOC的至少一个部分解压缩成所述至少一个片段EAS。为此使用预给定的解压缩方法DM,该压缩方法可以解压缩借助与其相对应的预给定压缩方法CM生成的压缩文档。预给定的解压缩方法DM例如基于标准BIM或EXI。在此需注意,预给定的解压缩方法至少对于第二基本类型BTINT具有所属的预给定解压缩规则DMBTINT,借助于所述解压缩规则DMBTINT可解压缩借助与其相对应的预给定压缩规则CMBTINT压缩的片段EAS。在第五装置M5的输出端上向第六装置M6传输所述至少一个片段EAS。所述第六装置负责以下两个任务:
i) 第六装置M6在重建的结构化文档DOC’中的同一位置上记录通过解压缩获得的片段EAS,该文档通过正则片段的与通过解压缩获得的片段EAS相对应的部分预给定。
ii) 在替代方案或补充方案中,第六装置M6向另一处理单元(未示出)传输片段EAS,其中,在传输时例如一起给出标记,该标记指示所传输的片段EAS是正则表达的哪个部分。可以如同在以上实施例之一中所示的那样求得所述标记。
第五装置还可以在实施解压缩前根据正则表述的至少一个部分判断为了获得与所述至少一个部分相对应的片段对于第一基本类型BTSTR还是第二基本类型BTINT使用相应的预给定的解压缩规则DMBTSTR、DMBTINT。每种基本类型具有其自己的预给定的压缩规则和与之相对应的解压缩规则。因此,可以借助所述扩展方案在不改变结构规则的情况下实施所述方法,因为在存在至少部分地由第一基本类型实例化的信息单元的情况下已知为了获得相应的片段可以基于正则表达通过解压缩求得待使用的基本类型。
在一个替代方案或补充方案中,为此可以基于信息单元例如改变为新的信息单元来至少部分地改变结构规则SYN,其中,所述改变的结构规则可以由压缩单元传输至解压缩单元或者可类似地在压缩单元或解压缩单元中产生改变的结构规则。
在一个扩展方案中,在压缩和解压缩时考虑正则表达的至少两个部分。示例性地示出在考虑三个部分时的处理方式,其中,在实践中考虑至少两个部分。第一装置既在压缩方法方面也在解压缩方法方面或者在压缩单元或解压缩单元的范畴内求得部分ETA、ETB、ETC。如此生成部分ETA、ETB、ETC,使得信息单元的对之相对应的部分EAS、EAT、EAU在一个随后的压缩步骤中可通过组合的形式由第二基本类型压缩。例如,部分ETA、ETB、ETC仅仅描述数字,使得通过与之相对应的片段EAS、EAT、EAU的串联生成一个更长的字符串,该字符串在当前示例中可由第二基本类型压缩。在一个接下来的步骤中,通过第二装置获得与部分ETA、ETB、ETC相对应的片段EAS、EAT、EAU。此外,第二装置将这些片段组合成一个新的片段EAN。在当前示例中,这通过片段EAS、EAT、EAU的依次联接来实施。此后,通过第三装置进行新的片段EAN的压缩。
在解压缩方法或解压缩单元方面,通过第五装置从压缩文档BDOC获得新的片段EAN。第五装置将新的片段EAN传给第六装置M6,该第六装置首先将新的片段划分成与新的片段相对应的片段,即片段EAS、EAT、EAU。这些片段可以根据以上描述传输到重建的结构化文档DOC’中或者传输给处理单元。
在图4中以系统的形式示意性地示出了压缩单元CE和解压缩单元DE。在此,在压缩单元CE的输出端上将压缩文档BDOC传输给存储单元STOR。存储单元例如是用于中间存储压缩文档的服务器。响应解压缩单元DE的请求,可以将压缩文档BDOC传输给解压缩单元,用于进一步处理。替代地,可以实现压缩文档BDOC从压缩单元至解压缩单元的直接传输,参见图4中的虚线。在此,传输通过例如GSM(GSM-Global System for Mobile:全球移动系统)的网络或者通过例如借助于LAN和IP/TCP(LAN-Local Area Network:局域网,IP-Internet
Protocol:网际协议,TCP-Transport Control Protocol:传输控制协议)的互联网实施。
压缩单元和解压缩单元可以通过硬件、软件或者通过硬件和软件的组合实现。例如,通过程序代码提供并且通过微控制器实施各方法步骤。在此,各中间步骤存储在与微控制器耦合的存储器中。所述存储器可以附加地存储用于描述预给定的结构规则SYN的信息、结构化文档和至少部分地存储压缩文档。
压缩单元CE可以是终端设备的一部分、例如用于处理多媒体内容的视频点播服务器的一部分。解压缩单元也可以是终端设备、例如导航系统的一部分。
借助实施例阐述了本发明。应当注意,本发明不限于这些实施例。此外指出,这些实施例的各扩展方案和替代方案可以组合。
文献说明
[1] „Regular expression“,
http://en.wikipedia.org/wiki/Regular expression
[2] „structured Document,
“http://sdvalidator.sourceforge.net/section3.shtml
[3] „Extensible Markup Language (XML)“,
http://www.w3.org/XML
[4] SVG 1.1,
http://www.w3.org/TR/2003/REC-SVG11-20030114/REC-SVG11-20030114.pdf
Claims (18)
1.一种用于压缩结构化文档的压缩方法,其中,
所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型包括通过至少一个第一基本类型表述的数据域,并且所述数据域的结构通过正则表达确定,预给定的压缩方法能够将所述结构化文档压缩成压缩文档,
其特征在于,实施以下步骤:
求得所述正则表达的至少一个部分,使得该至少一个部分能通过所述第二基本类型表示;
求得所述至少一个信息单元的相应片段,所述相应片段基于所述正则表达的相应部分;
借助于所述预给定的压缩方法压缩所述相应片段,使得通过所述预给定的压缩方法基于针对所述第二基本类型预给定的压缩规则压缩所述相应片段。
2.根据权利要求1所述的压缩方法,其中,
确定所述正则表达的两个部分和至少一个信息单元的两个片段,其中,所述两个片段基于所述正则表达的相应部分,
所述两个片段组合成新的片段,
借助于所述预给定的压缩方法基于针对所述第二基本类型预给定的压缩规则压缩所述新的片段。
3.根据权利要求1或2所述的压缩方法,其中,
如果正则表达具有多个部分,则对于所述多个部分的每一个,基于基本类型形成新的类型,
取代所述至少一个信息单元形成第一数量的新的信息单元,其中,所述第一数量对应于部分的第二数量,并且基于与相应部分相对应的新的类型实例化所述新的信息单元并且用与所述部分相对应的片段占用所述新的信息单元。
4.根据权利要求1至2之一所述的压缩方法,其中,
在压缩所述片段的至少一个前给其添加标识,所述标识辨识待压缩的片段。
5.根据权利要求4所述的压缩方法,其中,
基于所述正则表达的基于相应片段的部分来形成所述标识。
6.根据权利要求1至2之一所述的压缩方法,其中,
通过标准XML定义所述结构规则,其中
- 所述至少一个信息单元是XML元素或XML属性,
- 所述结构化文档是XML文档,
- 第一和第二基本类型由XML类型内置基本类型和内置派生类型的集合形成。
7.一种用于压缩结构化文档的压缩单元,其中,
所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型具有通过至少一个第一基本类型表述的数据域,并且所述数据域的结构通过正则表达确定,预给定的压缩方法可以将所述结构化文档压缩成压缩文档,
其特征在于,所述压缩单元具有以下装置:
- 第一装置,用于求得所述正则表达的至少一个部分,使得所述至少一个部分能通过所述第二基本类型表示;
- 第二装置,用于求得所述至少一个信息单元的相应片段,该相应片段基于所述正则表达的相应部分;
- 第三装置,用于借助于所述预给定的压缩方法压缩所述相应片段,使得通过所述预给定的压缩方法基于针对所述第二基本类型预给定的压缩规则压缩所述相应片段。
8.根据权利要求7所述的压缩单元,其还具有第四装置,所述第四装置设计用于实施根据权利要求2至6之一所述的方法步骤。
9.一种用于解压缩压缩文档的解压缩方法,其中,
结构化文档已经根据权利要求1至6之一压缩成所述压缩文档,所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型具有通过至少一个第一基本类型表述的数据域,并且所述数据域的结构通过正则表达确定,预给定的解压缩方法可以解压缩所述压缩文档,
其特征在于,实施以下步骤:
求得所述正则表达的至少一个部分,使得所述至少一个部分能通过所述第二基本类型表示;
通过所述预给定的解压缩方法至少部分地将所述压缩文档解压缩成至少一个片段,其中,基于针对所述第二基本类型预给定的解压缩规则获得所述至少一个片段;
将相应片段分配给所述正则表达的相应部分。
10.根据权利要求9所述的解压缩方法,其中,
将所述相应片段分配给所述至少一个信息单元,其中,所述相应片段基于所述正则表达的相应部分。
11.根据权利要求9或10所述的解压缩方法,其中,
确定所述正则表达的两个部分,
基于所述两个部分将通过解压缩获得的新的片段划分成两个片段,使得所述两个片段的每一个分别分配给所述两个部分的每一个。
12.根据权利要求9至10之一所述的解压缩方法,其中,
如果所述正则表达具有多个部分,则对于所述多个部分的每一个基于基本类型形成新的类型,
取代所述至少一个信息单元基于所述解压缩形成第一数量的新的信息单元,其中,所述第一数量对应于部分的第二数量,并且基于与所述相应部分相对应的新的类型实例化所述新的信息单元并且用与所述部分相对应的、通过解压缩重建的片段占用所述新的信息单元。
13.根据权利要求9至10之一所述的解压缩方法,其中,
给所述片段的至少一个分配标识,所述标识辨识所述至少一个片段。
14.根据权利要求13所述的解压缩方法,其中,
基于所述正则表达的基于所述相应片段的部分来形成所述标识。
15.根据权利要求9至10之一所述的解压缩方法,其中,
通过标准XML定义所述结构规则,其中
- 所述至少一个信息单元是XML元素或XML属性,
- 所述结构化文档是XML文档,
- 第一和第二基本类型由XML类型内置基本类型和内置派生类型的集合形成。
16.根据权利要求9至10之一所述的解压缩方法,其中,
在解压缩步骤前根据所述正则表达的至少一个部分判断,基于相应的针对所述第一基本类型还是针对所述第二基本类型预给定的解压缩规则获得与所述至少一个部分相对应的片段。
17.一种用于解压缩压缩文档的解压缩单元,其中,
结构化文档根据权利要求7或8之一压缩成所述压缩文档,所述结构化文档具有至少一个信息单元,所述至少一个信息单元由预给定的结构规则的类型实例化,所述结构规则包括第一基本类型和第二基本类型,所述第一基本类型用于表示至少一个字符,所述类型具有通过至少一个第一基本类型表述的数据域,并且所述数据域的结构通过正则表达确定,通过预给定的解压缩方法能解压缩所述压缩文档,
其特征在于,所述解压缩单元具有以下装置:
第一装置,用于求得所述正则表达的至少一个部分,使得所述至少一个部分能通过所述第二基本类型表示;
第五装置,用于通过所述预给定的解压缩方法将所述压缩文档解压缩成至少一个片段,其中,能基于针对所述第二基本类型预给定的解压缩规则解压缩相应片段,以及用于将所述相应片段分配给所述正则表达的相应部分。
18.根据权利要求17所述的解压缩单元,其中,
所述压缩单元还具有第六装置,该第六装置被设计为,使得能实施根据权利要求9至16之一所述的方法步骤中的至少一个。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102009015734A DE102009015734A1 (de) | 2009-03-31 | 2009-03-31 | Komprimierungsverfahren, Dekomprimierungsverfahren, Komprimierungseinheit, Dekomprimierungseinheit sowie komprimiertes Dokument |
DE102009015734.4 | 2009-03-31 | ||
PCT/EP2010/053662 WO2010112356A1 (de) | 2009-03-31 | 2010-03-22 | Komprimierungsverfahren, dekomprimierungsverfahren, komprimierungseinheit, dekomprimierungseinheit sowie komprimiertes dokument |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102379087A CN102379087A (zh) | 2012-03-14 |
CN102379087B true CN102379087B (zh) | 2015-07-08 |
Family
ID=42244880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080015288.XA Expired - Fee Related CN102379087B (zh) | 2009-03-31 | 2010-03-22 | 压缩方法、解压缩方法、压缩单元、解压缩单元以及压缩文档 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20120124017A1 (zh) |
EP (1) | EP2415174A1 (zh) |
CN (1) | CN102379087B (zh) |
DE (1) | DE102009015734A1 (zh) |
WO (1) | WO2010112356A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8595197B2 (en) * | 2010-06-29 | 2013-11-26 | International Business Machines Corporation | Message validation in a service-oriented architecture |
US10019418B2 (en) * | 2012-07-20 | 2018-07-10 | Fujitsu Limited | Efficient XML interchange profile stream decoding |
US9128912B2 (en) * | 2012-07-20 | 2015-09-08 | Fujitsu Limited | Efficient XML interchange schema document encoding |
DE102014219090A1 (de) * | 2014-09-22 | 2016-03-24 | Siemens Aktiengesellschaft | Gerät mit Kommunikationsschnittstelle und Verfahren zur Steuerung eines Datenbankzugriffs |
CN107633158B (zh) * | 2016-07-18 | 2020-12-01 | 三星(中国)半导体有限公司 | 对基因序列进行压缩和解压缩的方法和设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6635088B1 (en) * | 1998-11-20 | 2003-10-21 | International Business Machines Corporation | Structured document and document type definition compression |
CN1492322A (zh) * | 2003-08-20 | 2004-04-28 | 放 黄 | xml数据压缩和解压方法 |
CN101364235A (zh) * | 2008-09-27 | 2009-02-11 | 复旦大学 | 一种基于文件差异的xml文档压缩方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPR063400A0 (en) * | 2000-10-06 | 2000-11-02 | Canon Kabushiki Kaisha | Xml encoding scheme |
US7165239B2 (en) * | 2001-07-10 | 2007-01-16 | Microsoft Corporation | Application program interface for network software platform |
-
2009
- 2009-03-31 DE DE102009015734A patent/DE102009015734A1/de not_active Withdrawn
-
2010
- 2010-03-22 WO PCT/EP2010/053662 patent/WO2010112356A1/de active Application Filing
- 2010-03-22 US US13/262,590 patent/US20120124017A1/en not_active Abandoned
- 2010-03-22 CN CN201080015288.XA patent/CN102379087B/zh not_active Expired - Fee Related
- 2010-03-22 EP EP10712918A patent/EP2415174A1/de not_active Ceased
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6635088B1 (en) * | 1998-11-20 | 2003-10-21 | International Business Machines Corporation | Structured document and document type definition compression |
CN1492322A (zh) * | 2003-08-20 | 2004-04-28 | 放 黄 | xml数据压缩和解压方法 |
CN101364235A (zh) * | 2008-09-27 | 2009-02-11 | 复旦大学 | 一种基于文件差异的xml文档压缩方法 |
Non-Patent Citations (3)
Title |
---|
"Comparative Analysis of Six XML Schema Languages";Dongwon Lee ect.;《ACM》;20000930;第78页左侧分栏第18-20行,第82页左侧分栏第5-25行 * |
"Evolutionary Computation And Genetic Algorithms For Energy Management And Conservation";Fabio Garzia ect.;《Telecommunications Energy Conference,2002,INTELEC,24th Annual International》;20020929;第390页左侧分栏第2段,右侧分栏第1-2段 * |
"XMill: an efficient compressor for XML data";Hartmut Liefke;《ACM》;20000601;第153页右侧分栏第30-40行 * |
Also Published As
Publication number | Publication date |
---|---|
WO2010112356A1 (de) | 2010-10-07 |
DE102009015734A1 (de) | 2010-10-07 |
EP2415174A1 (de) | 2012-02-08 |
CN102379087A (zh) | 2012-03-14 |
US20120124017A1 (en) | 2012-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102379087B (zh) | 压缩方法、解压缩方法、压缩单元、解压缩单元以及压缩文档 | |
TW501350B (en) | Data compression apparatus, database system, data communication system, data compression method, and program transmission apparatus | |
US10277729B2 (en) | Apparatus and method for transmitting and receiving handwriting animation message | |
JP2001312741A (ja) | 三次元シーンのノード処理方法及びその装置 | |
CN101223699A (zh) | 压缩与解压缩结构化文档的方法和装置 | |
KR101164719B1 (ko) | 효율적인 저장 및 전송을 위한 지리정보시스템의 벡터 맵 데이터 압축 방법 | |
CN103828339A (zh) | 用于数字图像检索的拼接过程 | |
CN101690203B (zh) | 使用LASeR内容合成场景的方法和设备 | |
CN110110152B (zh) | 思维导图的处理方法、装置、计算机设备和存储介质 | |
US8565317B2 (en) | User interface system, scene description generating device and method, scene description converting device and method, recording medium, and sending medium | |
CN103729457A (zh) | 基于互联网的数字化图书辅助阅读系统及其方法 | |
KR100893829B1 (ko) | 포맷 개작을 이용한 오브젝트 전송 방법 | |
US7711834B2 (en) | Network access to partial document images | |
CN1251135C (zh) | 自描述数据标签 | |
CN102420855B (zh) | Led终端显示播放方法、系统及服务器 | |
CN102177484A (zh) | 提供基于结构化富媒体数据的用户界面的装置和方法 | |
EP1341328A1 (en) | Data broadcast system, for broadcasting multimedia data; receiving terminal device for receiving said multimedia data | |
JP4392190B2 (ja) | データコンテンツ送信装置およびデータコンテンツ送信プログラム | |
CN101715642A (zh) | 广播补充元素的方法、相应的服务器和终端 | |
CN103200251A (zh) | 图片传输方法、系统和装置 | |
KR101661646B1 (ko) | 이미지 코드를 이용한 웹페이지 서비스 시스템 및 방법 | |
CN100414628C (zh) | 数字图像水印处理器及方法、数字图像编码设备及方法 | |
CN110226330A (zh) | 具有内容标识符的恢复数据 | |
JP2007080223A (ja) | 符号変換装置、符号変換方法、プログラム及び記録媒体 | |
TW501068B (en) | Method for increasing graphics processing speed |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150708 Termination date: 20170322 |
|
CF01 | Termination of patent right due to non-payment of annual fee |