CN105589813B - 一种电子文档版本变化跟踪方法 - Google Patents
一种电子文档版本变化跟踪方法 Download PDFInfo
- Publication number
- CN105589813B CN105589813B CN201510380153.8A CN201510380153A CN105589813B CN 105589813 B CN105589813 B CN 105589813B CN 201510380153 A CN201510380153 A CN 201510380153A CN 105589813 B CN105589813 B CN 105589813B
- Authority
- CN
- China
- Prior art keywords
- electronic document
- version
- mapping
- index
- index mapping
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明涉及电子文档版本变化跟踪方法。该方法包括下述步骤:将旧版本电子文档和新版本电子文档分别转换成第一、第二HTML片段;分别将所述第一、第二HTML片段中的所有文字节点序列化为第一、第二数组;对于所述第一、第二数组利用规定算法计算得到所述第一、第二数组中相同元素的索引并记录为相同索引映射;根据所述相同索引映射和所述第一、第二数组,用户人工进行选择和映射后得到修改索引映射;输出所述相同索引映射和所述修改索引映射。根据本发明能够对电子文档版本的变化进行有效地更重并且能够利用跟踪结果提高外部系统的变更执行效率和准确率。
Description
技术领域
本发明涉及计算机技术,具体地涉及能够跟踪电子文档变化的计算机技术。
背景技术
电子文档,如Word,Html等格式,是生产运维中常见的文档。日常运维中,需要对文档的内容变化进行跟踪,以便通知对上下游关联系统进行及时的更新和适配。
作为跟踪这些电子文档的手段,现有技术中使用Word内置比对工具,利用Word内置比对工具能够比对出内容变化,但是,这种跟踪方法的缺陷是,比对结果无法装载到外部系统中。
另一方面,如果使用纯文本的比对工具,可以输出内容变化并且由外部系统进行装载,但是,这种跟踪方法的缺陷是,因为输出的纯文本无法同富文本中的节点进行映射,会丢失格式信息。
发明内容
本发明鉴于上述问题,旨在提供一种能够识别出文档的变化节点的电子文档版本变化跟踪方法。
在此基础上,本发明还旨在提供一种能够以映射的方式向外部系统标记出变化节点的电子文档版本变化跟踪方法。
本发明的电子文档版本变化跟踪方法,其特征在于,包括下述步骤:
转换步骤,将旧版本电子文档和新版本电子文档分别转换成第一、第二HTML片段;
序列化步骤,分别将所述第一、第二HTML片段中的所有文字节点序列化为第一、第二数组;
相同索引映射获取步骤,对于所述第一、第二数组用规定算法计算得到所述第一、第二数组中相同元素的索引并记录为相同索引映射;
修改索引映射获取步骤,根据所述相同索引映射和所述第一、第二数组,可选的,用户进行人工选择和映射后,得到修改索引映射;输出步骤,输出所述相同索引映射和所述修改索引映射。
优选地,在所述相同索引映射获取步骤中,对于所述第一、第二数组用采用最长公共子序列算法得到相同索引映射。
优选地,所述修改索引映射获取步骤包括:
遍历所述第一数组,将不存在于所述相同索引映射中的记录索引作为减少索引;
遍历所述第二数组,将不存在于所述相同索引映射中的记录索引作为增加索引;
根据所述减少索引和所述增加索引,用户人工进行选择和映射后得到修改索引映射。
优选地,所述减少索引指向所述旧版本电子文档中的文字节点,所述增加索引指向所述新版本电子文档中的文字节点。
优选地,在所述输出步骤中,向外部系统输出所述相同索引映射和所述修改索引映射、以及所述原版本的电子文档和所述新版本的电子文档,
优选地,在所述输出步骤之后进一步包括:
更新步骤,在所述外部系统中根据所述相同索引映射和所述修改索引映射,将原版本的电子文档更新为新版本的电子文档。
优选地,所述更新步骤包括:
在外部系统中输入所述相同索引映射和所述修改索引映射;
指向原版本的电子文档中的文字节点的索引号更新为新版本的电子文档中的文字节点的索引号。
优选地,所述旧版本电子文档和新版本电子文档的格式为HTML格式或者能够转换为HTML格式的任意格式的文档。
优选地,所述旧版本电子文档和新版本电子文档的格式为:word、PDF、XML、纯文本、超文本、RTF、Excel、PowerPoint。
利用本发明的电子文档版本变化跟踪方法,在外部系统中不仅能够获知原版本和新版本的变化,还能够根据比对结果将原版本更新为新版本,因此能够提高外部系统变更执行的效率和准确率。
附图说明
图1是表示本发明的电子文档版本变化跟踪方法的流程框图。
图2是表示本发明的电子文档版本变化跟踪方法的一个实施例的具体流程图。
图3是表示本发明的电子文档版本变化跟踪方法中的后续步骤的流程图。
具体实施方式
下面介绍的是本发明的多个可能实施例中的一些,旨在提供对本发明的基本了解。并不旨在确认本发明的关键或决定性的要素或限定所要保护的范围。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
图1是表示本发明的电子文档版本变化跟踪方法的流程框图。
如图1所示,本发明的电子文档版本变化跟踪方法,包括下述步骤:
转换步骤S10:将旧版本电子文档和新版本电子文档分别转换成第一、第二HTML片段。这里的电子文档可以是HTML格式或者能够转换为HTML格式的任意格式的文档。例如,word、PDF、XML、纯文本、超文本、RTF、Excel、PowerPoint等格式。在下面的实施例中将列举电子文档为word格式的情形。
序列化步骤S20:分别将所述第一、第二HTML片段中的所有文字节点序列化为两组一维数组;
相同索引映射获取步骤S30:对于两组一维数组用规定算法计算得到两组一维数组中相同元素的索引并记录为相同索引映射。这里作为规定算法采用LCS(最长公共子序列算法)。LCS算法能够求取两个字符串最长公共子串,其解决方法就是用一个矩阵来记录两个字符串中所有位置的两个字符之间的匹配情况,若是匹配则为1,否则为0。然后求出对角线最长的1序列,其对应的位置就是最长匹配子串的位置。这样,在本发明中,利用LCS算法能够求取两组数组中相同元素的索引。
修改索引映射获取步骤S40:通过所述相同索引映射和所述两组一维数组分别进行比较,用户进行选择和映射后,得到修改索引映射。
输出步骤S50:输出所述相同索引映射和所述修改索引映射。通过该输出步骤输出的相同索引映射和所述修改索引映射,能够标识出电子文档的变化节点。
如此,根据上述步骤S10~S50,能够比较新版本电子文档和旧版本电子文档并且作为变化信息输出增加索引和减少索引。
进一步,作为优选的方式,还能够在输出步骤S50之后更新步骤S60。在更新步骤S60中,在所述外部系统中根据所述相同索引映射和所述修改索引映射,将原版本的电子文档更新为新版本的电子文档。这样,在外部系统中不仅能够获知原版本和新版本的变化,还能够根据比对结果将原版本更新为新版本。
图2是表示本发明的电子文档版本变化跟踪方法的一个实施例的具体流程图。
在本实施例中被实施内容跟踪的电子文档为word格式。
下面参照图2对于本发明的电子文档版本变化跟踪方法的一个实施例进行具体说明。
如图2所示,在步骤S101中,输入原版本word,记录为doc1。在步骤S102中输入新版本word,记录为doc2。
在步骤S103,将原版本word转换为HTML。在步骤S104,将新版本word转换为HTML。
在步骤S105,将原版本的HTML中的Textnode(文字节点)序列化为Array1(即阵列1或者数组1)。在步骤S106,将新版本的HTML中的Textnode(文字节点)序列化为Array2(即阵列2或者数组2)。
在步骤S107,利用LCS算法获得Array1和Array2两个数组中相同的元素的索引,记录为映射关系sameMap(即相同索引映射)。
在步骤S108,遍历Array1,将索引不存在sameMap(即相同索引映射)中的记录索引到leftOnlyArray(即仅在左阵列)中。“leftOnlyArray”表示相对于sameMap(即相同索引映射)减少了的索引,也可以称为减少索引,减少索引指向旧版本文档中文本节点的映射。
在步骤S109,遍历Array2,将索引不存在sameMap(即相同索引映射)中的记录索引到rightOnlyArray(即仅在右阵列)中。“rightOnlyArray”表示相对于sameMap(即相同索引映射)增加了的索引,也可以称为增加索引,增加索引指向新版本文档中文本节点的映射。
在步骤S110,用户定义leftOnlyArray和rightOnlyArray中的修改映射得到modifyMap(即修改映射)。
在步骤S111,输出原版本的doc1、新版本的doc2、leftOnlyArray、leftOnlyArray、modifyMap、sameMap。
在步骤S112,结束处理。
这样通过上述步骤S101~S112能够比较新版本电子文档和旧版本电子文档并且作为变化信息输出增加索引和减少索引。利用本发明的方法,在电子文档内容发生变化时,可以识别出文档的变化节点,而且变化节点以映射的方式指向原电子文档,并在在不修改原电子文档(及保留格式信息)的情况下,能够以额外的变化信息的方式,输出标记出变化节点的索引。
进一步,在上述步骤S111中输出的原版本的doc1、新版本的doc2、leftOnlyArray、leftOnlyArray、modifyMap、sameMap可以被输入到外部系统中,并且还能够实现从原版本更新到新版本。在图3中表示了该后续步骤的流程。
如图3所示,在步骤S113,开始进行外部系统的关联。
在步骤S114,向外部系统输入modifyMap、sameMap。
在步骤S115,在外部系统中,根据modifyMap、sameMap,将指向原版本文本节点的索引号更新为新版本文本节点的索引号。
在步骤S116,结束处理。
这样,在外部系统中不仅能够获知原版本和新版本的变化,还能够根据比对结果将原版本更新为新版本。
以上例子主要说明了本发明的电子文档版本变化跟踪方法。尽管只对其中一些本发明的实施方式进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其他的形式实施。因此,所展示的例子与实施方式被视为示意性的而非限制性的,在不脱离如所附各权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的修改与替换。
Claims (8)
1.一种电子文档版本变化跟踪方法,其特征在于,包括下述步骤:
转换步骤,将旧版本电子文档和新版本电子文档分别转换成第一、第二HTML片段;
序列化步骤,分别将所述第一、第二HTML片段中的所有文字节点序列化为第一、第二数组;
相同索引映射获取步骤,对于所述第一、第二数组利用规定算法计算得到所述第一、第二数组中相同元素的索引并记录为相同索引映射;
修改索引映射获取步骤,根据所述相同索引映射和所述第一、第二数组,得到修改索引映射;
输出步骤,输出所述相同索引映射和所述修改索引映射;
更新步骤,在外部系统中根据所述相同索引映射和所述修改索引映射,将原版本的电子文档更新为新版本的电子文档,
其中,所述更新步骤包括下述子步骤:
在外部系统中输入所述相同索引映射和所述修改索引映射;
指向原版本的电子文档中的文字节点的索引号更新为新版本的电子文档中的文字节点的索引号。
2.如权利要求1所述的电子文档版本变化跟踪方法,其特征在于,
在所述相同索引映射获取步骤中,对于所述第一、第二数组用采用最长公共子序列算法得到相同索引映射。
3.如权利要求2所述的电子文档版本变化跟踪方法,其特征在于,
在所述修改索引映射获取步骤中,根据所述相同索引映射和所述第一、第二数组,通过用户人工进行选择和映射得到修改索引映射。
4.如权利要求3所述的电子文档版本变化跟踪方法,其特征在于,
所述修改索引映射获取步骤包括:
遍历所述第一数组,将不存在于所述相同索引映射中的记录索引作为减少索引;
遍历所述第二数组,将不存在于所述相同索引映射中的记录索引作为增加索引;
用户人工根据所述减少索引和所述增加索引进行选择和映射得到修改索引映射。
5.如权利要求4所述的电子文档版本变化跟踪方法,其特征在于,
所述减少索引指向所述旧版本电子文档中的文字节点,
所述增加索引指向所述新版本电子文档中的文字节点。
6.如权利要求1所述的电子文档版本变化跟踪方法,其特征在于,
在所述输出步骤中,向外部系统输出所述相同索引映射和所述修改索、以及所述原版本的电子文档和所述新版本的电子文档。
7.如权利要求1所述的电子文档版本变化跟踪方法,其特征在于,
所述旧版本电子文档和新版本电子文档的格式为HTML格式或者能够转换为HTML格式的任意格式的文档。
8.如权利要求7所述的电子文档版本变化跟踪方法,其特征在于,
所述旧版本电子文档和新版本电子文档的格式为:word、PDF、XML、纯文本、超文本、RTF、Excel、PowerPoint。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510380153.8A CN105589813B (zh) | 2015-07-02 | 2015-07-02 | 一种电子文档版本变化跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510380153.8A CN105589813B (zh) | 2015-07-02 | 2015-07-02 | 一种电子文档版本变化跟踪方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105589813A CN105589813A (zh) | 2016-05-18 |
CN105589813B true CN105589813B (zh) | 2018-12-25 |
Family
ID=55929409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510380153.8A Active CN105589813B (zh) | 2015-07-02 | 2015-07-02 | 一种电子文档版本变化跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105589813B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480111B (zh) * | 2016-06-07 | 2019-11-22 | 福建福昕软件开发股份有限公司 | 一种互联文档的自动填报方法 |
CN108009264B (zh) * | 2017-12-14 | 2020-08-25 | 北京航天测控技术有限公司 | 一种用于Excel格式文档的数据版本的比较方法 |
CN109597913B (zh) * | 2018-11-05 | 2021-01-29 | 东软集团股份有限公司 | 对齐文档图片的方法,装置,存储介质和电子设备 |
US11645577B2 (en) | 2019-05-21 | 2023-05-09 | International Business Machines Corporation | Detecting changes between documents using a machine learning classifier |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101916255A (zh) * | 2010-07-02 | 2010-12-15 | 互动在线(北京)科技有限公司 | Html内容对比装置及方法 |
CN101937457A (zh) * | 2010-08-31 | 2011-01-05 | 中山大学 | 一种基于html的版本管理方法及系统 |
CN102682127A (zh) * | 2012-05-16 | 2012-09-19 | 北京像素软件科技股份有限公司 | 一种数据版本的控制方法 |
CN103443787A (zh) * | 2011-02-01 | 2013-12-11 | 埃森哲环球服务有限公司 | 用于标识文本关系的系统 |
-
2015
- 2015-07-02 CN CN201510380153.8A patent/CN105589813B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101916255A (zh) * | 2010-07-02 | 2010-12-15 | 互动在线(北京)科技有限公司 | Html内容对比装置及方法 |
CN101937457A (zh) * | 2010-08-31 | 2011-01-05 | 中山大学 | 一种基于html的版本管理方法及系统 |
CN103443787A (zh) * | 2011-02-01 | 2013-12-11 | 埃森哲环球服务有限公司 | 用于标识文本关系的系统 |
CN102682127A (zh) * | 2012-05-16 | 2012-09-19 | 北京像素软件科技股份有限公司 | 一种数据版本的控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105589813A (zh) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7941420B2 (en) | Method for organizing structurally similar web pages from a web site | |
CN105589813B (zh) | 一种电子文档版本变化跟踪方法 | |
JP4256416B2 (ja) | データ構造変換システム及びプログラム | |
US20180330111A1 (en) | Device with communication interface and method for controlling database access | |
US7827180B2 (en) | Methods and apparatus for assigning content identifiers to content portions | |
US8417714B2 (en) | Techniques for fast and scalable XML generation and aggregation over binary XML | |
US7761458B1 (en) | Segmentation of a data sequence | |
US7739111B2 (en) | Pattern matching method and apparatus and speech information retrieval system | |
CN101430714B (zh) | 一种基于样式的内容结构化加工方法及系统 | |
CN101145157B (zh) | 一种xml格式嵌入式设备特征信息解析方法 | |
CN102750379B (zh) | 一种基于过滤型的字符串快速匹配方法 | |
CN109145260A (zh) | 一种文本信息自动提取方法 | |
US20100100544A1 (en) | Document searching device, document searching method, and document searching program | |
CN102662969A (zh) | 一种基于网页结构语义的互联网信息对象定位方法 | |
JP5978393B2 (ja) | 計算機、記録媒体及びデータ検索方法 | |
JP2014521159A (ja) | 文書の圧縮、解凍及び照会のための方法及び装置 | |
Zhou et al. | Effective approaches to combining lexical and syntactical information for code summarization | |
CN106649797A (zh) | 一种文本数据集解析方法和装置 | |
CN111581212B (zh) | 关系型数据库的数据存储方法、系统、服务器和存储介质 | |
CN103902514A (zh) | 一种Word格式提取及再利用方法 | |
JP6589317B2 (ja) | 書換装置、処理方法とそのプログラム、および、情報処理装置 | |
JP2013218627A (ja) | 構造化文書からの情報抽出方法、装置、及びプログラム | |
KR101225333B1 (ko) | 구문론적으로 분석된 텍스트 코퍼스로부터 정보를 추출하는 트리 패턴 표현식을 이용한 시스템 및 방법 | |
CN108089900A (zh) | 一种字符串处理方法及装置 | |
CN110209425A (zh) | 面向c语言的源代码克隆检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |