
一种电子文件留痕信息的记录方法和装置的制作方法.docx
5页一种电子文件留痕信息的记录方法和装置的制作方法专利名称:一种电子文件留痕信息的记录方法和装置的制作方法技术领域:本发明涉及电子文件处理技术领域,尤其涉及一种电子文件留痕信息的记录方法和装置背景技术:随着计算机技术的普及,目前许多企业和个人普遍都使用电子文件处理资料和保存信息通常,电子文件从初稿到最终定稿往往都需要经过多次修改留痕信息即是指在电子文件定稿过程中的历次修改过程、修改内容和每一个处理步骤修改的痕迹保留留痕信息,可以确保文件修改信息的可追溯性和不可抵赖性例如,随着办公自动化的普及与发展,目前许多机关事业单位都使用办公自动化系统来拟定公文在公文起草过程中,各位领导修改的都是电子文件,如何来判断哪位领导修改了些什么,是摆在经办人员面前的一个难题解决这个难题的方法就是在公文起草的流转过程中保留修改痕迹关于目前文件留痕的处理方法,可参见发表于《硅谷》上的文章“基于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、获取修改的文字内容,包括增加、删除或被批注的文。
