信息处理装置、信息处理系统、和信息处理方法转让专利

申请号 : CN200710162648.9

文献号 : CN101226529B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 额贺雅夫

申请人 : 富士施乐株式会社

摘要 :

第二信息处理装置,包括:注册单元,其从第一信息处理装置接收日志信息,所述日志信息包括执行第一文档的操作的操作者的信息、所述操作的时间和日期的信息以及作为所述操作结果而获取的第二文档的信息,并将所述日志信息注册到存储单元中,当所述第一文档已经注册在所述存储单元中时,所述注册单元还将指示所述第一文档是所述第二文档的父文档的派生关系注册到所述存储单元中;以及文档提供单元,其响应于将指定对象文档的信息包括在内收集指令,在由存储在所述存储单元中的派生关系形成的多个树之间,从所述对象文档所属的树内包括的多个文档中,指定并提供每个操作者的最新版本文档。

权利要求 :

1.第二信息处理装置,包括:

注册单元,其从第一信息处理装置接收日志信息,所述日志信息包括对第一文档执行操作的操作者的信息、所述操作的类型、所述操作的时间和日期的信息以及作为所述操作结果而获取的第二文档的信息,并将所述日志信息注册到存储单元中,当所述第一文档已经注册在所述存储单元中时,所述注册单元还将指示所述第一文档是所述第二文档的父文档的派生关系注册到所述存储单元中;以及文档提供单元,其响应于含有指定对象文档的信息的收集指令,在所述日志信息的基础上,在由存储在所述存储单元中的派生关系形成的多个树当中所述对象文档所属的树内包括的多个文档中,指定并提供与每个操作者相关的最新版本文档。

2.如权利要求1所述的第二信息处理装置,其中

所述文档提供单元从所述对象文档所属的树中包括的多个文档当中,为相应日志信息中的每种操作类型指定与每个操作者相关的最新版本文档。

3.如权利要求1所述的第二信息处理装置,其中

所述文档提供单元从所述对象文档所属的树包括的多个文档当中具有相应日志信息的几个文档中,指定与每个操作者相关的最新版本文档,所述日志信息包括作为所述操作类型的公开操作。

4.如权利要求1所述的第二信息处理装置,还包括

最新版本原件提供单元,其响应于包括指定了对象文档的信息的、用于获取最新版本原件的指令,在所述日志信息的基础上,从由存储在所述存储单元中的派生关系形成的多个树当中,指定并提供具有相应日志信息的最新版本文档,所述相应日志信息中的操作者与和所述对象文档所属的树中的根文档相对应的日志信息中的操作者相同。

5.信息处理系统,其包括第一信息处理装置和第二信息处理装置,

所述第一信息处理装置包括发送单元,所述发送单元发送日志信息,所述日志信息包括:对第一文档执行操作的操作者的信息,所述操作的类型,所述操作的时间和日期信息,以及作为所述操作结果而获取的第二文档的信息;以及所述第二信息处理装置包括:注册单元,所述注册单元从所述第一信息处理装置接收所述日志信息并将所述日志信息注册到存储单元中,当所述第一文档已经注册在所述存储单元中时,所述注册单元还将指示所述第一文档是所述第二文档的父文档的派生关系注册到所述存储单元中;以及文档提供单元,其响应于含有指定对象文档的信息的收集指令,在所述日志信息的基础上,在由存储在所述存储单元中的派生关系形成的多个树当中所述对象文档所属的树内包括的多个文档中,指定并提供与每个操作者相关的最新版本文档。

6.如权利要求5所述的信息处理系统,其中

所述文档提供单元从所述对象文档所属的树包括的多个文档当中,对相应日志信息中的每种操作类型,指定与每个操作者相关的所述最新版本文档。

7.如权利要求5所述的信息处理系统,其中

所述文档提供单元在所述对象文档所属的树包括的多个文档当中具有相应日志信息的几个文档中,指定与每个操作者相关的所述最新版本文档,所述日志信息包括作为所述操作类型的公开操作。

8.如权利要求5所述的信息处理系统,其中,所述第二信息处理装置还包括:最新版本原件提供单元,其响应于包括指定了对象文档的信息的、用于获取最新版本原件的指令,在所述日志信息的基础上,从由存储在所述存储单元中的派生关系形成的多个树当中,指定并提供具有相应日志信息的最新版本文档,所述相应日志信息中的操作者与和所述对象文档所属的树中的根文档相对应的日志信息中的操作者相同。

9.文档提供方法,包括

从第一信息处理装置接收日志信息,所述日志信息包括:对第一文档执行操作的操作者的信息,所述操作的类型,所述操作的时间和日期信息,以及作为所述操作结果而获取的第二文档的信息;

将所述日志信息注册到存储单元中;

当所述第一文档已经注册在所述存储单元中时,还将指示所述第一文档是所述第二文档的父文档的派生关系注册到所述存储单元中;以及响应于含有指定对象文档的信息的收集指令,在所述日志信息的基础上,在由存储在所述存储单元中的派生关系形成的多个树当中所述对象文档所属的树内包括的多个文档中,指定并提供与每个操作者相关的最新版本文档。

10.如权利要求9所述的方法,其中

指定和提供所述最新版本文档的步骤包括:从所述对象文档所属的树包括的多个文档当中,对相应日志信息中的每种操作类型,指定与每个操作者相关的所述最新版本文档。

11.如权利要求9所述的方法,其中

指定和提供所述最新版本文档的步骤包括:在所述对象文档所属的树包括的多个文档当中,从具有相应日志信息的几个文档中,指定与每个操作者相关的所述最新版本文档,所述相应日志信息包括作为所述操作类型的公开操作。

12.如权利要求9所述的方法,还包括,

响应于包括指定了对象文档的信息的、用于获取最新版本原件的指令,在所述日志信息的基础上,从由存储在所述存储单元中的派生关系形成的多个树当中,指定并提供具有相应日志信息的最新版本文档,所述相应日志信息中的操作者与和所述对象文档所属的树中的根文档相对应的日志信息中的操作者相同。

说明书 :

信息处理装置、信息处理系统、和信息处理方法

技术领域

[0001] 本发明涉及信息处理装置、c系统和信息处理方法。

背景技术

[0002] 已经有用于在服务器中注册诸如文本文档数据、音频数据、多媒体数据等电子文档(下文也简称为“文档”),并响应于用户请求提供该文档的技术。此外,已知有这样的系统,其中给电子文档分配了唯一标识符,并提供相应于用户输入的标识符的电子文档。在另一个已知系统中,在将电子文档打印到纸质上时,电子文档的标识符被编码并嵌入到纸质文档中,这样,当拷贝纸质文档时,将识别嵌入其中的标识符,获取与该标识符对应的电子文档,并随后使用该电子文档信息来打印该纸质文档。
[0003] JP 2002-016788 A公开了一种系统,其中内容拷贝设备从其中嵌入了内容ID的内容的拷贝文档中读取内容ID,并经由网络传输所读取的内容ID和拷贝事件属性信息到内容ID管理中心。内容ID管理中心基于所接收的内容ID获取内容的原件,给该原件分配新内容ID,并记录该新内容ID和拷贝事件属性信息。然后,内容ID管理中心将该新内容ID嵌入到原件内容中并将该原件内容返回到为其提供了拷贝请求的内容拷贝设备。该内容拷贝设备拷贝该原件内容并输出所拷贝的结果。在该系统中,当根据从内容拷贝设备接收的内容ID发出新内容ID时,内容ID管理中心会记录根据上述所接收的内容ID而拷贝了该新内容ID(例如,参见JP 2002-016788 A的第41段的结尾部分)。
[0004] JP2002-014978 A公开了一种系统,其中终端设备从嵌入了内容ID的内容拷贝或从该拷贝的一部分中读取内容ID,并发送该内容ID和搜索支持信息到内容ID管理中心。一旦接收到内容ID和搜索支持信息,内容ID管理中心将向终端设备返回与所接收的内容ID对应的内容的原件或相关内容。

发明内容

[0005] 这里,可想到一种技术,其中当执行关于文档的某种操作时,将记录派生关系,该派生关系指示该操作获取的文档是从该操作之前的文档中派生的,并且该记录被用于提供服务。然而,如果试图将该技术应用到将由多个用户之一注册的文档分发给其他用户,每个所述用户随后执行关于该文档的操作,并从多个用户收集结果文档的情况,则不可能仅通过记录该派生关系而实现基于用户或基于操作内容等的文档收集。
[0006] 本发明一方面有利地提供了一种技术,其中作为每个用户执行关于文档的操作结果所获取的文档可以通过使用关于文档间的派生关系的信息来收集。
[0007] 根据权利要求1描述的本发明的一方面,提供了第二信息处理装置,其包括:从第一信息处理装置接收日志信息的注册单元,所述日志信息包括有关执行关于第一文档的操作的操作者、操作的时间和日期的信息,以及作为操作结果而获取的第二文档的信息,并将日志信息注册到存储单元,该注册单元,当第一文档已经注册在存储单元中时,还将指示第一文档是第二文档的父文档的派生关系注册到存储单元;以及文档提供单元,其响应于将指定对象文档的信息包括在内的收集指令,在日志信息的基础上,指定并提供最新版本的文档,所述最新版本的文档相关于在对象文档所属的树中包括的文档的每一操作者,该树是由在存储单元中存储的派生关系形成的树中的其中之一。
[0008] 根据权利要求2描述的本发明的另一方面,注册单元将日志信息注册到存储单元,所述日志信息还包括关于操作类型的信息,并且文档提供单元为相应日志信息中的每一种操作类型指定在对象文档所属的树中包括的文档之中关于每个操作者的最新版本文档。
[0009] 根据权利要求3描述的本发明的另一方面,注册单元将日志信息注册到存储单元,所述日志信息还包括关于操作类型的信息,并且,在将对象文档所属的树中的文档之中,文档提供单元从具有相应日志信息的文档中指定关于每个操作者的最新版本文档,所述日志信息包括作为操作类型的公开操作。
[0010] 根据权利要求4描述的本发明的另一方面,第二信息处理装置还包括最新版本原件提供单元,其响应于用于获取最新版本原件(包括指定对象文档的信息)的指令,在日志信息的基础上,从存储在存储单元中的派生关系形成的树中,指定并提供具有相应日志信息的最新版本文档,所述日志信息中的操作者与相应于对象文档所属的树中的根文档的日志信息中的操作者相同。
[0011] 根据权利要求5描述的本发明的另一方面,提供了信息处理系统,其包括第一信息处理装置和第二信息处理装置,该第一信息处理装置包括发送单元,该发送单元发送日志信息,所述日志信息包括执行第一文档的操作的操作者信息,操作的时间和日期信息,和作为操作结果获取的第二文档信息;以及第二信息处理装置,包括注册单元,所述注册单元从第一信息处理装置接收日志信息并将该日志信息注册到存储单元,当第一文档已经在存储单元注册时,该注册单元还将指示第一文档是第二文档的父文档的派生关系注册到存储单元;和文档提供单元,其响应于将指定对象文档的信息包括在内的收集指令,在日志信息的基础上,在由存储在存储单元中的派生关系形成的树中,从包括在对象文档所属的树中的文档,指定并提供关于每个操作者的最新版本文档。
[0012] 根据权利要求6描述的本发明的另一方面,注册单元将日志信息注册到存储单元,所述日志信息还包括关于操作类型的信息,并且文档提供单元为相应日志信息中的每种操作类型指定在对象文档所属的树中包括的文档之中关于每个操作者的最新版本文档。
[0013] 根据权利要求7描述的本发明的另一方面,注册单元将日志信息注册到存储单元,所述日志信息还包括操作类型的信息,并且文档提供单元在包括在对象文档所属的树中的文档之中,从具有相应日志信息的文档中指定关于每个操作者的最新版本文档,所述日志信息包括作为操作类型的公开操作。
[0014] 根据权利要求8描述的本发明的另一方面,第二信息处理装置还包括最新版本原件提供单元,其响应于用于获取最新版本原件(包括指定对象文档的信息)的指令,在日志信息的基础上,从存储在存储单元中的派生关系形成的树中,指定并提供具有相应日志信息的最新版本文档,所述日志信息中的操作者与相应于对象文档所属的树中的根文档的日志信息中的操作者相同。
[0015] 根据权利要求9描述的本发明的另一方面,提供了文档提供方法。该方法包括从第一信息处理装置接收日志信息,所述日志信息包括执行第一文档的操作的操作者的信息,操作的时间和日期信息和作为操作结果获取的第二文档信息;并将日志信息注册到存储单元;当第一文档已经注册在存储单元中时,还将指示第一文档是第二文档的父文档的派生关系注册到存储单元;并响应于将指定对象文档的信息包括在内收集指令,在日志信息的基础上,在由存储在存储单元中的派生关系形成的树中,从包括在对象文档所属的树的文档,指定并提供每个操作者的最新版本文档。
[0016] 根据权利要求10描述的本发明的另一方面,将日志信息注册到存储单元的步骤包括将还包括操作类型信息的日志信息注册到存储单元,并且指定和提供最新版本文档的步骤包括对于相应日志信息的每一操作类型,从对象文档所属的树中所包括的文档之中,指定每个操作者的最新版本文档。
[0017] 根据权利要求11描述的本发明的另一方面,将日志信息注册到存储单元的步骤包括将还包括操作类型信息的日志信息注册到存储单元,并且指定和提供最新版本文档的步骤包括,在对象文档所属的树中所包括的文档之中,从具有相应日志信息的文档中指定每个操作者的最新版本文档,所述相应日志信息包括公开操作作为操作类型。
[0018] 根据权利要求12描述的本发明的另一方面,该方法还包括,响应于用于获取最新版本原件(包括指定对象文档的信息)的指令,在日志信息的基础上,从存储在存储单元中的派生关系形成的树中,指定并提供具有相应日志信息的最新版本文档,所述日志信息中的操作者与相应于对象文档所属的树的根文档的日志信息中的操作者相同。
[0019] 根据本发明第一、第五和第九方面,通过引用相应于每个文档的日志信息中所包括的操作者和操作的时间、日期的信息,可以从对象文档所属的树中所包括的文档之中(即,在从派生对象文档的文档所派生的文档之中)收集和获取文档,该文档是每个操作者的最新操作的结果。
[0020] 根据本发明第二、第六和第十方面,可以对于每种操作类型提供关于每个操作者的最新版本文档。
[0021] 根据本发明第三、第七和第十一方面,收集的对象可以限制在操作者已经执行了公开操作的文档。
[0022] 根据本发明第四、第八和第十二方面,关于与树的根相对应的文档,其是每个操作者执行操作的文档的原件,可以从注册了原件文档的操作者所执行的操作结果获取的文档中获取最新版本文档并作为最新版本原件文档提供。

附图说明

[0023] 将参照下列附图详细描述本发明的示例性实施例,其中:
[0024] 图1是示意性地示出文档使用管理系统的示例性结构的框图;
[0025] 图2是示出了客户终端的内部结构示例的框图;
[0026] 图3是示意性地示出添加ID的文档的数据结构示例的视图;
[0027] 图4是示出了文档管理服务器的内部结构示例的框图;
[0028] 图5是示出了派生关系DB的数据内容示例的视图;
[0029] 图6是示出了在图5所示的数据内容中由管理ID形成的树结构的示意性视图;
[0030] 图7是示出了显示了添加ID的文档的图标的显示屏幕示例的视图;
[0031] 图8是示出响应于填充表格收集请求而由请求处理单元执行的部分示例性处理过程的流程图;
[0032] 图9是示出响应于填写表格收集请求而由请求处理单元执行的剩余部分示例性处理过程的流程图;
[0033] 图10是示出显示了填写表格搜索结果的显示屏幕的示例性视图;
[0034] 图11是示出了在获取了填写表格之后的派生关系DB的数据内容的示例性视图;
[0035] 图12是示出了在获取了填写表格之后的派生关系DB的数据内容的示例性视图;
[0036] 图13是示出当原件表格被修改之后的由管理ID形成的树结构的示意图;
[0037] 图14是示出与图13示出的树结构相对应的派生关系DB的数据内容示例的视图;
[0038] 图15是示出响应于最新版本表格获取请求而由请求处理单元执行的部分处理过程示例的流程图;
[0039] 图16是示出响应于最新版本表格获取请求而由请求处理单元执行的剩余部分处理过程示例的流程图;
[0040] 图17是显示最新版本表格搜索结果的示例性显示屏幕;以及
[0041] 图18是示出计算机硬件结构示例的视图。

具体实施方式

[0042] 将参照附图详细描述本发明的示例性实施例。
[0043] 图1是示意性地示出文档使用管理系统的示例性结构的框图。该系统由文档管理服务器10和客户终端20-1,20-2,...(下文共同称为客户终端20)形成,其经由网络30相互连接,网络30诸如因特网、局域网(LAN)等。
[0044] 将参照图2描述客户终端20。客户终端20是用户用于执行文档操作的终端,其可以是个人计算机,数字多功能设备等。如图2所示,客户终端20包括文档操作单元200和注册处理单元210。
[0045] 文档操作单元200被用于执行关于文档的操作,包括显示(即,由用户“观看”)、编辑、文档的打印和输出、纸质文档的读取和拷贝等等。虽然图2只示出了一个单独的文档操作单元200,但是单个操作可以由不同操作单元执行(例如,诸如编辑应用和读取控制应用之类的不同应用)。如果文档操作单元200是用于创建和编辑电子文档的软件(例如字处理器),则例如文档操作单元200将根据用户指令来显示电子文档或编辑该电子文档。当执行关于文档的操作时,文档操作单元200将输出表示操作结果的添加ID文档300。
[0046] 如图3所示,添加了ID的文档300是包括元信息310和文档内容320的电子文档。文档内容320与作为由文档操作单元200执行操作的结果而生成的文档的内容数据相对应。如果文档操作单元200是创建和编辑电子文档的软件,那么文档内容320是作为由该软件执行编辑的结果生成的文档文件。可替换地,如果文档操作单元200是打印电子文档的设备,那么文档内容320可以是要打印的电子文档的内容数据。此外,如果文档操作单元200是扫描纸质文档的设备或者拷贝纸质文档的设备,那么文档内容320可以是通过读取纸质文档而获取的图像数据。
[0047] 元信息310是用于文档管理的信息,其包括管理ID 312,父ID314,和日志信息316。
[0048] 管理ID 312是添加ID文档300自身的唯一标识信息。父ID 314是添加ID文档300的父添加ID文档的管理ID。特别地,在该示例性实施例中,通过执行关于特定添加ID文档的操作所获取的特定添加ID文档和新添加ID文档被看作是父子关系。更明确地,当通过操作第一添加ID文档而获取第二添加ID文档时,第一添加ID文档是第二添加ID文档的父文档,并且第二添加ID文档是第一添加ID文档的子文档。例如,当文档操作单元200执行关于具有管理ID“A”的添加ID文档的操作,且作为操作结果而获取具有管理ID“B”的新添加ID文档时,后一文档的元信息310中的管理ID 312是“B”,该文档的父ID 314是“A”。这种父子关系被称为“(管理ID的)派生关系”。
[0049] 这里,在执行了电子文档(该电子文档还没有在本系统中注册)初始注册操作的情况下以及在执行了扫描或拷贝未注册纸质文档操作的情况下(在后一种情况下,添加ID文档(包括通过读取纸质文档所获取的图像作为其文档的内容)生成并注册到本系统中),生成的添加ID文档300没有父ID 314(即,不存在父)。
[0050] 日志信息316涉及与当生成添加ID文档时执行的操作相关的各种日志条目信息。该日志条目可以包括当执行操作时的时间和日期、操作的类型、执行该操作的用户(操作者)等等,但并不局限于这些例子。操作类型包括,例如,注册(即将新文档注册到本系统)、观看、更新(改变文档内容)、打印、扫描、纸质文档的拷贝等等。例如,当用户使用文档操作单元200编辑第一添加ID文档并然后指示编辑完成时,作为结果的第二添加ID文档的日志信息316可以包括:编辑完成的时间、指示编辑的用户的标识信息和操作“更新”的类型。
[0051] 这里,文档操作单元200可以以符合本系统的文档操作单元200能够解密所加密的文档的方式将操作所获得的文档加密。在该情况下,从文档操作单元200输出添加ID文档300的文档内容320,其已经被加密,仅能由符合本系统的文档操作单元200解密。因此,当操作这种添加ID文档时,在使用文档操作单元200的情况下,文档操作单元200检测该操作并且将操作的内容从文档操作单元200报告到文档管理服务器10。此外,除了文档内容320,下面将描述的元信息310(或该元信息的部分)也将被加密。
[0052] 再次参照图2,文档操作单元200包括ID分配单元202和派生关系合并单元204,以便作为操作的结果生成上述添加ID文档300。ID分配单元202给作为操作结果生成的添加ID文档分配唯一管理ID。该管理ID需要是至少在本系统内为唯一的标识信息。例如,可能获取作为操作结果生成的添加ID文档300(不包括管理ID 312)的散列值并使用该散列值作为该添加ID文档300的管理ID。当诸如SHA-256(其是由NIST(美国国家标准技术研究所)在FIPS(联邦信息处理标准)180-2中定义的具有256位散列值的加密散列函数)之类的无冲突密码散列函数被用作该散列函数时,能够生成具有实际足够唯一性的管理ID。自然,每个客户终端20生成在该系统内唯一的管理ID的方法不局限于上述示例。当该管理ID包括特定于每个客户终端20的标识信息时,可以在每个客户终端20生成在该系统内唯一的管理ID。
[0053] 派生关系合并单元204生成元信息310,其包括:新管理ID 312(所述新管理ID被分配给由ID分配单元202执行操作结果所获取的文档),父ID 314(所述父ID是关于其已执行操作(在初始注册的情况下,不存在这样的父ID)的父文档的管理ID),和关于操作的日志信息316。派生关系合并单元204还将元信息310添加到操作结果的文档内容,因而生成并输出操作后获取的添加ID文档300。
[0054] 注册处理单元210执行用于将从文档操作单元200输出的添加ID文档300注册到文档管理服务器10的处理。这样,如上所述,每个客户终端20将每个客户终端20自身执行操作结果所获取的添加ID文档300注册到文档管理服务器10,从而使该文档管理服务器10能够识别出各个添加ID文档300之间的派生关系。
[0055] 作为操作结果从文档操作单元20输出的添加ID文档300可以通过电子拷贝或通过作为电子邮件附件等发送给其他人,与普通文档文件的情况相似。当从另一个用户接收添加ID文档300的用户使用他或她自己的客户终端20的文档操作单元200来操作所接收的添加ID文档300时,将生成根据该操作给其分配了新管理ID的新添加ID文档。
[0056] 此外,在用文档操作单元200打印电子文档时,文档操作单元200可以生成管理ID并将该管理ID嵌入到所打印的电子文档中。这里,例如通过将表示该管理ID的代码图像与该电子文档的打印图像相重叠,来执行该管理ID的嵌入。在该情况下,该文档操作单元200将添加ID文档注册到文档管理服务器10,其中所述添加ID文档包括诸如管理ID、操作类型(在该情况下是“打印”)等的元信息。此外,当打印了添加ID文档时,会生成包括该添加ID文档的管理ID作为父ID 314的新添加ID文档。相应于这种打印操作的新添加ID文档可以包括打印数据作为文档内容320,所述打印数据诸如页描述语言数据或表示所打印图像的位图图像数据。
[0057] 此外,当文档操作单元200读取其中嵌入管理ID的纸质文档时,该文档操作单元200分配关于该读取操作的新管理ID,并生成添加ID文档,所述添加ID文档包括作为文档内容320的读取结果的图像,并将该添加ID文档注册到文档管理服务器10。从原件纸质文档读取的管理ID被设置为该添加ID文档的父ID 314。在拷贝具有管理ID嵌入其中的纸质文档时,将执行上述读取处理和打印处理。
[0058] 下面将描述文档管理服务器10。文档管理服务器10将从多个客户终端20发送的添加ID文档300存储到系统中,并在所存储信息的基础上向用户提供各种服务。如图4所示,文档管理服务器10包括文档DB 100,派生关系DB 110,文档注册单元130和请求处理单元140。
[0059] 文档DB 100是存储从客户终端20发送的添加ID文档300的文档内容320的数据库。通过使用唯一内容ID管理每个存储在文档DB100中的文档内容320。尽管通过相应文档内容的加密散列函数获取的散列值可以被用作内容ID,但是内容ID不局限于该例子。内容ID可以由客户终端20分配,在该情况下内容ID可以被包括在元信息310中。
[0060] 文档注册单元130将从客户终端20接收的添加ID文档的文档内容和元信息分别注册到文档DB 100和派生关系DB 100。在上述信息之中,元信息的注册由派生关系注册单元132管理。
[0061] 派生关系DB 110是存储主要与这种添加ID文档300中的派生关系信息相关的元信息的数据库。图5示出了派生关系DB 110的示例数据内容。在图5所示的表中,一行的信息表示相应于一个添加ID文档300的元信息记录。在该示例中,将父ID、操作类型、操作者、操作时间和日期、文档内容的文档ID包括在内的条目被对应于每个添加ID文档300的管理ID注册。元信息记录中的信息条目不局限于上述示例,只要包括管理ID和父ID的对,管理所需的任何条目都可以记录。
[0062] 这里,图5仅仅从数据内容的视点表示由派生关系DB 110管理的数据,并因此不指定任何特定表示表格或数据库表格。例如,派生关系DB 110可以被配置为普通关系数据库,或其中注册了描述除了管理ID的元信息的XML(可扩展标记语言)文档,而管理ID被用作键(key)。
[0063] 图5所示的派生关系DB 110的数据内容形成了图6所示的树结构,其中管理ID是节点,管理ID之间的父子关系是边。
[0064] 下面将以时间顺序描述图5和图6的例子中所述的文档的日志。在该示例中示出了操作流程,其中某个用户将诸如应用表格之类的表格注册到本系统中,并且其他用户填写该表格并将填写的表格注册到本系统中。
[0065] 特别地,在该示例中,与文档(表格)相关的“注册”操作是首先由操作者“用户1”的客户终端执行。“注册”操作是用于将还没有被注册的文档管理服务器10的文档(即没有管理ID的文档,其也被称为“未注册文档”)注册到文档管理服务器10。根据该操作,包括元信息的添加ID文档被从客户终端发送到文档管理服务器10,所述元信息具有管理ID“文档1”,操作类型“注册”,没有父ID。添加ID文档也包括文档的文档内容。响应于此,文档管理服务器10将文档内容注册到文档DB 100内的添加ID文档“文档1”中,以及将添加ID文档“文档1”的元信息注册到派生关系DB 110中。与相应内容ID“内容1”相结合来管理注册的文档内容。随后,“用户1”将注册的添加ID文档分发给其他用户“用户
2”,“用户3”,...等等。文档的分发可以通过向每个用户发送电子邮件(其包括了作为附件的添加ID文档)来执行。
[0066] 此后另一个用户“用户2”通过使用他或她自己客户终端的文档操作单元200来观看添加ID文档“文档1”。此时,用户2观看具有内容ID“内容1”的文档内容。客户终端生成添加ID文档“文档2”作为观看的结果并将添加ID文档“文档2”注册到文档管理服务器10。这里,因为“观看”操作没有修改或变更文档内容,文档内容的内容ID保持为“内容1”。这里,当如上所述执行了不改变文档内容的操作时,客户终端20可以将没有文档内容的添加ID文档发送到文档管理服务器10。通过该观看操作,派生关系合并单元204用添加ID文档“文档2”替换在该操作之前出现在用户2的客户终端20内的添加ID文档“文档1”。更具体的说,用该替换操作,派生关系合并单元204将添加ID文档“文档1”的元信息310的管理ID 312改变为新管理ID“文档2”,并且还将文档“文档1”的管理ID“文档1”设置为新文档“文档2”的父ID 314的值。此外,派生关系合并单元204将日志信息316中操作类型的值改变为当前操作的类型“观看”,将操作时间和日期的值改变到观看操作的时间和日期,并且还将操作者的值改变为“用户2”。然而文档内容320保持未变,因为当前操作是“观看”。
[0067] 如上所述,一旦被观看,添加ID文档“文档1”被在观看之后获取的添加ID文档“文档2”替换。因而,在替换之后,添加ID文档“文档1”本身不再存在于客户终端20中,添加ID文档“文档2”代替添加ID文档“文档1”出现。
[0068] 然后,另一个用户“用户3”通过使用他或她的客户终端20的文档操作单元200编辑添加ID文档“文档1”。在这种情况下,当用户3借助于文档操作单元200打开添加ID文档“文档1”时,将呈现文档内容“内容1”,用户3对其执行编辑操作。当用户3填写用户1注册的原件表格时执行这种编辑操作。当用户3完成编辑并关闭该文档时,文档操作单元200生成添加ID文档“文档3”作为编辑的结果,并将添加ID文档“文档3”注册到文档管理服务器10。添加ID文档“文档3”包括元信息310,该元信息包括诸如管理ID“文档3”、父ID“文档1”、操作类型“编辑”、操作者“用户3”等等的信息条目和通过编辑获取的文档内容320。因为编辑操作修改或变更了添加ID文档“文档3”的文档内容,所以文档内容与新内容ID“内容2”关联并随后被注册到文档DB 100。
[0069] 然后,用户2打开添加ID文档“文档2”并执行关于所呈现的文档内容“内容1”的编辑操作。当编辑完成时,文档操作单元200用添加ID文档“文档4”替换添加ID文档“文档2”,所述添加ID文档“文档4”包括作为编辑结果而获取的文档内容。添加ID文档“文档4”的元信息310包括管理ID“文档4”和父ID“文档2”。然后,文档操作单元200将作为操作结果的添加ID文档“文档4”注册到文档管理服务器10。因为在添加ID文档“文档4”中包括的文档内容已根据早期版本文档内容“内容1”进行了修改或更改,因此将新文档内容注册到与新内容ID“内容3”相关联的文档DB 100。
[0070] 此后,用户2指示文档操作单元200执行添加ID文档“文档4”的“公开”操作。例如,“公开”操作被实现为关于添加ID文档而执行的过程之一。例如,用户通过把光标放在屏幕(其上显示文件夹列表或文件夹中的文件列表)中添加ID文档的图标上并且执行诸如右键点击图标之类的预定操作,“公开”被呈现为操作菜单上的一项。然后,用户通过选择该条目来执行“公开”操作。该“公开”操作是用于记录用户向操作者(在该示例中为“用户1”)公开对象添加ID文档(在该示例中为“文档4”)的文档内容(在该示例中为“内容3”)意图的操作,所述操作者是指示添加ID文档(在该示例中为“文档1”)的“注册”操作的人,所述添加ID文档是对象添加ID文档的原件(起始点或根)。更具体地说,当管理ID“文档4”的编辑操作完成时,用户1还不能获取作为编辑结果的文档内容“内容3”,当用户2执行“公开”操作(“文档5”)时,用户1稍后能够获取文档内容“内容3”。如果在填写中间或当用户2需要一些时间来确定是否公开内容时,用户2临时终止编辑操作,则在该阶段可以禁止用户1观看编辑结果,除非用户2执行“公开”操作。作为“公开”操作的结果被注册到文档管理服务器10的添加ID文档“文档5”包括父ID“文档4”和操作类型“公开”。当用户1请求添加ID文档时,仅当所请求的添加ID文档的操作类型是“公开”时,文档管理服务器10能够将添加ID文档提供给用户1。否则,文档管理服务器10将不向用户1提供所请求的文档。此外,当从用户1接收到检索添加ID文档的请求时,文档管理服务器10从匹配搜索条件的添加ID文档中,给用户1提供仅与操作类型“公开”关联的添加ID文档。
[0071] 尽管在上述示例中,添加ID文档的“公开”操作是允许仅向注册该添加ID文档原件的操作者公开该添加ID文档的操作,但是“公开”操作不局限于该示例,其可以允许将对象添加ID文档广泛地公开给本系统的普通用户。
[0072] 此外当用户3指示他或她自己的客户终端执行添加ID文档“文档3”的“公开”操作时,该客户终端生成添加ID文档“文档6”,其包括管理ID 312“文档6”、父ID 314“文档3”和操作类型“公开”,并且用随后被注册到文档管理服务器10的添加ID文档“文档6”替换添加ID文档“文档3”。因此,管理ID“文档6”的记录被注册到派生关系DB 110。
[0073] 此后,当用户3经由电子邮件等发送添加ID文档“文档6”给用户4并且用户4借助他或她的客户终端观看添加ID文档“文档6”时,客户终端用新添加ID文档“文档7”替换添加ID文档“文档6”,并且将新添加ID文档“文档7”注册到文档管理服务器10,在新添加ID文档“文档7”中反映了观看操作。
[0074] 然后,用户2添加关于添加ID文档“文档5”的编辑。例如,当需要修正曾经被填写和公开的文档内容时,用户2执行关于所公开的添加ID文档的编辑。然后,作为编辑结果获取的添加ID文档“文档8”被注册到文档管理服务器10。此后,当用户2还进一步指示执行添加ID文档“文档8”的“公开”操作时,其中已经反映“公开”操作的添加ID文档“文档9”被注册到文档管理服务器10。
[0075] 此外,当用户3执行曾经被公开的添加ID文档“文档6”的编辑时,其中已经反映编辑的添加ID文档“文档10”被注册到文档管理服务器10。
[0076] 此后,用户1观看在他或她自己的客户终端中呈现的添加ID文档“文档1”(即原件表格),以便确认内容。因此,客户终端生成已经反映观看操作的添加ID文档“文档11”并将该添加ID文档“文档11”注册到文档管理服务器10。此时,出现在客户终端的添加ID文档“文档1”被添加ID文档“文档11”替换。图5和图6示出了从文档“文档1”派生的文档或此时派生关系DB 110内操作的状态。此时,用户3尚未执行添加ID文档“文档10”的“公开”操作。
[0077] 在上述描述中,例如,参考派生关系DB 110的数据内容,已经描述了与本系统中的文档操作相关的信息注册。
[0078] 再次参照图4,响应于来自客户终端20的包括管理ID的服务请求,请求处理单元140使用派生关系DB 110来提供服务。由请求处理单元140提供的服务例如可以是用于检索与对其请求服务的管理ID相对应的文档最新版本(最新版本文档)的服务。作为进一步的服务示例,可以提供与对其请求服务的管理ID相对应的起始文档(原件文档)或与该起始点相关的日志信息。作为另一个服务示例,可以提供管理ID的历史,即,从起始点经过该管理ID的文档所经历的操作的日志(例如,指示谁、什么时候、执行了什么操作类型的信息列表)。另一个服务示例可以是用于从各个用户收集与该管理ID相对应的原件表格的填写结果的服务。
[0079] 在客户终端20所保存的添加ID文档的基础上发出服务请求。例如,当用户通过客户终端20的文档操作单元200打开添加ID文档时,文档操作单元200使用派生关系提供菜单列表服务,并接受用户从菜单指定的服务。然后,文档操作单元200向文档管理服务器10的请求处理单元140发送将添加ID文档的管理ID和指示指定服务的代码包括在内的服务请求。这里,除了管理ID和指示服务的代码之外,将提供指令的用户的标识信息和用户输入的认证信息等包括在内的其他信息也被从客户终端20发送到请求处理单元140。
[0080] 作为另一个示例,上述服务菜单可与对象类型(即,添加ID文档)相关联,并注册到客户终端20的操作系统中。在该情况下,响应于诸如右键点击的预定操作(该操作是用户关于显示在操作系统提供的文件管理屏幕400上的添加ID文档的图标410或414执行的),操作系统将与该添加ID文档相对应的菜单420显示到屏幕上,如图7所示。在所示示例中,由图标410或414指示的添加D文档可以由标记411从其他类型的文件412中区分,所述标记指示本系统的添加ID文档。当用户从菜单420上的服务条目中选择了期望的服务时,客户终端20请求文档管理服务器10执行所选择的服务条目。
[0081] 作为进一步示例,可想到将用户指定的服务看作是一个“操作”并给该“操作”分配新管理ID。在该情况下,可以生成将作为操作类型的指定服务代码和添加ID文档的管理ID(其在指定时被用作父ID)包括在内的添加ID文档,并将其作为服务请求发送到文档管理服务器10。在该情况下,在如此接收的添加ID文档中所包括的操作类型信息的基础上,请求处理单元140确定要提供的服务并当追踪派生关系时使用类似地包括在添加ID文档中的父ID作为开始点。
[0082] 一旦从客户终端20接收到服务请求,请求处理单元140从在服务请求时指定的管理ID开始,遍历由该管理ID和在派生关系DB 110中注册的父ID的派生关系形成的树,并在作为遍历结果获取的信息的基础上执行由用户请求的服务。
[0083] 将参照图8和图9描述当“填写表格的收集”被作为一个服务请求示例而被请求时,由请求处理单元140执行的处理过程。在下面将描述的特定示例中,假设,使用图5和图6所示的派生关系DB 110的数据内容,用户1在他或她自己的客户终端20内发出了要求添加ID文档“文档11”的“填写表格的收集”的请求。
[0084] 在该过程中,请求处理单元140从该请求中提取作为处理对象而被包括的管理ID,从客户终端20接收的“填写表格的收集”,并将管理ID设置为目标ID(S1)。请求处理单元140然后从派生关系DB110获取相应于该目标ID的记录(S2)。这里,相应于该目标ID的记录指的是其中将作为条目“管理ID”的值的目标ID包括在内的记录。请求处理单元140然后检查所获取的记录中操作类型条目的值是否是“注册”(S3),并且如果该值不是“注册”,则目标ID的值被记录中父ID的值替换(S4),并且重复步骤S2和S3。步骤S2到S4的循环代表从对其请求服务的管理ID追踪派生关系的树结构的处理,从而搜索原件表格的“注册”操作,所述原件表格是起始点(根)。当步骤S3的确定结果为“是”时,此时目标ID与“注册”操作相对应,所述“注册”操作是“根”。在图5所示的示例中,通过从管理ID“文档11”追踪树结构,可以最终到达作为根的管理ID“文档1”。
[0085] 当到达了作为根的“注册”操作时,请求处理单元140此时搜索目标ID(根)的子ID(S5)。特别地,目标ID的子ID对应于记录中的“管理ID”,所述记录包括目标ID作为派生关系DB 110中“父ID”的值。一旦识别了目标ID的所有子ID,请求处理单元140执行这些子ID中每一个的如图9所示的下行(descendent)搜索处理(S6)。
[0086] 在下行搜索处理(S6)中,请求处理单元140指定子ID作为目标ID(S11),并从派生关系DB 110中获取与该目标ID对应的记录(S12)。请求处理单元140然后确定记录中的操作类型的值是否是“公开”(S13),并且如果值是“公开”,则将该记录放入中间结果列表(S14)。这里,中间结果列表是在客户终端20的存储设备上创建的,所述存储设备用来存储信息,所述信息可以用作获取所请求处理的结果的材料。如果步骤S13中操作类型不是“公开”,则跳过步骤S 14中的处理。然后请求处理单元140搜索目标ID的子ID(S15),并且确定是否识别了子ID(S16)。如果识别了子ID,则请求处理部件140递归执行对每个子ID的后继搜索处理(S6)。当对所有的子ID的后继搜索处理完成时,将完成对象目标ID的处理。即使在步骤S16没有识别出子ID,也将完成关于对象目标ID的处理。
[0087] 再次参照图8所示的过程,当对根添加ID文档的所有子ID的后继搜索处理(S6)完成时,此时的中间结果列表已经存储了在所有从根ID文档衍生的添加ID文档之中所有相应于包括操作类型“公开”的ID文档的记录。然后请求处理单元140,例如,在操作时间和日期以及操作者的值的基础上,将存储在中间列表中的记录排序,以便获取这些记录中每个操作者的最新记录(S7)。作为响应于请求的搜索结果,请求处理单元140还给发出该请求的用户1提供与对每个操作者获取的最新记录相对应的添加ID文档(S8)。这里,可能是属于如下情况:并没有将操作者是发出请求的用户1的添加ID文档作为搜索结果来提供。
[0088] 在图6所示的示例中,例如,以步骤6中的处理,分别具有管理ID“文档5”、“文档6”、“文档9”的三个记录被存储在中间结果列表中。在其中,具有管理ID“文档9”的记录是用户2的最新记录,并且具有管理ID“文档6”的记录是用户3的最新记录,并且这些记录被作为搜索结果而提供给发出请求的用户1。
[0089] 图10示出了由文档管理服务器10提供给发出请求的用户1的搜索结果显示屏幕500的示例。在该示例中,搜索结果列表示出了每个检索的记录的操作者,相应于每个记录的文档内容的大小,以及表明是否需要获取每个记录的复选框512。此外,在该示例中,还提供了用于表明列表510中所有记录的收集所得的复选框514。尽管在图10的示例中显示了操作者和文档内容大小,但任何其他包括在记录中的条目都可以显示在列表510中。例如,该搜索结果显示屏幕510可以作为网页提供。
[0090] 用户(在该示例中是用户1),通过在相应的复选框512打上勾号来选择用户希望在列表510所示的记录中获取的记录(其相应于添加ID文档)。框520然后显示作为从列表510获取的对象来选择的记录的总大小。当用户按下获取按钮530时,客户终端20将所选择记录的管理ID包括在内的获取请求发送给文档管理服务器10的请求处理单元140。另一方面,当用户按下取消按钮540时,客户终端20关闭屏幕500而不发出获取请求。此外,可能提供一个用户界面屏幕,用于指定作为获取对象所选择的文档的存储位置和/或所存储文档的文件名。在这种情况下,响应于获取请求从文档管理服务器10提供的添加ID文档根据屏幕上所示的指示而存储。
[0091] 一旦从客户终端20接收到获取请求,请求处理单元140搜索派生关系DB 110寻找相应于在该请求中包括的每个管理ID的记录,并进一步搜索文档DB 100寻找相应于所检索的每个记录的文档内容。然后,请求处理单元140对每个检索的文档内容生成包括文档内容的新添加ID文档,并将该添加ID文档提供给发出请求的用户的客户终端。该新添加ID文档包括由文档管理服务器10新分配的管理ID和包括在获取请求中作为父ID值的管理ID。此外,对于该新添加ID文档,操作类型是“获取”,操作者是发出该请求的用户,并且操作时间和日期是新添加ID文档生成时的时间和日期。例如,在图5所示的状态中,当用户1获取了用户2的填写表格“文档9”和用户3的填写表格“文档6”时,派生关系DB110的数据内容将例如是图11的所示的。特别地,在图11所示的示例中,具有管理ID“文档12”和“文档13”的新文档被添加到图5所示的数据内容。
[0092] 应当注意的是,请求处理单元140响应于获取请求所执行的处理不局限于上述示例。作为选择,请求处理单元140可以从派生关系DB 110和文档DB 100获取添加ID文档,其包括元信息记录和相应于包括在获取请求中的管理ID的文档内容,并将如此获取的添加ID文档返回到客户终端。在该示例中,响应于包括管理ID“文档6”的获取请求,请求处理单元140将添加ID文档“文档6”返回给请求用户。一旦接收响应于获取请求的添加ID文档,客户终端20基于该添加ID文档的管理ID生成新管理ID,并用该新值覆盖该添加ID文档的管理ID。客户终端20还用添加ID文档的管理ID覆盖父ID。此外,客户终端20将添加ID文档中操作类型的值改变为“获取”,将操作者改为发出该获取请求的用户1,并还会改变操作时间和日期。然后,客户终端20将如上所述改变的添加ID文档存储到指定的存储位置,并还将添加ID文档注册到文档管理服务器10中。
[0093] 这里,当客户终端20以添加ID文档的形式将服务请求发送给文档管理服务器10时,该添加ID文档也被注册到文档管理服务器10。例如,在上述示例中,如图12所示,除了与“填写表格的收集”的操作相对应的记录“文档12”,实际上由请求用户获取的与该填写表格相对应的记录“文档13”和“文档14”被注册。
[0094] 此外,为了仅授权注册原件表格的用户执行“填写表格的收集”,请求处理单元140可以执行用户认证。例如,当客户终端20发出服务请求时,指示服务执行的用户的标识信息可以被包括在服务请求中。在这种情况下,一旦接收到该服务请求,请求处理单元140从包括在该请求中的管理ID开始追踪派生关系的树结构以便找到根记录的操作者。如果找到的操作者匹配请求用户的标识信息,那么请求处理单元140可以确定该服务请求是从授权用户发出的。当服务请求被以添加ID文档的形式发送到请求处理单元140,指示服务执行的用户的标识信息被包括在该添加ID文档中。这里,除了包括在添加ID文档中的用户标识信息,还使用户输入诸如密码等的认证信息,并且基于该认证信息执行用户认证。
[0095] 下面将描述修改的示例。在该修改示例中,考虑到原件表格被更新的可能性,将提供允许用户获取相应于用户拥有的添加ID文档的最新版本的结构。
[0096] 例如,假设,在图5和图6所示的状态中,用户1打开添加ID文档“文档1”并编辑该文档,并进一步执行关于所编辑结果的“公开”操作。添加ID文档的树结构和派生关系DB110的相应数据内容分别在图13和图14中示出。在图13中,为了不使图复杂,省略了“文档2”之下的子树和“文档3”之下的子树。如在这些图中所示,通过上述一系列操作,用户
1的客户终端20中的添加ID文档“文档11”首先改变为添加ID文档“文档12”,然后进一步改变为添加ID文档“文档13”。在该处理过程中,编辑结果的文档内容被与内容ID“内容6”关联注册到文档DB 100。添加ID文档“文档13”的操作类型是“公开”,其也被注册到派生关系DB 110。然后假设在图13和图14所示的状态中,例如,用户3经由例如图7所示的用户界面屏幕发出关于添加ID文档“文档10”的“获取最新版本表格”请求。将描述当接收处于上述状态的“获取最新版本表格”请求时,请求处理单元140执行的处理过程示例。
[0097] 在该情况下,请求处理部件140根据例如图15和图16所示的过程获取最新版本表格。在图15所示过程中,请求处理单元140首先将作为处理对象包括在从客户终端20接收的请求中的管理ID设置为目标ID(S21),然后从派生关系ID 110获取相应于该目标ID的记录(S22)。请求处理单元140进一步将相应于该目标ID的记录放入第一中间列表(S23)。然后,请求处理单元140检查记录中的操作类型条目的值是否是“注册”(S24),并且如果值不是“注册”,用记录中父ID的值替换目标ID的值(S25),并重复步骤S22到S25。通过步骤S22到S25的循环,从包括在获取请求中的管理ID到树的根的树结构路径上出现的所有记录(即,与“注册”操作相对应的记录)都被存储到第一中间列表。
[0098] 如果步骤S24中的确定结果为“是”,请求处理单元140搜索此时目标ID的子ID(即,树结构的根)(S26),并执行如图16所示的每个子ID的后继搜索处理(S27)。
[0099] 在后继搜索处理(S27)中,请求处理单元140指定相应于该目标ID的子ID(S31),并从派生关系DB 110获取相应于该目标ID的记录(S32)。然后请求处理单元140确定记录中的操作类型的值是否是“公开”(S33),并还确定记录中操作者的值是否与执行由步骤S22到S25的循环所指定的“注册”操作的操作者相同(S34)。这里,首先执行步骤S33或步骤S34。如果在步骤S33和步骤S34中的确定结果为“是”,请求处理单元140将该记录放入第二中间结果列表(S35)。另一方面,如果步骤S33和S34的确定结果至少有一个为“否”,则跳过步骤S35中的处理。请求处理单元140然后搜索该目标ID的子ID(S36)并确定是否识别了任何子ID(S37)。如果识别了任何子ID,请求处理单元140递归地执行关于每个子ID的后继搜索处理(S27)。当对所有子ID完成了后继搜索处理或在步骤S37没有识别子ID时,关于该目标ID的处理完成。
[0100] 再次参照图15所示的过程,当关于根添加ID文档的所有子ID的后继搜索处理(S27)完成时,由“注册”操作的操作者所公开的所有添加ID文档就已经被存储在第二中间结果列表中。这里,由“注册”操作的操作者所公开的添加ID文档是原件表格或其更新版本。请求处理单元140从存储在中间结果列表中的记录中获取最新记录(S28)。与如此获取的最新记录相对应的添加ID文档是表格的最新版本。
[0101] 此外,请求处理单元140从存储在第一中间结果列表的记录中提取其操作者的值与“注册”操作的操作者的值相同并且同时操作类型的值是“注册”或“公开”的记录,并进一步从如此提取的记录中获取最新记录(S29)。在步骤S29中获取的最新记录对应于没有填写的表格(将其称为原件表格),并且该表格也是由发出获取请求的用户作为请求对象所指定的添加ID文档的源(即,该示例中的添加ID文档“文档10”)。
[0102] 响应于该请求,请求处理单元140将步骤S28中获得的最新版本表格和步骤S29中获得的原件表格作为搜索结果提供给请求源(该示例中是用户3)(S30)。
[0103] 在图13所示的示例中,例如,通过步骤S27中的处理,具有管理ID“文档1”和“文档13”的两个记录被存储在第二中间结果列表,并且这些记录中,相应于最新记录的添加ID文档“文档13”在步骤S28被获得。此外,在步骤S29中,存储在第一中间结果列表的记录“文档10”、“文档6”、“文档3”和“文档1”中(同时参见图6)满足上述条件的添加ID文档“文档1”被获得。
[0104] 图17示出了基于上述处理的搜索结果显示屏幕600的示例,文档管理服务器10将该屏幕提供给发出请求的用户3。在该示例中,搜索结果列表610表明所检索的每个原件表格和最新版本表格的大小、创建或更新的时间和日期(即,“操作时间”)。这里,除了文件的大小以及时间和日期,任何其他包括在记录中的条目都可以被包括在列表610中。用户查看该显示以便确定是否获取了最新版本表格。一旦确定获取最新版本表格,用户按下获取按钮620。响应于此,客户终端20将包括相应于该最新版本表格的管理ID的获取请求发送给文档管理服务器10的请求处理单元140。如果用户按下取消按钮630,客户终端20关闭该屏幕600而不发送获取请求。
[0105] 一旦从客户终端20接收到最新版本表格的获取请求,请求处理单元140搜索派生关系DB 110寻找相应于包括在该请求中的管理ID的记录,并将包括所检索记录的添加ID的文档(即最新版本表格)和相应文档内容提供给发出请求的用户的客户终端20。然后客户终端20基于所接收的添加ID文档中所包括的管理ID生成新管理ID,并用新值覆盖添加ID文档中的管理ID。客户终端20还用添加ID文档的管理ID覆盖添加ID文档中的父ID。此外,客户终端20将添加ID文档中的操作类型的值更改为“获取”,将操作者更改为发出获取请求的用户3,并还改变操作时间。客户终端20然后存储如此改变的添加ID文档,并还将该添加ID文档注册到文档管理服务器10。
[0106] 尽管在上述示例性实施例和修改示例中,管理ID是由每个客户终端20发出的,但是文档管理服务器10可以代替发出管理ID。在该情况下,当执行关于添加ID文档的操作时,客户终端20生成文档数据,其包括操作之前的添加ID文档中的管理ID作为父ID 314,该操作的日志信息316,操作之后获得的文档内容320,而没有管理ID 312,并将该文档数据发送给文档管理服务器10。文档管理服务器10然后分配新管理ID给所接收的文档数据并将该管理ID和包括在文档数据中的信息注册到文档DB 100和派生关系DB 110。文档管理服务器10还将所分配的管理ID设置到文档数据中,以便生成添加ID文档,并将该添加ID文档返回给客户终端20。客户终端20然后用所接收的添加ID文档替换操作之前的添加ID文档。如此,示例实施例和修改示例的处理可以用其中由文档管理服务器10分配管理ID的结构相似地执行。
[0107] 此外,尽管在上述示例性实施例和修改示例中包括管理ID 312、父ID314、日志信息316、和文档内容329的添加ID文档300被存储在客户终端20,但是可以采用只有管理ID被存储在客户终端20而其他信息被存储到文档管理服务器10的结构。在该情况下,当客户终端要执行关于文档的操作时,相应于该文档的管理ID被发送到文档管理服务器10,其然后将相应文档提供给客户终端20。
[0108] 这里,当文档管理服务器10分配管理ID时,该文档管理服务器10生成相应于获取操作的管理ID并将与文档关联的管理ID提供给客户终端20。文档管理服务器10也在派生关系DB 110中记录关于获取操作的日志信息(操作时间和日期,操作者等),先前的管理ID(即父ID),和所分配的管理ID。客户终端20用所接收的管理ID替换发送给文档管理服务器10的管理ID,并打开所接收的文档。用户然后执行关于所打开的文档的诸如观看和编辑之类的操作。当关于该文档的操作完成时,客户终端20将由该操作获取的文档与关于该操作的日志信息和管理ID一起发送给文档管理服务器10。文档管理服务器10分配新管理ID给所接收的文档并将具有新管理ID的文档注册到派生关系DB 110,并进一步将从客户终端20接收的管理ID注册到派生关系DB 110作为父ID。此外,文档管理服务器10将日志信息和操作之后所接收的文档分别注册到派生关系DB 110和文档DB 100。文档管理服务器10然后将新分配的管理ID返回给客户终端20。客户终端20用所接收的管理ID替换先前的管理ID。以上述处理,操作间的派生关系将被收集到文档管理服务器10。
[0109] 同时,在由客户终端20分配管理ID的结构中,文档管理服务器10可以将相应于从客户终端20接收的管理ID的文档返回给客户端。客户终端20打开所接收的文档,以便用户可以执行关于该文档的操作。操作完成之后,客户终端20将新管理ID分配给作为操作结果获取的文档,并将上述包括该新管理ID和相应信息的添加ID文档发送给文档管理服务器10。然后客户终端20只将管理ID存储在添加ID文档中并删除其他信息。
[0110] 尽管在上述示例中描述了表格(模板)文档,但是上述示例性实施例可以相似地应用于收集用户关于除了表格文档外的任何文档的操作结果。
[0111] 上述系统中的文档管理服务器10典型地是借助普通计算机通过执行程序来实现的,所述程序描述上述文档管理服务器的每个单元的功能或处理内容。例如,如图18所示,计算机包括电路结构作为硬件,所示电路结构中CPU(中央处理单元)40,存储器(主存储器)42,各种I/O(输入/输出)接口44等经由总线46互连。此外,例如,用于读取诸如CD和DVD和闪存之类的各种标准的便携式非易失性记录媒介的硬盘驱动器48和磁盘驱动器50,经由I/O接口44被连接到总线46。这种驱动48或50用作存储器的外部存储设备。描述示例性实施例处理内容的程序经由诸如CD或DVD之类的记录媒介或经由网络被存储在诸如硬盘驱动器48的固定存储设备中,并然后被安装在计算机中。当存储在固定存储设备中的程序被读入到存储器并由CPU执行时,示例实施例的处理被执行。相似地,通过使普通计算机执行描述上述文档处理程序的程序来实现客户终端20。
[0112] 本发明的示例性实施例的前述描述是为了说明和描述的目的而提供的。其并不是穷举性的,也不应将本发明限制为所公开的具体形式。显而易见的是,对本领域的技术人员来说,各式各样的修改和变更是显然的。选择和描述这些实施例是为了更好地解释本发明的原理和其实际应用,由此,使其他本领域的技术人员能够理解本发明的各种实施例并且进行各种修改以实现特定的目的。本发明的范围由所附的权利要求和其等价体来界定。