CN101996161A - 一种电子文档的历史版本数据处理方法及装置 - Google Patents

一种电子文档的历史版本数据处理方法及装置 Download PDF

Info

Publication number
CN101996161A
CN101996161A CN200910091814XA CN200910091814A CN101996161A CN 101996161 A CN101996161 A CN 101996161A CN 200910091814X A CN200910091814X A CN 200910091814XA CN 200910091814 A CN200910091814 A CN 200910091814A CN 101996161 A CN101996161 A CN 101996161A
Authority
CN
China
Prior art keywords
old version
mapping table
document
physical container
electronic document
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.)
Granted
Application number
CN200910091814XA
Other languages
English (en)
Other versions
CN101996161B (zh
Inventor
王毅
仇睿恒
张磊
王晓磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New Founder Holdings Development Co ltd
Peking University
Peking University Founder Research and Development Center
Original Assignee
BEIDA FANGZHENG TECHN INST Co Ltd BEIJING
Peking University
Peking University Founder Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIDA FANGZHENG TECHN INST Co Ltd BEIJING, Peking University, Peking University Founder Group Co Ltd filed Critical BEIDA FANGZHENG TECHN INST Co Ltd BEIJING
Priority to CN200910091814.XA priority Critical patent/CN101996161B/zh
Publication of CN101996161A publication Critical patent/CN101996161A/zh
Application granted granted Critical
Publication of CN101996161B publication Critical patent/CN101996161B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本发明提供了一种电子文档的历史版本数据处理方法及装置,该方法包括以下步骤:在电子文档中建立历史映射表,所述历史映射表表示物理容器的历史版本和文档模型的历史版本的映射关系;和当物理容器的历史版本和文档模型的历史版本同时更新时,更新历史映射表。当对历史版本进行追溯时,根据需要得到的文档模型的历史版本,在历史映射表中查找对应的物理容器的历史版本,然后在物理容器中提取对应版本的数据。根据本发明的电子文档的历史版本数据处理装置包括历史映射表建立单元、历史映射表更新单元、电子文档保存单元和历史版本追溯单元。

Description

一种电子文档的历史版本数据处理方法及装置
技术领域
本发明涉及电子文档数据处理领域,尤其涉及一种电子文档的历史版本数据处理方法及装置。
背景技术
现在很多电子文档格式采用“物理容器+文档模型”的架构来描述和存储数据,其中,文档模型中包括各类数据描述文件,比如,文档主入口文件、安全性描述文件、资源描述文件等,物理容器主要用于存储数据,就好像一个虚拟存储系统(Virtual Storage System),将文档模型中的各类数据描述文件组织起来。大多数的电子文档格式采用Zip包作为物理容器,比如微软的OOXML和XPS等。也有一些电子文档格式采用其它的物理容器,比如Adobe的PDF采用文本文件作为物理容器。
在电子文档应用中,往往会涉及到对文档进行修改。考虑到数据存储效率,采用增量修改的方式对文档进行修改。增量修改是指将用户编辑修改的数据作为一个增加的部分进行存储,而不是对被编辑的对象数据直接进行修改。增量修改的优点在于,一是由于不需要对文档整体进行重新存储,只需要在文档中附加增加部分的数据即可,所以可最大限度地减少文件需要移动的数据量,提高数据存储的效率;二是保留了所有的历史数据,这样可以对文档的历史版本进行追溯,在很多修订的场景下非常有用。
但是,对于采用Zip包作为物理容器的电子文档,由于Zip无法实现增量修改的功能,因此也无法对文档的历史版本进行追溯。而对于现有的支持增量修改的电子文档,比如PDF和DOC,尽管支持增量修改,但是它们是直接通过文档格式中的某些数据结构来进行历史追溯的,这种方式是和文档模型直接耦合的。比如,PDF采用交叉索引表(Cross-reference Table)来进行历史追溯,而交叉索引表是基于PDF的页面对象(object)的索引,页面对象描述在文档模型中定义,因此交叉索引表与文档模型直接耦合。如图1所示,每次对PDF文档进行一次增量修改,在物理容器中就增加一个交叉索引表,通过这些交叉索引表获取文档的历史版本。如果有另外一种文档格式想复用PDF的增量修改和历史版本追溯模型,就必须完全采用PDF的页面对象组织方式。也就是说,对于不同的文档格式,由于其文档模型不同,我们往往需要设计新的增量修改和历史版本追溯方式。
此外,由于版本追溯方式和文档模型耦合太紧密,导致无法很好地区分开物理容器的历史版本和文档模型的历史版本,这样,就无法实现对于真正的文档历史的追溯。如图1所示,物理容器中的交叉索引表与文档模型直接耦合,因此难以分离物理容器的历史版本和文档模型的历史版本。举例来讲,每次对文档进行增量修改时,可能会认为物理容器和文档模型都会增加一个历史版本,但实际上文档模型的版本可能并没有改变,应用系统可能是通过数字签名等方式来确定文档模型的历史版本。在这种情况下,就不能正确地进行文档的历史版本追溯。另外,物理容器版本和文档模型版本耦合太紧密还会造成这样的问题,即,不同的文档模型难以复用同一个物理容器,同一个文档模型难以选用不同的物理容器。
发明内容
为了解决现有技术中的上述问题,本发明提出了一种电子文档的历史版本数据处理方法及装置,以通过降低物理容器和文档模型之间的版本信息耦合性来实现便于不同的文档格式复用的历史版本追溯方法。
为了实现以上目的,本发明提供一种电子文档的历史版本数据处理方法,该方法包括以下步骤:在电子文档中建立历史映射表,所述历史映射表表示物理容器的历史版本和文档模型的历史版本的映射关系;和当物理容器的历史版本和文档模型的历史版本同时更新时,更新历史映射表。
可在电子文档文档模型的入口位置之前建立历史映射表。历史映射表可由二元组序列组成,每个二元组序列包括物理容器的历史版本号和文档模型的历史版本号。所述更新历史映射表的步骤可包括将更新的物理容器的历史版本号和文档模型的历史版本号组成所述二元组添加到历史映射表中的步骤。
对经过上述处理的电子文档进行历史版本追溯时,根据需要得到的文档模型的历史版本,在历史映射表中查找对应的物理容器的历史版本,然后在物理容器中提取对应版本的数据。
根据本发明的电子文档的历史版本数据处理装置包括:历史映射表建立单元,在电子文档中建立历史映射表,所述历史映射表表示物理容器的历史版本和文档模型的历史版本的映射关系;和历史映射表更新单元,当物理容器的历史版本和文档模型的历史版本同时更新时,更新历史映射表。
该装置还可包括:电子文档保存单元,每次更新历史映射表时,保存电子文档;和历史版本追溯单元,根据需要得到的文档模型的历史版本,在历史映射表中查找对应的物理容器的历史版本,然后在物理容器中提取对应版本的数据。
本发明通过为物理容器和文档模型建立一个历史映射表来降低物理容器和文档模型之间的版本信息耦合性,从而实现“一个物理容器+多个文档模型”的技术架构,即,不同的文档格式可采用同一套容器结构。在这种技术架构下,对于支持增量修改的物理容器,通过上述历史映射表,可方便地对这些格式的文档进行历史版本的追溯。
附图说明
图1是PDF文档增量修改的结构示意图。
图2是支持增量修改的物理容器XDA的结构图。
图3是在XDA中实现增量修改的过程示意图。
图4是在文档模型的入口位置之前建立历史映射表的示意结构图。
图5是历史映射表的示意结构图。
图6是本发明的电子文档的历史版本数据处理装置的示意结构图。
具体实施方式
本发明适用于采用“物理容器+文档模型”技术架构的电子文档格式,其物理容器需要支持增量修改和历史版本追溯,比如,CEBX、UOF、XPS等。其中,CEBX为方正技术研究院将于2009年发布的新一代版式文档格式,CEBX和OOXML、XPS等文档格式类似,也是采用“物理容器+文档模型”的整体技术架构,其物理容器支持增量修改和历史版本追溯,简称为XDA(XML-based Document Archive),以下将在实施例中对其进行描述。应该指出,CEBX满足本发明的适用条件,无论其具体内容如何,都不影响本发明的应用。
为了降低物理容器和文档模型的耦合性,根据本发明的电子文档的历史版本数据处理方法包括以下步骤:
第一步,在电子文档文档模型的入口位置之前建立历史映射表,该历史映射表表示物理容器的历史版本和文档模型的历史版本的映射关系。
所述历史映射表建立在文档模型的入口位置之前,所以它独立于物理容器和文档模型,可记录物理容器和文档模型各自的历史版本,从而将物理容器和文档模型分离,降低物理容器和文档模型的历史版本信息的耦合性。
第二步,当物理容器的历史版本和文档模型的历史版本同时更新时,更新历史映射表。
关于物理容器的历史版本和文档模型的历史版本的更新,根据不同的应用采用不同的判定方法。一般而言,每次对电子文档进行增量修改时,可认为增加一个物理容器的历史版本。而关于文档模型的历史版本的更新,可采用数字签名来确定文档模型的历史版本,也可采用添加修订标记、版本标记、用户标记等操作来确定文档模型的历史版本。例如,在采用数字签名确定文档模型的历史版本的情况下,每进行一次数字签名,就认为增加了一个文档模型的历史版本。在历史映射表中,可通过版本号来记载物理容器和文档模型的映射关系。
第三步,对经过上述处理的电子文档进行历史版本追溯时,根据需要得到的文档模型的历史版本,在历史映射表中查找对应的物理容器的历史版本,然后在物理容器中提取对应版本的数据。
此外,在文档模型中涉及到和历史版本相关的部分,可引用历史映射表中的历史版本,从而简化数据描述。
以下将参考附图描述本发明的实施例。
在本发明的实施例中,电子文档采用一种简称为XDA(XML-basedDocument Archive)的物理容器,有关XDA的内容可参见于2008年10月14日提交到中国专利局的申请号为200810224424.0的专利申请《一种文件打包的方法和装置》。与Zip相比,XDA在增量修改、数据线性化以及压缩效率方面都具备一定的优势。
图2显示了支持增量修改的物理容器XDA的结构。如图1所示,XDA由文件头(header)、文件流入口描述(entry)和各文件的内容流(bitstream)组成,其中,文件头描述版权信息、版本号、包含的历史版本数量等一些最基本的信息,文件流入口描述描述每个文件流在物理容器中的位置以及文件相关信息,各文件的内容流是文件流入口描述中记录的多个文件流的顺序组合。在XDA中,文件流入口描述(entry)和各文件的内容流(bitstream)成对出现,形成一组修改的历史记录,文件流入口描述(entry)中包括指向下一个文件流入口描述(entry)的起始位置的next指针。
图3显示了物理容器XDA进行增量修改的示意图。如图3所示,首先在XDA的原尾部增加新的文件流入口描述(entry)和各文件的内容流(bitstream),然后将原来最后一个文件流入口描述(entry)的next指针指向这个新增加的文件流入口描述(entry)的起始位置。这样,XDA的历史版本可根据文件流入口描述(entry)的个数来确定,也就是说,每进行一次增量修改,就增加一个文件流入口描述(entry),可以认为XDA就增加一个历史版本。
关于文档模型的历史版本,在本发明的实施例中,采用数字签名来确定文档模型的历史版本。每进行一次数字签名,就认为增加了一个文档模型的历史版本。
图4显示了在文档模型的入口位置之前建立历史映射表的示意结构图。如图4所示,文档对象DocBody节点代表了CEBX文件中的文档模型入口位置,在主入口文件中每个DocBody节点之前为每个文档对象建立一个对应的历史映射表RevisionTrack,该历史映射表由一个二元组序列组成,每个二元组表示物理容器的历史版本和文档模型的历史版本的映射关系。
图5显示了历史映射表的示意结构图。如图5所示,历史映射表RevisionTrack包括一个DocRevision序列,每个DocRevision由一个PhysicalSeqNumber和一个RevisionNumber组成,可表示为(PhysicalSeqNumber,RevisionNumber),其中,PhysicalSeqNumber表示物理容器XDA的历史版本号,从1开始,RevisionNumber表示文档模型的历史版本号,也是从1开始。在文档模型定义中涉及到和历史版本相关的部分,可引用上述历史映射表中的历史版本号PhysicalSeqNumber和RevisionNumber。相应地,在数字签名中定义RevisionNumber属性,用于引用上述历史映射表中的文档模型的历史版本号RevisionNumber。
在用户对采用XDA的电子文档进行编辑之后进行保存日寸,应用系统对电子文档进行增量修改,这时XDA中会增加一个历史版本,记为Vp。如果这时用户对该电子文档进行了数字签名,则认为文档模型增加了一个历史版本,记为Vd。此时,应用系统在历史映射表中增加一个DocRevision二元组,其中,在PhysicalSeqNumber中记录Vp,在RevisionNumber中记录Vd,即,增加一个二元组(Vp,Vd)。
如果需要对历史版本进行追溯,比如需要得到文档模型历史版本Vd’(1<=Vd’<=Vd)的数据,则可以通过历史映射表查到与Vd’对应的物理容器历史版本Vp’,然后在物理容器XDA中取得与Vp’对应的数据。
图6显示了本发明的电子文档的历史版本数据处理装置的结构图。如图6所示,该装置包括:历史映射表建立单元,在电子文档中建立历史映射表,所述历史映射表表示物理容器的历史版本和文档模型的历史版本的映射关系;和历史映射表更新单元,当物理容器的历史版本和文档模型的历史版本同时更新时,更新历史映射表。
该装置还可包括:电子文档保存单元,每次更新历史映射表时,保存电子文档;和历史版本追溯单元,根据需要得到的文档模型的历史版本,在历史映射表中查找对应的物理容器的历史版本,然后在物理容器中提取对应版本的数据。
通过以上实施例可看出,本发明通过在文档模型的入口位置之前为每个文档对象建立一个表示物理容器历史版本和文档模型历史版本的映射关系的历史映射表,降低了物理容器和文档模型之间的版本信息耦合性,从而实现了“一个物理容器+多个文档模型”的技术架构。在这种技术架构下,不同的文档格式可采用同一套容器结构。对于支持增量修改的物理容器,通过上述历史映射表,可方便地对这些格式的文档进行历史版本的追溯。也就是说,对于采用支持增量修改的物理容器的电子文档,通过如上建立历史映射表,可复用根据本发明的历史版本追溯方法,而无需针对每种文档格式设计不同的历史版本追溯方法。此外,由于物理容器和文档模型之间的版本信息耦合性降低,所以除了不同的文档模型可复用同一个物理容器之外,同一文档模型也可选用不同的物理容器。在这种情况下,通过如上建立历史映射表,也可方便地实现历史版本的追溯。
尽管以上参考实施例描述了本发明,但是,应该理解,本发明不限于所公开的实施例,任何类似的替换和修改都应包括在本发明中。例如,除了在文档模型的入口位置之前建立历史映射表之外,还可以在电子文档的其它位置建立历史映射表,只要能够方便获取历史映射表并且历史映射表和文档模型相对独立即可。更新历史映射表的方式和历史映射表中的映射关系表示不限于实施例所公开的更新方式和映射表示,只要能反映物理容器的历史版本和文档模型的历史版本之间的对应关系即可。本发明所适用的电子文档的物理容器不限于XDA,也就是说,本发明适用于采用任何支持增量修改的物理容器的电子文档。

Claims (11)

1.一种电子文档的历史版本数据处理方法,包括以下步骤:
在电子文档中建立历史映射表,所述历史映射表表示物理容器的历史版本和文档模型的历史版本的映射关系;和
当物理容器的历史版本和文档模型的历史版本同时更新时,更新历史映射表。
2.根据权利要求1所述的电子文档的历史版本数据处理方法,其特征在于,在电子文档文档模型的入口位置之前建立历史映射表。
3.根据权利要求1所述的电子文档的历史版本数据处理方法,其特征在于,所述历史映射表由二元组序列组成,每个二元组包括物理容器的历史版本号和文档模型的历史版本号。
4.根据权利要求3所述的电子文档的历史版本数据处理方法,其特征在于,所述更新历史映射表的步骤包括将更新的物理容器的历史版本号和文档模型的历史版本号组成所述二元组添加到历史映射表中的步骤。
5.根据权利要求1所述的电子文档的历史版本数据处理方法,其特征在于,物理容器的历史版本的更新是指,每次对电子文档进行增量修改时,增加一个物理容器的历史版本。
6.根据权利要求1所述的电子文档的历史版本数据处理方法,其特征在于,文档模型的历史版本的更新是指,每次对电子文档进行数字签名或者添加修订标记、版本标记、用户标记等操作时,增加一个文档模型的历史版本。
7.根据权利要求1所述的电子文档的历史版本数据处理方法,其特征在于,该方法还包括历史版本追溯步骤,该步骤包括以下步骤:
根据需要得到的文档模型的历史版本,在历史映射表中查找对应的物理容器的历史版本;和
根据查找的物理容器的历史版本,在物理容器中提取对应版本的数据。
8.根据权利要求1所述的电子文档的历史版本数据处理方法,其特征在于,该方法还包括以下步骤:
在文档模型中涉及到和历史版本相关的部分,引用历史映射表中的历史版本。
9.一种电子文档的历史版本数据处理装置,包括:
历史映射表建立单元,在电子文档中建立历史映射表,所述历史映射表表示物理容器的历史版本和文档模型的历史版本的映射关系;和
历史映射表更新单元,当物理容器的历史版本和文档模型的历史版本同时更新时,更新历史映射表。
10.根据权利要求9所述的电子文档的历史版本数据处理装置,其特征在于,还包括:电子文档保存单元,每次更新历史映射表时,保存电子文档。
11.根据权利要求10所述的电子文档的历史版本数据处理装置,其特征在于,还包括:历史版本追溯单元,根据需要得到的文档模型的历史版本,在历史映射表中查找对应的物理容器的历史版本,然后在物理容器中提取对应版本的数据。
CN200910091814.XA 2009-08-28 2009-08-28 一种电子文档的历史版本数据处理方法及装置 Expired - Fee Related CN101996161B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910091814.XA CN101996161B (zh) 2009-08-28 2009-08-28 一种电子文档的历史版本数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910091814.XA CN101996161B (zh) 2009-08-28 2009-08-28 一种电子文档的历史版本数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN101996161A true CN101996161A (zh) 2011-03-30
CN101996161B CN101996161B (zh) 2016-01-20

Family

ID=43786331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910091814.XA Expired - Fee Related CN101996161B (zh) 2009-08-28 2009-08-28 一种电子文档的历史版本数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN101996161B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102867155A (zh) * 2012-08-22 2013-01-09 句容市盛世软件有限公司 一种电子文档多重加密及分级管理方法
CN105760354A (zh) * 2016-03-01 2016-07-13 北京当当科文电子商务有限公司 电子图书中笔记数据重定位方法与装置
CN106294768A (zh) * 2016-08-11 2017-01-04 深圳市宜搜科技发展有限公司 信息搜索方法及信息搜索引擎
CN111090835A (zh) * 2019-12-06 2020-05-01 支付宝(杭州)信息技术有限公司 一种文件衍生图的构建方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101482839B (zh) * 2009-02-26 2010-09-29 北京世纪互联宽带数据中心有限公司 电子文档增量存储处理方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102867155A (zh) * 2012-08-22 2013-01-09 句容市盛世软件有限公司 一种电子文档多重加密及分级管理方法
CN105760354A (zh) * 2016-03-01 2016-07-13 北京当当科文电子商务有限公司 电子图书中笔记数据重定位方法与装置
CN105760354B (zh) * 2016-03-01 2020-01-21 北京当当科文电子商务有限公司 电子图书中笔记数据重定位方法与装置
CN106294768A (zh) * 2016-08-11 2017-01-04 深圳市宜搜科技发展有限公司 信息搜索方法及信息搜索引擎
CN111090835A (zh) * 2019-12-06 2020-05-01 支付宝(杭州)信息技术有限公司 一种文件衍生图的构建方法及装置

Also Published As

Publication number Publication date
CN101996161B (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
CN111753500B (zh) 版式化后的电子表单与ofd合并展现及目录生成的方法
CN101122899B (zh) 报表的生成方法和设备
CN111753499B (zh) 电子表单与ofd版式文件合并展现及目录生成的方法
US8418053B2 (en) Division program, combination program and information processing method
US8135755B2 (en) Templates in a schema editor
CN100483417C (zh) 获取限制词信息的方法、优化输出的方法和输入法系统
US7036073B2 (en) System and method for supporting non-native XML in native XML of a word-processor document
JP6070936B2 (ja) 情報処理装置、情報処理方法及びプログラム
CN101901265B (zh) 一种虚拟试验数据对象化管理系统
CN103593456B (zh) 表单自定义设计方法及装置
CN103778107A (zh) 一种基于excel快速动态生成表单的方法与平台
CN1702617A (zh) 用于在起始模板和目标模板之间映射内容的方法和系统
CN101561725B (zh) 一种手写快速输入的方法和系统
CN102768674A (zh) 一种基于路径结构的xml数据存储方法
CN104035993A (zh) 电子书的存储检索方法、电子书管理系统、阅读系统
CN101996161A (zh) 一种电子文档的历史版本数据处理方法及装置
US20070061349A1 (en) Hierarchically describing shapes
US20130238986A1 (en) Non-transitory computer readable medium storing document creation support program, document creation support device, and document creation support method
CN107194001A (zh) 一种列式存储格式文件快速合并方法及其系统
CN106843891A (zh) 一种基于增量的表单分层扩展方法
CN101763348A (zh) 动态表格式数据撷取系统与方法
US8423888B2 (en) Document conversion and use system
CN104699664B (zh) 一种模板独立的排版系统及方法
US20090287994A1 (en) Document processing device and document processing method
US20120054605A1 (en) Electronic document conversion system

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220915

Address after: 3007, Hengqin international financial center building, No. 58, Huajin street, Hengqin new area, Zhuhai, Guangdong 519031

Patentee after: New founder holdings development Co.,Ltd.

Patentee after: PEKING University FOUNDER R & D CENTER

Patentee after: Peking University

Address before: 100871, Beijing, Haidian District, Cheng Fu Road, No. 298, Zhongguancun Fangzheng building, 5 floor

Patentee before: PEKING UNIVERSITY FOUNDER GROUP Co.,Ltd.

Patentee before: PEKING University FOUNDER R & D CENTER

Patentee before: Peking University

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160120