[发明专利]一种利用XML内存树实现多种文件兼容的方法有效

专利信息
申请号: 200710177203.8 申请日: 2007-11-12
公开(公告)号: CN101436185A 公开(公告)日: 2009-05-20
发明(设计)人: 余忠华;魏超鹏;阎国龙 申请(专利权)人: 北大方正集团有限公司;北京北大方正电子有限公司
主分类号: G06F17/30 分类号: G06F17/30;G06F9/44
代理公司: 北京天悦专利代理事务所 代理人: 田 明;王 瑛
地址: 100871北京*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 利用 xml 内存 实现 多种 文件 兼容 方法
【说明书】:

技术领域

发明属于计算机印刷排版技术领域,具体涉及一种利用XML内存树 实现多种文件兼容的方法。

背景技术

随着计算机软件的发展,许多的软件都不可避免的进行不断的升级, 有些是一些对文件结构影响不大的变更,有些却是根本的变化。由于软件 升级过程中需要兼容早期版本制作的文件。所谓文件兼容,是指使用当前 程序能够打开第三方程序或者该程序早期版本制作的文件,以保障用户对 已有资源的可重用性。

目前的文件兼容的方法主要是:基于二进制流进行文件兼容的,通过 对二进制格式进行解析直接生成新格式的文档。如果需要对多种文件进行 兼容则需要多个解析模块,并且包含类似的转换代码。

发明内容

针对现有技术中存在的缺陷,本发明的目的是提供一种可以方便地对 多种文档结构进行兼容,同时也能够实现低版本程序对高版本程序制作的 文件的进行兼容的方法。

为达到以上目的,本发明采用的技术方案是:一种利用XML内存树实 现多种文件兼容的方法,包括如下步骤:

(1)针对当前程序中所有需要保存的数据内容定义一个完整Schema, 首先需要分析当前程序中所有需要存储到文档中的数据,按照程序中数据 的层次结构定义具有相同层次结构的Schema,以DocRoot节点作为文档的 根节点,对于程序中复杂的数据定义为Schema中的一个节点,对于程序中 简单的数据定义为Schema中的节点的属性,另外还需要结合数据的语义来 最终确定程序中的数据是作为Schema中的节点还是属性;

(2)按照步骤(1)中得到Schema定义一系列的数据结构,即对于Schema 中的每一个节点定义一个数据结构,对于所有的属性都定义到相应数据结 构中的成员变量;

(3)将需要兼容的文件转换成步骤(2)中的数据结构,形成树型数据 结构即XML内存树结构;

(4)将步骤(3)中生成的XML内存树结构导入到当前程序中,从而实 现文件的兼容。

进一步,步骤(3)中,如果要兼容Office文件,则利用微软提供的API 函数把Office文档中的各个部分转换生成步骤(2)中的各个数据结构, 同时将各个对象挂接到各自所属的父节点之下,形成一棵XML内存树结构。

进一步,步骤(3)中,如果要兼容早期版本的历史文件,则先把这种历 史文件按照自己的数据格式直接输出一个XML文件,然后通过DOM和XSLT 技术把这个XML文件转换成符合步骤(1)中要求的标准XML文件,最后再 通过步骤(2)中各个数据结构的解析器解析代码,生成对应的XML内存树 结构。

进一步,步骤(3)中,如果要实现低版本程序兼容高版本程序制作的 XML文件,则直接读入该XML文件,然后通过步骤(2)中各个数据结构的 解析器解析代码,生成对应的XML内存树结构。

进一步,步骤(4)中,将XML内存树结构导入到当前程序中的方法包括 以下步骤:

首先,针对文件的每个部分构建一个导入引擎ImportEngine,所述的 导入引擎ImportEngine一方面要导入对应节点的属性,另一方面还要完成 其子节点的导入,如果子节点是简单节点就直接导入,如果是复杂节点, 就需要调用该子节点的导入引擎;

然后,从根节点DocRoot开始调用DocRoot的导入引擎 DocRootImportEngine的Import()函数,该函数中首先完成该节点的属性 导入,然后调用ImportChildren(),实现导入引擎的递归调用;

最后,各个节点的Import()函数,主要是完成程序中与该节点对应的 对象的创建及其属性的设置,同时需要设置好新创建的对象与其父对象的 关联关系,然后就是调用ImportChildren()函数从而实现整个文档数据 的导入。

进一步,在实现低版本程序兼容高版本程序制作的文件的过程中,在 进行步骤(2)之前先将高版本程序中的当前文档导出生成一个标准XML文 件。

本发明的效果在于:采用本发明的方法,可以方便的对多种文档结构 进行兼容,也能够实现低版本程序对高版本程序制作的文件的兼容,同时 也最大程度的重用代码,对未来需要兼容新的第三方文件也具有良好的扩 展性。

附图说明

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北大方正集团有限公司;北京北大方正电子有限公司,未经北大方正集团有限公司;北京北大方正电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200710177203.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top