[发明专利]一种可扩展标记语言XML文档压缩、解压方法及装置在审
申请号: | 202011361707.7 | 申请日: | 2020-11-27 |
公开(公告)号: | CN112487249A | 公开(公告)日: | 2021-03-12 |
发明(设计)人: | 郑朗;林彬 | 申请(专利权)人: | 郑朗;林彬 |
主分类号: | G06F16/80 | 分类号: | G06F16/80 |
代理公司: | 成都虹盛汇泉专利代理有限公司 51268 | 代理人: | 周永宏 |
地址: | 610000 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 扩展 标记 语言 xml 文档 压缩 解压 方法 装置 | ||
一种可扩展标记语言XML文档压缩、解压方法及装置,压缩包括以下步骤:A、读入未压缩的XML文档数据:B、设置压缩前置条件:设置范围元素匹配条件和目标元素匹配条件;C、匹配范围元素:遍历XML文档,找到所有满足范围元素匹配条件的元素,即为范围元素;然后将范围元素下所有元素的类属性缓存器初始化为空;D、匹配目标元素,并进行目标元素压缩操作;E、更新元素类属性缓存器。本发明采用解析的前后位置关系利用属性变更状态,只保留与前一个同类型元素不相同属性的方法实现XML文档压缩。XML文档中同类型元素越多,元素属性越多,压缩率越高。实际应用在文档内容领域可以达到30%~75%压缩率,可大大节约文档空间。
技术领域
本发明属于文档处理技术领域,特别涉及一种可扩展标记语言XML文档压缩、解压方法及压缩和解压装置。
背景技术
XML,可扩展标记语言(Extensible Markup Language,缩写:XML),是国际流行的通用数据描述语言格式。
基于XML的新一代电子病历数据格式具有全结构化和易读易解析的特点,同时又带来了数据结构嵌套复杂,需要保存的内容格式、样式、配置等信息过多,导致XML文件过大的问题。不利于病历数据的传输、共享、解析、数据提取。
因此,有必要发明一种不破坏全结构化病历文档结构、不影响病历文档显示效果的XML文档的压缩、解压方法和装置。
发明内容
本发明的目的在于克服现有技术的不足,提供一种本发明采用解析的前后位置关系利用属性变更状态,只保留与前一个同类型元素不相同属性的方法实现XML文档压缩。XML文档中同类型元素越多,元素属性越多,压缩率越高。实际应用在文档内容领域可以达到30%~75%压缩率,可大大节约文档空间的可扩展标记语言XML文档压缩和解压方法,并提供对应的压缩及解压装置。
本发明的目的是通过以下技术方案来实现的:
一种可扩展标记语言XML文档压缩方法,包括以下步骤:
A、读入未压缩的XML文档数据:
B、设置压缩前置条件:包括范围元素匹配条件和目标元素匹配条件;
C、匹配范围元素:遍历XML文档,找到所有满足范围元素匹配条件的元素,即为范围元素;然后将范围元素下所有元素的类属性缓存器初始化为空;
D、匹配目标元素,并进行目标元素压缩操作;
E、更新元素类属性缓存器。
进一步地,所述范围元素定义为压缩规则作用范围的元素;
范围元素匹配条件:根据元素名、属性名或二者的组合条件作为匹配范围元素的条件;
目标元素匹配条件:根据元素名、属性名或二者的组合条件作为匹配目标元素的条件。
进一步地,所述步骤D具体实现方法为:
D1、遍历满足范围元素匹配条件的元素,取得满足目标元素匹配条件的子元素,将其作为需要压缩的目标元素;
D2、将目标元素按照如下规则进行压缩:
(1)当目标元素没有对应的元素类属性缓存器时,则将当前目标元素所有属性保存到XML压缩文档中;
(2)当目标元素的具体属性值不同于其元素类属性缓存器对应属性的属性值时,将目标元素属性保存到XML压缩文档中,否则目标元素的此属性不需要保存到XML压缩文档中;
(3)将存在于目标元素但不存在于其元素类属性缓存器中的属性,保存到XML压缩文档中。
进一步地,所述步骤E中,压缩状态元素类属性缓存器更新算法规则如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑朗;林彬,未经郑朗;林彬许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011361707.7/2.html,转载请声明来源钻瓜专利网。