一种电子文件留痕信息的记录方法和装置的制作方法

文档序号:6341127阅读:500来源:国知局
专利名称:一种电子文件留痕信息的记录方法和装置的制作方法
技术领域
本发明涉及电子文件处理技术领域,尤其涉及一种电子文件留痕信息的记录方法和装置。
背景技术
随着计算机技术的普及,目前许多企业和个人普遍都使用电子文件处理资料和保存信息。通常,电子文件从初稿到最终定稿往往都需要经过多次修改。留痕信息即是指在电子文件定稿过程中的历次修改过程、修改内容和每一个处理步骤修改的痕迹。保留留痕信息,可以确保文件修改信息的可追溯性和不可抵赖性。例如,随着办公自动化的普及与发展,目前许多机关事业单位都使用办公自动化系统来拟定公文。在公文起草过程中,各位领导修改的都是电子文件,如何来判断哪位领导修改了些什么,是摆在经办人员面前的一个难题。解决这个难题的方法就是在公文起草的流转过程中保留修改痕迹。
关于目前文件留痕的处理方法,可参见发表于《硅谷》上的文章“基于Lotus Domino的办公自动化系统的公文留痕处理分析”。从该篇文章可知,目前文件留痕处理方法主要有以下几种一是通过在表单中设计一个多值计算域来实现留痕处理,这种方法的缺点是只能签发意见留痕,并不能对文件正文的修改留痕;二是通过对word文件对象编程实现留痕处理,这种方法虽然可通过编程控制正文文件的修改和删除权限,但是在实际文件编辑中,用户完全可以绕过该方法所设定的修改和删除权限限制对文件进行修改,因此,该方法本身存在漏洞;三是利用word模板来实现留痕处理,这种方法虽然利用宏对word的一些功能进行了限制,但是宏可以被禁止、再启用,用户完全可以绕过其中某些环节对文件进行修改,因此,该方法本身也存在漏洞;四是通过利用VB或delphi等集成开发环境开发控件来实现留痕处理,这种方法的缺点是采用自主开发的控件,难以集成到其它信息系统中, 独立性和兼容性较低。
除了以上缺点之外,这些方法基本上都是基于word的修改痕迹和批注信息,而从 word文件格式本身的发展历程来看存在格式不公开,用较新版本word软件不能打开老版本的word文件、内容格式发生变化等版本不兼容问题,因此word文件格式不适合长期保存。而且,这些方法都缺少留痕信息的认证机制,不能维护正文修改的真实性(即,不可认证修改内容的真伪)、不可抵赖性。发明内容
为了解决以上问题,本发明提供一种电子文件留痕信息的记录方法和装置,以使得所记录的留痕信息的独立性和兼容性、可理解性高。
为了实现以上目的,本发明提供一种电子文件留痕信息的记录方法,包括以下步骤创建记录电子文件正文的修改历史信息和留痕信息的XML文件,所述修改历史信息包括每个修改版本的版本标识和修改人信息,所述留痕信息包括与每个版本标识相关联的每个修改版本的一个或多个修改的修改类型和修改文字内容;每次对电子文件进行修改时,将该次修改的修改历史信息和留痕信息记录到所述XML文件中。
另一方面,提供一种电子文件留痕信息的记录装置,包括XML文件创建单元,其用于创建记录电子文件正文的修改历史信息和留痕信息的XML文件,所述修改历史信息包括每个修改版本的版本标识和修改人信息,所述留痕信息包括与每个版本标识相关联的每个修改版本的一个或多个修改的修改类型和修改文字内容;记录单元,其用于每次对电子文件进行修改时,将该次修改的修改历史信息和留痕信息记录到所述XML文件中。
本发明利用目前通用的XML语言记录电子文件的修改过程和修改内容,由于XML 语言是一种目前广泛应用于各种不同信息系统进行数据交换的通用标记语言标准,本身就具有独立性和兼容性强、可理解性高的优点,因此,通过XML语言记录的留痕信息的独立性和兼容性强、可理解性高,而且易于与其它信息系统集成。此外,本发明还可进一步获得如下技术效果;1)基于文本方式保存留痕信息中的修改文字内容,即,将修改文字生成二进制数据流进行保存,从而使得留痕信息易于长期保存;幻增加了修改的认证信息,能够维护留痕信息的真实性、可追溯性和不可抵赖性。


图1是根据本发明实施例的计算一个修改版本的修改内容的过程的流程图2是根据本发明实施例的将一个修改的修改内容写入到一个“文本”元素的过程的流程图3a和图北是根据本发明实施例的显示最终版本的留痕信息的示例性视图4是根据本发明实施例的还原到指定的早期版本的过程的流程图5是根据本发明实施例的移除当前的最后一个版本的留痕信息的过程的流程图6a和图6b分别是根据本发明实施例的显示指定的早期版本的留痕信息的示例性视图7是根据本发明实施例的显示修改历史列表的示例性视图8是根据本发明实施例的电子文件留痕信息的记录装置的框图9a、9b和9c分别是根据本发明实施例的“文件正文”元素的XML结构图IOa和IOb分别是根据本发明实施例的“正文留痕”元素的XML结构图Ila和lib分别是根据本发明实施例的“认证信息”元素的XML结构图。
具体实施方式
本发明的技术构思是,考虑到XML作为一种可扩展的通用标记语言标准,目前广泛应用于多个信息系统之间进行数据交换,因此,为了方便与各种信息系统集成,提高留痕信息的独立性和兼容性,在本发明中利用XML技术来描述电子文件的修改历史信息、留痕信息和认证信息,其中,修改历史信息记录每个修改过程的信息,包括每个修改版本的版本标识、修改人和修改时间等信息,每个修改版本的留痕信息包括该次修改增加和/或删除的文字内容和/或对某些文字进行批注的文字内容,认证信息包括用于认证修改内容的真实性的数字签名及其证书。以下,将结合附图和实施例对本发明进行详细描述。
(一)XML文件的创建
首先,需要创建一个XML文件来记录修改历史信息和留痕信息。在根据本发明创建的XML文件中,定义一个“文件正文”元素,该元素为一个容器元素,包括“修改历史”、“正文留痕”和“认证信息”这三个元素,其中,“修改历史”和“正文留痕”元素是必选元素,“认证信息”是可选元素。“文件正文”元素的XML结构如图9a所示。以下将分别对“修改历史”、“正文留痕”和“认证信息”元素的结构进行描述。
(1) “修改历史”元素
“修改历史”元素记录电子文件的各个修改过程的信息。
如图9b所示,“修改历史”元素包括一个或多个“修改版本”,一个修改过程用一个修改版本来表示。
如图9c所示,“修改版本”元素具有用于为每个修改版本赋予一个唯一的版本标识的“版本标识”属性,并且包括“修改人”元素、“处理类型”元素、“开始时间”元素和“结束时间”元素,其中,“修改人”元素、“处理类型”元素、“开始时间”元素和“结束时间”元素分别表示当前修改版本的修改人、修改性质、开始时间和结束时间。这里,“处理类型”元素、 “开始时间”元素和“结束时间”元素均是可选元素,可根据实际需要自由选择。
例如,对于机关事业单位的公文起草,一般包括拟稿、初审、复审、审签、签发等各个修改过程。因此,“修改人”可定义为文书修改过程中的责任人或处理人,例如,初稿时为拟文人,审稿时为审阅人,等等;“处理类型”可包括拟稿、初审、复审、审签、签发等。这里, 可将一个处理人在一定时期内或者在其负责的整个修改过程中对电子文件所作的连续多次修改看作一个修改版本,也就是说,电子文件可以多次被打开、修改和保存,只要处理人相同,那么连续的多次修改都是同一个修改版本的修改。当然,也可定义一个修改版本为一个处理人在一次打开、保存电子文件操作期间所作的连续多个修改。
(2) “正文留痕”元素
“正文留痕”元素包含对电子文件的所有编辑、修改的文字内容信息。
如图IOa所示,“正文留痕”元素包括一个或多个“文本”元素,一个“文本”元素记录某个修改版本的一个修改,其值为一次增加、删除或被批注的文字内容。
如图IOb所示,“文本”元素具有“版本标识引用”、“修改类型”、“修改时间”和“批注”属性,其中,“版本标识引用”属性指定当前文本为哪一个版本的修改;“修改类型”属性标识当前版本的修改是增加文字、删除文字、还是对文字进行批注;“修改时间”属性记录修改发生的时间;当“修改类型”属性的值为批注时,“批注”属性的值为批注的文字内容。
这里,为了能够长期有效地维护留痕信息,可以以文本方式保存留痕信息中的修改文字内容。具体地,可使用UTF8编码或使用GBK、GB18030等其它编码将“文本”元素的值转换为二进制数据流进行保存,当“文本”元素的“修改类型”标识修改为批注时,还使用 UTF8编码或使用GBK、GB18030等其它编码将“文本”元素的“批注”属性值转换为二进制数据流进行保存。
(3) “认证信息”元素
“认证信息,,元素是用于通过技术手段维护内容修改的真实性和不可抵赖性。“认证信息”元素是一个可选的元素,可根据组织机构的实际需要选择记录。
如图Ila所示,“认证信息”元素包括一个或多个“修改签名”元素,一个“修改签名”维护一个修改版本的修改内容的真实性。
如图lib所示,“认证信息”元素包括一个或多个用于维护一个修改版本的修改内容真实性的“修改签名”元素,其中,“修改签名”元素具有用于指定被维护的修改版本的“版本标识弓I用”属性,并且包括“签名结果,,元素、“证书,,元素、“签名人,,元素和“签名时间,, 元素,其中,“签名结果”元素的值为指定的修改版本的修改内容的数字签名结果的base64 编码;“证书”元素的值为所述数字签名结果所对应的公钥或私钥证书的base64编码;“签名人”元素和“签名时间”元素的值分别为签名的责任人和签名的时间。这里,“签名人”元素和“签名时间”元素为可选元素。
从以上结构可看出,一个“文本”元素记录某个修改版本的一个修改,而一个修改版本的修改内容则可以通过将具有该修改版本标识的“文本”元素中所记录的修改内容进行累加来计算。图1是计算一个修改版本的修改内容的过程的流程图,具体如下
步骤SlOl、指定修改版本;
步骤S102、找出指定版本的所有修改,即,找出具有指定版本标识的所有“文本”元素;
步骤S103、从找出的所有修改中依次获取一个修改,S卩,从找出的所有“文本”元素中依次获取一个“文本”元素;
步骤S104、判断在步骤S103中获取的修改是否是指定版本的最后一个修改,即, 判断在步骤S103中获取的“文本”元素是否是指定版本的最后一个“文本”元素,如果不是最后一个“文本”元素,则执行步骤S105,否则执行步骤S106 ;
步骤S105、计算一个修改的修改内容,这里,考虑修改内容时,既要考虑修改类型, 又要考虑修改的文字内容,因此,在该步骤中,从“文本”元素的“修改类型”属性值获取修改的修改类型,从“文本”元素的值获取修改的文字内容,包括增加、删除或被批注的文字内容,当修改类型为批注时,还需从“文本”元素的“批注”属性值获取批注的文字内容;然后, 跳转到步骤S103 ;
步骤S106、按照电子文件正文中出现的先后次序将所有修改的修改内容进行累加,从而得到一个修改版本的修改内容。
(二)修改信息的记录
在按照以上结构创建XML文件之后,每次对电子文件进行修改时,将该次修改的修改历史信息和留痕信息记录到所述XML文件中。具体地讲,例如,在每次打开电子文件时,确定该次修改的版本标识、修改人、处理类型和开始时间,并将这些信息写入到一个“修改版本”元素中,并将该“修改版本”元素插入到“修改历史”元素中。然后,在每个修改处, 根据确定的版本标识将该修改的修改内容和修改时间写入到一个“文本”元素,并将该“文本”元素插入到“正文留痕”元素中。最后,在关闭电子文件时,将结束时间写入到打开电子文件时所插入的“修改版本”元素中,从而完成一次修改过程的记录。在需要认证的情况下,还应写入“认证信息”元素。这里,为了简化留痕信息的表示,还可将连续的同一类修改的留痕信息进行合并,所述同一类修改是指修改版本的版本标识相同并且修改类型相同的 “文本”元素。
图2是将一个修改的修改内容写入到一个“文本”元素的示例性过程的流程图,具体如下
步骤S201、获取修改的文字内容,包括增加、删除或被批注的文字内容;
步骤S202、将修改文字变为UTF8编码,并将这些编码赋予“文本”元素的值;步骤S203、判断修改的修改类型,如果修改类型为增加文字,则执行步骤S204, 如果修改类型为批注,则执行步骤S205和S206,如果修改类型为删除文字,则执行步骤 S207 ;步骤S204、形成增加文字的修改标记,S卩,将“文本”元素的“修改类型”属性值设 置为标识增加文字的值;步骤S205、形成增加批注的修改标记,S卩,将“文本”元素的“修改类型”属性值设 置为标识批注的值;步骤S206、形成批注内容,S卩,将“文本”元素的“批注”属性值设置为批注的文字 内容;步骤S207、形成删除文字的修改标记,S卩,将“文本”元素的“修改类型”属性值设 置为标识删除文字的值;步骤S208、形成一个修改的修改内容,即,形成一个“文本”元素。以下是一个示例性的XML文件< ? xml version = " 1.0〃 encoding = " UTF-8" ? ><文书正文><修改历史>〈修改版本版本标识=〃 00000001" ><责任人 > 张某某</责任人>
<处理类型 > 起草</处理类型>< 开始时间 >2010-0717T09:30:00. 0Z</ 开始时间 >< 结束时间 >2010-07-17T17:20:47. 0Z</ 结束时间 ></修改版本>〈修改版本版本标识=〃 00000002" ><责任人 > 李某某</责任人><处理类型 > 核稿</处理类型>< 开始时间 >2010-07-18T09:10:17. 0Ζ</ 开始时间 >< 结束时间 >2010-07-18T10:40:56. 0Z</ 结束时间 ></修改版本>〈修改版本版本标识=〃 00000003" ><责任人 > 赵某某</责任人><处理类型 > 审核</处理类型>< 开始时间 >2010-07-18T13:30:17. 0Z</ 开始时间 >< 结束时间 >2010-07-18T14:50:56. 0Z</ 结束时间 ></修改版本></修改历史><正文留痕>〈文本版本标识引用=“00000001 “ 修改时间 ="2010-07-17T09:40:00. OZ 〃修改类型=〃增加〃 >ΧΧ厂关于召开
计划生育工作会议的通知
所属各单位
为了总结交流经验,研究分析存在的问题,</文本>
〈文本版本标识引用=〃 00000002 ‘‘修改时间 ="2010-07-18T09:47:00. OZ〃修改类型=〃增加〃 > 进一步 </文本〉
〈文本版本标识引用=〃 00000001 “ 修改时间 ="2010-07-17Τ09:40:00.0Ζ〃修改类型=〃增加" > 贯彻落实省、市
计划生育工作会议精神,做好今年计划生育工作,经研究决定召开计划生育工作会议。现将有关事项通知如下
一、会议内容Χ X X
二、参加人员X X X
三、会议时间、地点X X X
四、要求ΧΧΧ
X X 厂
X年X月X日
</ 文本 >
〈文本版本标识引用=〃 00000003 “ 修改时间 ="2010-07-18Τ14:45:00. 0Ζ"修改类型=〃批注〃批注=〃同意〃 />
</正文留痕>
<认证信息>
〈修改签名版本标识引用=〃 00000001" >
< 签名结果 >UjBsR09EbGhjZ0dTQUxNQUFBUUNBRUltQlp0dUlGUXhEUzhi</ 签名结果〉
< 证书 >UjBsR09EbGhjZ0dTQUxNQUFBUUNBRUltQlp0dUlGUXhEUzhi</ 证书 >
〈签名人〉张某某</签名人〉
〈签名时间 >2010-07-17T17:10:47. 0Z</签名时间 >
</修改签名〉
〈修改签名版本标识引用=〃 00000002" >
< 签名结果 >UjBsR09EbGhjZ0dTQUxNQUFBUUNBRUltQlp0dUlGUXhEUzhi</ 签名结果〉
< 证书 >UjBsR09EbGhjZ0dTQUxNQUFBUUNBRUltQlp0dUlGUXhEUzhi</ 证书 >
〈签名人〉李某某</签名人〉
〈签名时间 >2010-07-18T10:36:50. 0Z</签名时间 >
</修改签名〉
〈修改签名版本标识引用=〃 00000003" >
< 签名结果 >UjBsR09EbGhjZ0dTQUxNQUFBUUNBRUltQlp0dUlGUXhEUzhi</ 签名结果〉
< 证书 >UjBsR09EbGhjZ0dTQUxNQUFBUUNBRUltQlp0dUlGUXhEUzhi</ 证书 >
〈签名人〉赵某某</签名人〉
〈签名时间 >2010-07-18T14:45:56. 0Z</签名时间 >
</修改签名〉
</认证信息〉
</文书正文〉
从以上XML文件可看出,一共有3个修改版本,分别为起草人张某某的修改版本、 核稿人李某某的修改版本和审核人赵某某的修改版本。张某某增加文字两次,李某某增加文字一次,赵某某批注一次,并且分别有张某某、李某某和赵某某的签名结果和证书。
(三)留痕信息的显示
在记录所有修改之后,可根据创建的XML文件显示指定的修改版本的留痕信息和 /或指定的修改人的留痕信息和/或全部或部分修改历史的列表。以下,将对各种显示方法进行描述。
(1)最终版本的留痕信息显示
显示最终版本的留痕信息,即依次显示“正文留痕”元素中具有最终版本标识的所有“文本”元素中所记录的修改内容。这里,可采用显示文字的方式和标识显示文字的方式来进行留痕信息显示。
显示文字的方式是指仅显示正文应出现的修改文字,包括增加的文字和批注的文字,但是不包括删除的文字。例如,可设置修改文字的颜色为黑色或其它颜色。
标识显示文字的方式是指用不同的颜色显示不同的修改版本和修改类型,以进行标识。具体地,根据修改版本的版本标识确定标识该版本的颜色,当修改类型为增加、删除时,设置文字颜色为分配的颜色;当修改类型为批注时,设置文字背景颜色为分配的颜色, 文字颜色为分配颜色的反色;增加、删除、被批注的文字都显示;对删除的文字还在文字上加上相同颜色的删除线;对批注的文字还在正文显示区域外显示批注内容,并用虚线二者连接起来。
图3a是采用显示文字的方式显示以上XML文件中所记录的最终版本的留痕信息的示例性视图,图北是采用标识显示文字的方式显示以上XML文件中所记录的最终版本的留痕信息的示例性视图。
(2)早期版本的留痕信息显示
早期版本相关显示的关键就是形成一个临时的“正文留痕”,在该留痕中指定要显示的早期版本为最后一个修改版本,即把正文留痕恢复到指定的早期版本的原状,然后采用与上述显示最终版本的留痕信息相同的方法进行显示。
早期版本的还原为一循环处理的过程,采用逆向操作的方式。在一次还原处理中, 仅把最后一个修改版本从留痕中移除,即,将所有具有最后版本标识的“文本”元素从“正文留痕”中移除,循环处理,直到指定的早期版本停止。图4是修改版本还原的过程的流程图, 具体如下
步骤S401、指定早期版本,S卩,需要还原到的版本;
步骤S402、获取最后一个版本的版本标识;
步骤S403、根据最后一个版本的版本标识判断最后一个版本是否是指定的早期版本,如果是,则结束还原处理,如果不是,则执行步骤S404 ;
步骤S404、移除最后一个版本,即,将所有具有最后版本标识的“文本”元素移除,并跳转到步骤S402。
图5是移除最后一个修改版本的过程的流程图,具体如下
步骤S501、从最后一个版本的所有修改中依次获取一个修改,即,从具有最后版本标识的所有“文本”元素中依次获取一个“文本”元素;
步骤S502、判断在步骤S501中获取的修改的修改类型,即,判断在步骤S501中获取的“文本”元素的“修改类型”属性值,如果标识为删除文字或批注,则执行步骤S503至 S505,如果标识为增加文字,则执行步骤S505 ;
步骤S503、获取修改文字,即,删除的文字或被批注的文字;
步骤S504、将修改文字合并到前一个修改版本的正文中;
步骤S505、删除当前处理的修改,S卩,删除当前处理的“文本”元素;
步骤S506、判断是否还有未被处理的修改,即,判断是否还有具有最后版本标识的 “文本”元素,如果没有,则执行步骤S507,如果还有未被处理的修改,则跳转到步骤S501 ;
步骤S507、合并连续的修改类型相同的修改,S卩,“文本”元素。
图6a是采用显示文字的方式显示以上XML文件中所记录的第一个修改版本的留痕信息的示例性视图,显示的内容仅为第一个修改版本结束时的内容。图6b是采用标识显示文字的方式显示以上XML文件中所记录的第二个修改版本的留痕信息的示例性视图,标识显示的内容仅为第二个修改版本结束时的内容,而对于第一个修改版本的内容,没有做标识显不。
(3)某个修改人的留痕信息显示
显示某个修改人的留痕信息的步骤如下
A)根据修改人确定标识显示的修改版本;
B)依次显示“正文留痕”中具有该修改版本标识的“文本”元素中所记录的修改内容,对不需要标识显示版本的修改采用显示文字的方式,对需要标识显示版本的修改采用标识显示文字的方式。
例如,张某某的处理版本是第一个修改版本,其留痕信息的显示可参见图6a,李某某的处理版本是第二修改版本,其留痕信息的标识显示可参见图6b。
(4)修改历史的列表显示
第一个修改版本为初稿,在修改历史的列表中不列出。从第二个修改版本开始依次列出各个版本的修改。具体步骤如下
A)在“正文留痕”中按版本对“文本”进行分类。
B)对各个修改版本中的所有“文本”元素进行信息累加。
C)列表显示版本的修改信息,版本的修改信息可包括修改人、处理类型、修改时间以及修改项等信息,一个修改项可包括修改类型,修改内容和时间等信息。
图7是以上XML文件中所记录的修改历史的列表显示的示例性视图。
从以上描述可看出,本发明集中维护修改历史,并通过合并连续同一类修改(即, 修改版本和修改类型相同的连续修改)的方法,简化了留痕信息的表示。
此外,可通过拆分被修改的元素来简化留痕信息的结构,S卩,在修改处,将原XML 元素分成两个独立的XML元素,再将修改内容相关的XML元素放在其中间。
以以上XML文件为例来说,张某某修改结束时相应的“文本”元素应该为
〈文本版本标识引用="00000001〃修改时间=〃 2010-07-17T094000. 0Z" 修改类型="增加">XX厂关于召开计划生育工作会议的通知
所属各单位
为了总结交流经验,研究分析存在的问题,贯彻落实省、市计划生育工作会议精神,做好今年计划生育工作,经研究决定召开计划生育工作会议。现将有关事项通知如下
一、会议内容X X X
二、参加人员X X X
三、会议时间、地点X X X
四、要求XXX
X X 厂
X年X月X曰
</文本〉
接着,李某某在进行修改时,将文字“进一步”添加到“贯彻落实”的前面。此时,通过将以上“文本”元素拆分成两个“文本”元素,并将记录增加文字“进一步”修改的“文本” 元素插在拆分的两个“文本”元素之间,如下所示
〈文本版本标识引用="00000001〃修改时间=〃 2010-07-17T094000. 0Z" 修改类型="增加">XX厂关于召开计划生育工作会议的通知
所属各单位
为了总结交流经验,研究分析存在的问题,</文本>
〈文本版本标识引用="00000002"修改时间="2010-07-18T094700.0Z"修改类型=“增加“ > 进一步</文本>
〈文本版本标识引用="00000001〃修改时间=〃 2010-07-17T094000. 0Z" 修改类型="增加" > 贯彻落实省、市计划生育工作会议精神,做好今年计划生育工作,经研究决定召开计划生育工作会议。现将有关事项通知如下
一、会议内容X X X
二、参加人员X X X
三、会议时间、地点X X X
四、要求XXX
X X 厂
X年X月X曰
</文本〉
这样,就避免了 XML元素的嵌套,S卩,避免了将第二个修改版本
的修改内容嵌套在第一个修改版本中,从而简化了留痕信息的表示。
以下,将参照图8对根据本发明实施例的电子文件留痕信息的记录装置进行描述。参照图8,该装置包括XML文件创建单元100,其用于创建记录电子文件正文的修改历史信息和留痕信息的XML文件,所述修改历史信息包括每个修改版本的版本标识和修改人信息,所述留痕信息包括与每个版本标识相关联的每个修改版本的一个或多个修改的修改类型和修改文字内容;和记录单元200,其用于每次对电子文件进行修改时,将该次修改的修改历史信息和留痕信息记录到所述XML文件中。此外,该装置还可包括留痕信息显示单元300,其用于根据创建的XML文件显示指定的修改版本的留痕信息和/或指定的修改人的留痕信息和/或全部或部分修改历史的列表。
以上各个单元的具体操作与上述方法中的相应步骤相同,因此,省略其详细描述。 这里,应该理解,以上记录装置仅仅是根据本发明所记录的电子文件留痕信息的一个示例性应用,也就是说,根据本发明所记录的电子文件留痕信息不仅仅是用于显示,还可用于其它需要利用电子文件留痕信息或者对电子文件留痕信息进行处理的应用。
以上已参照附图和实施例对本发明进行了详细描述,但是,应该理解,本发明并不限于以上所公开的具体实施例,任何本领域的技术人员在此基础之上容易想到的修改和变型都应包括在本发明的保护范围内。
权利要求
1.一种电子文件留痕信息的记录方法,包括以下步骤创建记录电子文件正文的修改历史信息和留痕信息的XML文件,所述修改历史信息包括每个修改版本的版本标识和修改人信息,所述留痕信息包括与每个版本标识相关联的每个修改版本的一个或多个修改的修改类型和修改文字内容;每次对电子文件进行修改时,将该次修改的修改历史信息和留痕信息记录到所述XML 文件中。
2.根据权利要求1所述的方法,其特征在于,进一步包括以下步骤合并连续的同一类修改的留痕信息,所述同一类修改是指修改版本的版本标识相同并且修改类型相同的修改。
3.根据权利要求1所述的方法,其特征在于,进一步包括以下步骤在所述XML文件中,还记录每次修改的认证信息。
4.根据权利要求1所述的方法,其特征在于,进一步包括以下步骤所述留痕信息中的修改文字内容采用文本方式保存。
5.根据权利要求1所述的方法,其特征在于,进一步包括留痕信息显示步骤,在该步骤中,根据创建的XML文件显示指定的修改版本的留痕信息和/或指定的修改人的留痕信息和/或全部或部分修改历史的列表。
6.根据权利要求1所述的方法,其特征在于,所述创建的XML文件具有以下结构“文件正文”元素包括用于记录修改历史信息的“修改历史”元素和用于记录留痕信息的“正文留痕”元素,其中,所述“修改历史”元素包括一个或多个“修改版本”元素,“修改版本”元素具有用于为每个修改版本赋予一个唯一的版本标识的“版本标识”属性,并且包括“修改人”元素, “修改人”元素用于标识当前修改版本的修改人;所述“正文留痕”元素包括一个或多个“文本”元素,“文本”元素的值为增力卩、删除或被批注的文字内容,并且“文本”元素具有“版本标识引用”、“修改类型”、“修改时间”和“批注”属性,其中,“版本标识引用”属性指定当前修改版本;“修改类型”属性标识当前修改版本的修改是增加文字、删除文字、还是对文字进行批注;“修改时间”属性记录修改发生的时间;当“修改类型”标识修改为批注时,“批注”属性的值为批注的文字内容。
7.根据权利要求6所述的方法,其特征在于,所述“修改版本”元素还包括“处理类型” 元素、“开始时间”元素和“结束时间”元素,其中,“处理类型”元素、“开始时间”元素和“结束时间”元素分别标识当前修改版本的处理类型、开始时间和结束时间。
8.根据权利要求6所述的方法,其特征在于,所述“文件正文”元素还包括“认证信息” 元素,“认证信息”元素包括一个或多个用于维护一个修改版本的修改内容真实性的“修改签名”元素,其中,“修改签名,,元素具有用于指定被维护的修改版本的“版本标识引用”属性,并且包括“签名结果”元素、“证书”元素、“签名人”元素和“签名时间”元素,其中,“签名结果”元素的值为指定的修改版本的修改内容的数字签名结果;“证书”元素的值为所述数字签名结果所对应的证书;“签名人”元素和“签名时间”元素的值分别为签名的责任人和签名的时间。
9.根据权利要求6所述的方法,其特征在于,进一步包括以下步骤将“文本”元素的值转换为二进制数据流进行保存,当“文本”元素的“修改类型”属性标识修改为批注时,还将CN 102541825 A“文本”元素的“批注”属性值转换为二进制数据流进行保存。
10.根据权利要求6所述的方法,其特征在于,进一步包括以下留痕信息显示步骤 当显示最终版本的留痕信息时,依次显示“正文留痕”元素中具有最终版本标识的所有“文本”元素中所记录的修改内容;当显示指定的早期版本的留痕信息时,从最终版本开始逐个版本地从“正文留痕”元素中逆向移除修改版本的留痕信息,直到还原到指定的早期版本为止,然后,依次显示具有指定的早期版本标识的所有“文本”元素中所记录的修改内容,其中,所述逆向移除修改版本的留痕信息的步骤包括对具有当前最后版本标识的“文本”元素执行以下步骤对于修改类型为增加文字的“文本”元素,直接移除该“文本”元素; 对于修改类型为删除文字或批注的“文本”元素,获取删除或被批注的文字内容,并将它们合并到前个修改版本的正文中,再移除该“文本”元素;当具有当前最后版本标识的所有“文本”元素都被移除后,合并连续的修改类型相同的“文本”元素;当显示某个修改人的留痕信息时,根据该修改人确定修改版本的版本标识,并依次显示“正文留痕”元素中具有该版本标识的所有“文本”元素中所记录的修改内容;当显示修改历史的列表时,分别根据各个版本标识显示“修改版本”元素和/或“文本” 元素中的信息。
11.一种电子文件留痕信息的记录装置,包括XML文件创建单元,其用于创建记录电子文件正文的修改历史信息和留痕信息的XML 文件,所述修改历史信息包括每个修改版本的版本标识和修改人信息,所述留痕信息包括与每个版本标识相关联的每个修改版本的一个或多个修改的修改类型和修改文字内容;记录单元,其用于每次对电子文件进行修改时,将该次修改的修改历史信息和留痕信息记录到所述XML文件中。
12.根据权利要求11所述的装置,其特征在于,还包括留痕信息显示单元,其用于根据创建的XML文件显示指定的修改版本的留痕信息和/或指定的修改人的留痕信息和/或全部或部分修改历史的列表。
全文摘要
本发明提供一种电子文件留痕信息的记录方法,包括创建记录电子文件正文的修改历史信息和留痕信息的XML文件,所述修改历史信息包括每个修改版本的版本标识和修改人信息,所述留痕信息包括与每个版本标识相关联的每个修改版本的一个或多个修改的修改类型和修改文字内容;每次对电子文件进行修改时,将该次修改的修改历史信息和留痕信息记录到所述XML文件中。相应地,提供一种电子文件留痕信息的记录装置。根据本发明所记录的留痕信息的独立性和兼容性强、可理解性高,易于与其它信息系统集成和长期保存,而且能够认证留痕信息的真伪。
文档编号G06F17/22GK102541825SQ201010620319
公开日2012年7月4日 申请日期2010年12月23日 优先权日2010年12月23日
发明者王学武 申请人:北京北大方正电子有限公司, 北京大学, 北大方正集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1