文档管理服务器、系统和方法以及该系统的客户机和节点的制作方法

文档序号:6461339阅读:117来源:国知局
专利名称:文档管理服务器、系统和方法以及该系统的客户机和节点的制作方法
技术领域
本发明涉及一种文档管理装置,该装置用于管理电子文档以及提 供用户请求的电子文档。
背景技术
已经公开了为用户提供数据的技术。根据其中一项技术,用户接 收包含访问可用文件所需的参考信息的电子邮件,并且,基于电子邮 件中包含的参考信息,从文件服务器获取期望的文件。上述已公开的技术允许文件服务器基于参考信息管理哪位用户 已经请求了文件。既使关于相同文件的参考信息被提供给多个用户, 文件服务器也能够管理哪些用户己经接收到了参考信息。然而,因为 参考信息是访问文件所需的信息,所以位于给定区域的给定文件的参 考信息总是相同的。所以,如果某个用户把所提供的参考信息分发给 其他用户并且其他用户基于所分发的参考信息请求获取文件,则文件 服务器不能识别哪位用户最初接收的该参考信息。发明内容本发明提供一种系统,其中,即使当相同文件被提供给多个用户 时,也能够识别请求该文件所需的信息最初提供给的用户。根据本发明的一个方面,提供了一种文档管理服务器,其包括 识别信息提供单元,该单元用于从客户机接收获取访问文档所需的识 别信息的请求,为接收的请求产生识别信息,以及向客户机发送产生 的识别信息;关系信息管理单元,该单元用于管理所请求的文档和为 该请求产生的识别信息的关系信息;以及历史信息管理单元,该单元 用于管理发送请求的客户机的信息,所述请求与识别信息相关。根据本发明的另一个方面,提供了一种文档管理系统,其包括识别信息提供单元,该单元用于从客户机接收获取访问文档所需的识 别信息的请求,产生接收的请求的识别信息,以及向客户机发送产生的识别信息;关系信息管理单元,该单元用于管理所请求的文档和为 该请求产生的识别信息的关系信息;以及历史信息管理单元,该单元 用于管理发送请求的客户机的信息,所述请求与识别信息相关。根据本发明的另一个方面,提供了一种计算机可读的存储介质, 该存储介质存储计算机可以执行的指令的程序,以用作文档管理服务 器。功能包括从客户机接收获取访问文档所需的识别信息的请求; 为接收的请求产生识别信息;向客户机发送产生的识别信息;管理所 请求的文档和为请求产生的识别信息的关系信息;管理发送请求的客 户机的信息,该请求与识别信息相关。根据本发明的另一个方面,提供了一种计算机可读的存储介质, 该存储介质存储计算机可以执行的指令的程序,以用作通过网络获取 文档的客户机。功能包括识别信息获取单元,用于发送指明待获取 的文档的获取请求,以及获取作为对获取请求的响应的识别信息;文 档获取单元,用于发送指定获取的识别信息的文档访问请求,以及获 取作为对访问请求的响应的与该识别信息相关的文档和更新信息;以 及识别信息改变单元,用于根据更新信息改变由访问请求指定的识别 信息。根据本发明的另一个方面,提供了 一种连接到对等(peer-to-peer) 网络的节点,其使用分布式散列(hash)表并且与其它节点共享文档。 所述节点包括文档注册单元,用于产生包含待注册文档的散列值的 第一元信息,以及把待注册文档和第一元信息发送到他们应该存储的 节点;快捷方式发布单元,用于响应浏览文档的请求而获取与该文档 对应的第一元信息,以及产生包含第一元信息的散列值的第二元信 息,发布包含第二元信息的散列值的快捷方式,以及向提出请求的用 户提供该快捷方式;关系信息管理单元,用于管理第一元信息和第二 元信息的关系信息;以及历史信息管理单元,用于管理被提供快捷方 式的用户的信息以及包含在快捷方式中的第二元信息的散列值。根据本发明的另一个方面,提供了一种文档管理服务器,用于管理对文档的访问的历史信息。该文档管理服务器包括识别信息提供 单元,用于从客户机接收访问文档的请求,以及为接收的请求产生识 别信息;以及一种历史信息管理单元,用于管理所请求的文档的信息、 产生的识别信息、以及已经基于识别信息发送访问文档的请求的客户 机的信息。根据本发明的另一个方面,提供了一种文档管理方法,其中包括: 从客户机接收获取访问文档所需的识别信息的请求;为接收的请求产 生识别信息;向客户机发送产生的识别信息;管理请求的文档与为请 求产生的识别信息的关系信息;以及管理发送与识别信息相关的请求 的客户机的信息。根据本发明的另一个方面,提供了一种文档管理系统的客户机。 该客户机包括识别信息获取单元,用于向文档管理服务器发送获取 请求,以及接收作为响应的识别信息;文档获取单元,用于发送指明 所获取的识别信息的文档访问请求,以及获取作为访问请求的响应 的、与该识别信息相关的文档和更新信息;以及识别信息改变单元, 用于根据更新信息改变由访问请求指明的识别信息。附图简述将参照附图详细描述本发明的实施例,其中;

图1是显示本发明的一个实施例的文档管理系统的一般结构的 示图;图2是该实施例的文档管理服务器的功能框图;图3是显示包含在复本拷贝快捷方式中的数据的实例的示图;图4A是显示表示原始拷贝ID和复本拷贝ID的派生关系的树形结构数据的实例的示图;图4B是显示表示原始拷贝ID和复本拷贝ID的派生关系的树形结构数据的实例的示图;图5A是显示表示原始拷贝ID和复本拷贝ID的派生关系的树形结构数据的实例的示图;图5B是显示表示原始拷贝ID和复本拷贝ID的派生关系的树形结构数据的实例的示图;图6是显示由历史信息管理单元管理的历史信息的实例的示图; 图7是所述实施例的客户机的功能框图;图8是显示由文档管理服务器提供给客户机的文档列表的实例 的示图;图9是显示当执行文档注册事件时,由文档管理服务器和客户机 执行的处理过程的示图;图10是显示当执行复本拷贝快捷方式发布事件时,由文档管理 服务器和客户机执行的处理过程的示图;图11是显示当执行文档提供事件时,由文档管理服务器和客户 机执行的处理过程的示图;图12是显示表示原始拷贝ID和复本拷贝ID的派生关系的树形 结构数据的实例的示图;图13是显示由历史信息管理单元管理的历史信息的实例的示图;图14是显示第一变形的文档管理系统的一般结构的示图;图15是第一变形的文件服务器的功能框图;图16是显示由文档替换单元执行的文档替换的处理过程的流程图;图17是显示由文件服务器提供给客户机的文档选择屏幕的实例 的示图;图18A是显示所述实施例的第二变形的文档管理系统的一般结 构的示图;图18B是显示通过Chord构造的网络的示图,该Chord是一种 散列表;图19是显示存储在第二变形中的节点中的对象的示图; 图20A是显示描述原始拷贝元信息的XML文档的标签结构的实 例的示图;图20B是显示描述复本拷贝元信息的XML文档的标签结构的实 例的示图;图21A是显示表示原始拷贝元信息和复本拷贝元信息的派生关 系的树形结构数据的实例的示图;图21B是显示由结点管理的历史信息的数据结构的实例的示图;图22是显示由第二变形中的结点执行的处理过程的流程图,所 述处理过程用于注册新文档,以及为浏览用户提供对应于该文档的复 本拷贝快捷方式;以及图23是显示由第二变形中的结点执行的、使用复本拷贝快捷方 式浏览文档的处理过程的流程图。
具体实施方式
下面,将参照附图描述本发明的实施例。图1是显示一个实施例的文档管理系统的一般结构的示图。如图 l所示,该系统包括文档管理服务器10和客户机30,都连接到网络 50,例如LAN (局域网)或英特网。在本系统中,文档管理服务器 10管理文档的原始拷贝。为了浏览由文档管理服务器10管理的文档, 客户机30向文档管理服务器10发送识别信息,其用于识别将要浏览 的文档。基于识别信息,文档管理服务器IO识别原始拷贝,复制包 含在原始拷贝中的文档,并把包括复制的文档的数据作为复本拷贝提 供给客户机30。这里使用的术语"文档"是指所有在网络50上可传 输的数据,例如文本文件、图像文件、声音文件、以及移动图像文件。图2是文档管理服务器10的功能框图。在图2中,文档注册单 元12执行文档注册事件。具体地,响应来自客户机30的文档注册请 求,文档注册单元12创建一个由包含在文档注册请求中的文档和该 文档的属性组成的集合,并把该集合作为原始拷贝注册到文档管理单 元22。注册原始拷贝时,文档注册单元12产生一个原始拷贝ID,其 唯一地标识该原始拷贝,并将彼此相关的原始拷贝和原始拷贝ID注 册到文档管理单元22中。文档注册单元12将产生的原始拷贝ID注 册到存储于派生关系信息存储单元24的派生关系信息中。派生关系 信息将在后面描述。这里使用的文档的属性是指该文档的文件名、创建该文档的用户名、该文档的创建日期等。原始拷贝ID,最好是结构(pattern)难以猜测的字符串,可以是 基于己知的随机数产生算法而产生的随机数。或者,原始拷贝ID可 以是对原始拷贝的特定数据计算的、数据大小足够大的散列值。例如, 诸如SHA-256算法这样的已知的消息摘要算法被用于计算散列值。 原始拷贝的特定数据是,例如,文档的内容或文档的属性。描述文档 的内容的散列值和文档的属性的散列值的XML文档也可以被用作原 始拷贝的特定数据。该XML文档也可以包含另外的随机数。快捷方式提供单元14执行复本拷贝快捷方式发布事件。具体地, 响应来自客户机30的复本拷贝快捷方式请求,快捷方式提供单元14 发布对应于包含在复本拷贝快捷方式请求中的原始拷贝ID的复本拷 贝快捷方式,并将所发布的复本拷贝快捷方式提供给客户机30。复 本拷贝快捷方式是包含客户机30浏览文档所需的参考信息的文件。 具体地,复本拷贝快捷方式包含用于浏览文档的表示文档管理服务器 10的主机名的访问站点信息以及请求URL (统一资源定位器)、与待 浏览的文档的原始拷贝ID相关的复本拷贝ID、以及复本拷贝快捷方 式的属性。应当注意到复本拷贝快捷方式不包含该文档的实体。复本 拷贝快捷方式的文件格式比如是PDF (便携式文档格式)。客户机30参照包含在复本拷贝快捷方式中的参考信息并向参考 信息中包含的请求URL发送指定了复本拷贝ID的文档浏览请求,以 获取包含待浏览文档的复制文档的复本拷贝。复本拷贝ID可以是如上所述的随机数或复本拷贝的属性的散列 值,复本拷贝ID是与任何已经产生的原始拷贝ID以及其它复本拷贝 ID都不相同的唯一的值。复本拷贝的属性是,例如包含在复本拷 贝快捷方式请求中的原始拷贝ID、复本拷贝快捷方式请求的接收时 间、或请求复本拷贝快捷方式的客户机30的用户名。图3显示了包 含在复本拷贝快捷方式中的数据的实例。图3显示复本拷贝快捷方式 中包含的数据复本拷贝ID102、主机名104、以及复本拷贝快捷方 式的创建日期和时间106。产生复本拷贝ID后,快捷方式提供单元14更新存储在派生关系信息存储单元24中的派生关系信息。派生关系信息表示原始拷贝ID 与对应于原始拷贝ID的复本拷贝ID的派生关系,并且它的数据结构 被表示为树(形)结构。文档管理服务器IO参照派生关系信息确定 从哪个原始拷贝ID产生的复本拷贝ID。图4A是显示由派生关系信 息表示的派生关系的实例的示图。图4A显示快捷方式提供单元14 已经为原始拷贝ID[O]产生了复本拷贝ID[1-1]和复本拷贝ID[l-2]。当 快捷方式提供单元14为具有图4A所示的派生关系的原始拷贝ID[O] 产生另一个复本拷贝ID[l-3]时,快捷方式提供单元14如图4B所示 更新派生关系,从而复本拷贝ID[l-3]成为原始拷贝ID[O]的子节点。如图2所示,文档提供单元16执行文档提供事件。具体地,响 应来自客户机30的文档浏览请求,文档提供单元16从文档浏览请求 中读取复本拷贝ID,并参照派生关系信息识别作为该复本拷贝ID的 根节点的原始拷贝ID。接下来,文档提供单元16从文档管理单元22 获取与识别出的原始拷贝ID相关的原始拷贝,并且复制原始拷贝中 包含的文档。文档提供单元16以和快捷方式提供单元14同样的方式 产生一个新的复本拷贝ID,并在派生关系信息中注册该产生的复本 拷贝ID,从而新的复本拷贝ID成为由文档浏览请求所指明的复本拷 贝ID的子节点。另外,文档提供单元16向客户机30提供一个复本 拷贝,其包括复制的文档和新的复本拷贝ID。客户机30用复本拷贝 中包含的新的复本拷贝ID更新客户机30上维护的复本拷贝快捷方式 中包含的复本拷贝ID。文档提供单元16产生的复本拷贝ID是以与快捷方式提供单元 14产生的复本拷贝ID同样的方式产生的;也就是说,它可以是随机 数或复本拷贝ID的属性的散列值。图5A是显示派生关系的实例的 示图,由文档提供单元16产生的复本拷贝ID被添加到该派生关系 中。图5B是显示派生关系的示图,该派生关系表示文档提供单元16 已为文档浏览请求所指定的复本拷贝ID[1-1]产生了一个新复本拷贝 ID[2-1]。历史信息管理单元18管理由文档注册单元12、快捷方式提供单 元14、以及文档提供单元16执行的事件的历史信息。也就是说,当文档注册单元12执行文档注册事件时,历史信息管理单元18管理以下历史信息请求文档的注册的用户ID、当时产生的原始拷贝ID、以及注册日期和时间。当快捷方式提供单元14执行复本拷贝快捷方式发布事件时,历史信息管理单元18管理以下历史信息请求复本拷贝快捷方式的用户ID、产生的复本拷贝ID、以及产生日期和时间。 另外,当文档提供单元16执行复本拷贝提供事件时,历史信息管理 单元18管理以下历史信息请求该复本拷贝的用户ID (也就是说, 请求文档浏览的用户ID)、当时产生的新的复本拷贝ID (用于更新)、 以及复本拷贝提供日期和时间。图6显示了由历史信息管理单元18 管理的历史信息的实例。如上所述,既使同样的文档被请求,本系统的快捷方式提供单元 14也为每个复本拷贝快捷方式请求产生一个唯一的复本拷贝ID,并 向客户机30提供复本拷贝快捷方式,其中包含所产生的复本拷贝ID。 所以,由如上所述的历史信息管理单元18管理的历史信息指明哪个 复本拷贝快捷方式被提供给哪位用户。因为复本拷贝快捷方式不包含文档的实体,所以接收到复本拷贝 快捷方式的拷贝的第三方必须访问文档管理服务器10以浏览文档。 另外,当用户复制了一个复本拷贝快捷方式并将复制的快捷方式提供 给另一个用户时,也有可能记录另一用户使用哪个复本拷贝快捷方式 (也就是说,该复本拷贝快捷方式最初是为哪位用户产生的)请求浏 览文档。图7是客户机30的功能框图。如图7所示,当在文档管理服务 器10注册新的文档时,文档注册请求单元32向文档管理服务器10 发送包括该文档的文档注册请求。快捷方式请求单元34向文档管理服务器IO发送文档的复本拷贝 快捷方式请求并接收复本拷贝快捷方式。具体地,快捷方式请求单元 34首先从文档管理服务器10获取文档列表。如图8所示,文档列表 存储属性信息,比如文件名、以及客户机30可用的文档的原始拷贝 ID。然后,快捷方式请求单元34向文档管理服务器IO发送复本拷贝 快捷方式请求,该请求指明了从所获取的文档列表中选择的用户选择的文档的原始拷贝ID。随后,.快捷方式请求单元34从文档管理服务 器10接收复本拷贝快捷方式,并在复本拷贝快捷方式存储单元36中 存储所接收的复本拷贝快捷方式,该复本拷贝快捷方式是对复本拷贝 快捷方式请求的响应。浏览请求单元38向文档管理服务器IO请求待浏览的文档的复本 拷贝。具体地,浏览请求单元38从复本拷贝快捷方式存储单元36获 取用户指定的复本拷贝快捷方式。浏览请求单元38向包含在所获取 的复本拷贝快捷方式中的请求URL发送文档浏览请求,其指定包含 在复本拷贝快捷方式中的复本拷贝ID。随后,浏览请求单元38从文 档管理服务器10接收作为对文档浏览请求的响应的复本拷贝,并把 包含在复本拷贝中的文档显示在屏幕上。另外,浏览请求单元38把 包含在之前获取的复本拷贝快捷方式中的复本拷贝ID重写为包含在 所接收的复本拷贝中的新的复本拷贝ID (为更新产生的)。接下来,将参照图9描述文档管理服务器10和客户机30为执行 文档注册事件所执行的处理过程。首先,客户机30向文档管理服务器10发送文档注册请求,其中包含待注册的文档和关于文档内容的元数据(下文称作文档元数据) (S100)。应当注意到,当文档管理服务器10和客户机30通过HTTP (超文本传输协议)相互通信时,客户机30使用HTTP请求向文档 管理服务器10发送文档注册请求。响应接收的文档注册请求,文档管理服务器10为包含在该请求 中的文档产生一个原始拷贝ID (S102)。例如,文档管理服务器10 计算包含在文档注册请求中的文档元数据的散列值(下文称为文档散 列值)并将计算出的文档散列值定义为原始拷贝ID。在这种情况下, 如果客户机30还计算文档的散列值并且在文档注册请求中包括计算 出的值,文档管理服务器10可以检查由客户机30计算的文档散列值 是否匹配由文档管理服务器IO计算的文档散列值,从而确认包含在 所接收的文档注册请求中的数据未被改变。产生原始拷贝ID之后,文档管理服务器10将由待注册文档及其 属性组成的原始拷贝与S102中产生的原始拷贝ID相关联,并将原始拷贝和原始拷贝ID注册到文档管理单元22 (S104)。同时,文档管理 服务器IO使用,例如文档散列值作为文档的文件名并在文档管理单 元22注册该文档作为原始拷贝。注册原始拷贝之后,文档管理服务 器10更新派生关系信息和历史信息(S106)。也就是说,文档管理服 务器10在派生关系信息中添加原始拷贝ID,同时,在历史信息中添 加该事件的内容。随后,文档管理服务器10向客户机30发送注册成 功通知(S108)。另一方面,如果被请求的文档注册失败,则文档管 理服务器10向客户机30发送注册错误通知(S108-2)。如果文档管 理服务器10和客户机30通过HTTP互相通信,则文档管理服务器 10发送HTTP状态码200作为注册成功通知,或发送HTTP状态码 500作为注册错误通知。文档管理服务器10和客户机30根据如上所述的处理过程执行文 档注册事件。接下来,将参照图10描述由文档管理服务器10和客户机30为 执行复本拷贝快捷方式发布事件而执行的处理过程。首先,客户机30向文档管理服务器10发送文档列表请求(S200)。 响应该请求,文档管理服务器10检索对客户机30有效的原始拷贝, 并且,基于作为检索结果的原始拷贝中包含的文档的属性,生成如图 8所示的文档列表(S202)。随后,文档管理服务器10向客户机30 提供该文档列表(S204)。客户机30在屏幕上显示所提供的文档列表并等待用户选择期望 的文档。响应来自用户的文档选择(S206),客户机30向文档管理服 务器10发送复本拷贝快捷方式请求,其中包含所选择的文档的原始 拷贝ID (S208)。响应复本拷贝快捷方式请求,文档管理服务器10产生对应于包 含在请求中的原始拷贝ID的复本拷贝ID (S210),并且发布包含该 复本拷贝ID、访问站点信息、'以及复本拷贝快捷方式的属性的复本 拷贝快捷方式(S212)。另外,文档管理服务器10更新派生关系信息 和历史信息(S214)并且向客户机30提供所发布的复本拷贝快捷方 式(S216)。如果复本拷贝快捷方式的发布失败,那么文档管理服务器10向客户机30发送复本拷贝快捷方式发布错误通知(S216-2)。响应该复本拷贝快捷方式,客户机30在复本拷贝快捷方式存储 单元36中注册复本拷贝快捷方式(S218)。文档管理服务器10和客户机30根据如上所述的处理过程执行复 本拷贝快捷方式发布事件。接下来,将参照图11描述文档管理服务器10和客户机30为执 行文档提供事件而执行的处理过程。首先,客户机30向文档管理服务器10发送文档浏览请求(S300)。 也就是说,客户机30从待浏览的文档的复本拷贝快捷方式获取访问 站点信息和复本拷贝ID,并向访问站点发送文档浏览请求,其中包 含该复本拷贝ID。当复本拷贝快捷方式是PDF文件并且用户打开待浏览的文档的 复本拷贝快捷方式时, 一种预定的PDF插件被启动以解释该复本拷 贝快捷方式,并从复本拷贝快捷方式中读取请求URL和复本拷贝ID。 该PDF插件向具有所指定的请求URL的文档管理服务器10发送一 个HTTP请求,其指定了复本拷贝ID。文档管理服务器10从接收的文档浏览请求中读取复本拷贝ID并 参照该复本拷贝ID和派生关系信息识别该复本拷贝ID的原始拷贝 ID (S302)。例如,假设文档管理服务器IO从文档浏览请求中读取复 本拷贝ID[3-1]。文档管理服务器IO在派生关系信息中检索包含复本 拷贝ID[3-1]的派生关系。如果文档管理服务器10检索到如图12所 示的派生关系作为检索的结果,那么文档管理服务器10就可以识别 出原始拷贝ID[O]是作为复本拷贝ID[3-1]的根节点的原始拷贝ID。然后,文档管理服务器10获取对应于原始拷贝ID的原始拷贝并 产生新的复本拷贝ID (为更新产生的)(S304)。另外,文档管理服 务器10产生包含原始拷贝中包含的文档的复制文档的复本拷贝和新 的复本拷贝ID (用于更新)的复本拷贝(S306)。文档管理服务器10 还更新派生关系信息和历史信息(S308)。随后,文档管理服务器IO 向客户机30提供该复本拷贝(S310)。接收到复本拷贝后,客户机30在屏幕上显示包含在复本拷贝中的复制文档(S312),此外,把为文档浏览请求指定的复本拷贝快捷 方式的复本拷贝ID重写为包含在复本拷贝中的复本拷贝ID (为更新 而产生的)(S314)。如果文档每次被浏览时,复本拷贝快捷方式中的 复本拷贝ID都要以这种方式重写,那么参照派生关系信息和历史信 息的文档管理服务器10就可以管理哪位用户何时以什么频率浏览了 哪个复本拷贝。如果文档管理服务器10和客户机30通过HTTP相互通信,则文 档管理服务器10在S310返回一个HTTP状态码200 (OK)并且客 户机30把PDF文档显示在屏幕上,该文档是作为HTTP响应的主体 发送的。在本系统中,显示的PDF文档只在客户机30的存储器中处 理,甚至不会临时输出到文件。客户机30可以打印但不能保存显示 在客户机30上的文件,也不能编辑显示的文档。接下来,将描述当已经发布了文档浏览请求的客户机30不能从 文档管理服务器IO获取复本拷贝时执行的处理。首先,假设客户机30向文档管理服务器10发送文档浏览请求, 但由于网络错误,文档浏览请求不能到达文档管理服务器10 (S300-2)。在这种情况下,客户机30在屏幕上显示包含在为文档浏 览请求指明的复本拷贝快捷方式中的显示数据(S316)。另外,表示 文档不能被浏览的错误消息也可以显示在屏幕上,例如使用对话框。 当文档管理服务器10发布复本拷贝快捷方式时,这种情况下所显示 的显示数据可以和复本拷贝ID—起产生,并包含在复本拷贝快捷方 式中。接下来,假设客户机30发送的文档浏览请求成功地到达文档管 理服务器10 (S300-3)但文档管理服务器10不能为该请求产生复本 拷贝(S318)。有时因为客户机30的用户认证失败或者在文档管理服 务器10中原始拷贝已经不存在,所以复本拷贝有时不能产生。如果由于某些原因复本拷贝不能被创建,例如上述的任何原因, 则文档管理服务器10向客户机30发送复本拷贝产生错误通知 (S320)。当客户机30和文档管理服务器10通过HTTP相互通信时, 文档管理服务器10发送一个HTTP状态码304 (未改变)、HTTP状态码4xx、或HTTP状态码5xx。在这种情况下,客户机30同样在 屏幕上显示包含在用于文档浏览请求的复本拷贝快捷方式中的显示 数据(S322)。如上所述,既使请求同样的原始拷贝,本实施例的文档管理服务 器10也为各个来自客户机30的复本拷贝快捷方式请求产生唯一的复 本拷贝ID,并且向客户机30提供包括该复本拷贝ID的复本拷贝快 捷方式。另外,文档管理服务器10每次产生复本拷贝ID时都要更新 派生关系信息和历史信息。文档管理服务器IO参照派生关系信息以识别对应于复本拷贝ID 的原始拷贝ID。所以,基于为从客户机30接收的文档浏览请求指定 的复本拷贝ID,文档管理服务器IO可以识别待浏览的原始拷贝并且 向客户机30提供包含在原始拷贝中的文档的拷贝。文档管理服务器10可以参照派生关系信息和历史信息以记住哪 位用户已经发布了哪个原始拷贝的复本拷贝快捷方式。既使当用户复 制了提供给该用户的复本拷贝快捷方式并通过电子邮件将相同的快 捷方式分发给其他用户,并且随后,如果接收到复制的复本拷贝快捷 方式的用户使用它向文档管理服务器10发送文档浏览请求时,文档 管理服务器10也可以基于包含在该请求中的复本拷贝ID识别出对应 于该复本拷贝ID的复本拷贝快捷方式所提供给的用户。也就是说, 文档管理服务器10可以识别哪位用户复制了该复本拷贝快捷方式并 且分发给其它用户。现在将参照图12所示的派生关系信息和图13所示的历史信息描 述上述方法。首先,如图12所示,第一层级122有三个复本拷贝ID,它们是 原始拷贝ID[O]的子结点。这表示有三个复本拷贝快捷方式从原始拷 贝ID[O]产生。图13表示已经被提供了复本拷贝ID[1-1]的用户ID是 用户ID[abc02〗。另外,第二层级124包括两个作为复本拷贝ID[1-1]的子结点的 复本拷贝ID。每次通过使用包含复本拷贝ID[1-1]的复本拷贝快捷方 式浏览文档时更新复本拷贝ID,并且因此,在这种情况下,两个复本拷贝ID的存在表示通过使用包含复本拷贝ID[1-1]的复本拷贝快捷 方式己经浏览了两次文档。也就是说,第二层级表示包含复本拷贝 ID[1-1]的复本拷贝快捷方式已被复制了至少一次。另外,图13所示的历史信息表示对应于第二层级中的复本拷贝 ID[2-1]和复本拷贝ID[2-2]的用户ID分别是用户ID[abcl4]和用户 ID[abcl5]。所以,该信息表示向用户ID[abc02]提供的复本拷贝快捷 方式至少已被复制并分发给了用户ID[abcl4]和用户ID[abcl5],用于 浏览原始拷贝ID[O]的复制的文档。另外,图12所示的派生关系表示作为复本拷贝ID[2-1]的子结点 的复本拷贝ID[3-1]处于第三层级126。该关系表示有其它浏览请求已 经通过使用复本拷贝快捷方式被发出,该复本拷贝快捷方式的复本拷 贝ID是被用户ID[abcl4]的浏览更新的。在这种情况下,如果历史信 息显示使用包含复本拷贝ID[2-1]的复本拷贝快捷方式浏览文档的用 户ID不是用户ID[abcl4],那么这表示用户ID[abcl4]进一步复制了 复本拷贝快捷方式并将其分发给第三方,并且接收到所分发的复本拷 贝快捷方式的第三方使用该复本拷贝快捷方式浏览原始拷贝ID[O]的 复制的文档。如上所述,本实施例中的派生关系信息显示了由文档管理服务器 10发布了多少个原始拷贝的复本拷贝快捷方式。通过使用发布的复 本拷贝快捷方式,派生关系信息还显示了一个文档被浏览了多少次。 另外,如果参考历史信息,派生关系信息还显示了哪位用户使用发布 给哪位用户的复本拷贝快捷方式浏览了文档。当用户使用复本拷贝快 捷方式浏览文档时,包含在复本拷贝快捷方式中的复本拷贝ID被更 新。所以,当用户向另一位用户提供了一个复本拷贝快捷方式时,可 以通过检查复本拷贝快捷方式中的复本拷贝ID是否被更新来检查在 该用户把复本拷贝快捷方式提供给其他用户之前是否使用该复本拷 贝快捷方式浏览过文档。此外,通过向由文档管理服务器10管理的派生关系信息和历史 信息添加特别的信息,对由文档管理服务器IO管理的原始拷贝的访 问可以被如下限制。也就是说,在本系统中,对于每个被创建的复本拷贝快捷方式, 都可以对能使用该复本拷贝快捷方式浏览文档的用户施加限制。例如,当接收到一个来自客户机30的复本拷贝快捷方式请求时,文档 管理服务器10要求客户机30指定被允许使用该复本拷贝快捷方式浏 览文档的用户ID。文档管理服务器10把由客户机30指定的作为浏 览用户的用户ID与复本拷贝ID关联起来并存储它们。随后,当从客 户机30接收到文档浏览请求时,文档管理服务器10检査客户机30 的用户ID是否与浏览用户ID中的一个匹配,以便决定是否向客户机 30提供该复本拷贝,所述浏览用户ID与文档浏览请求所指定的复本 拷贝ID相关联。所以,既使复本拷贝快捷方式被非法复制并分发给 第三方,这种方法也只向之前注册过的浏览用户提供复本拷贝,从而 保护了文档的内容。文档管理服务器IO还可以管理浏览用户的浏览 状态,并且在所有浏览用户浏览过文档之后,禁止对文档的读取。此外,在复本拷贝快捷方式的请求时刻,文档管理服务器10可 以接受来自客户机30的与复本拷贝快捷方式相关的浏览许可期限, 并把所接受的浏览许可期限与复本拷贝ID —同存储。利用这个信息, 文档管理服务器10可以限制能够使用该复本拷贝快捷方式浏览文档 的期限。此外,文档管理服务器IO可以限制通过各个复本拷贝快捷方式 浏览文档的次数。例如,在收到一个来自客户机30的复本拷贝快捷 方式请求时,文档管理服务器10要求客户机30指定能够使用该复本 拷贝快捷方式浏览文档的次数的阈值。文档管理服务器IO把由客户 机30指定的次数阈值与复本拷贝ID关联起来并存储它们。文档浏览 请求每次被发出时,文档管理服务器10就计算为该请求指定的复本 拷贝ID的出现次数。一旦出现次数达到了为该复本拷贝ID分配的次 数的阈值,文档管理服务器10就不允许向被指定该复本拷贝ID的文 档浏览请求提供复本拷贝。这个方法允许文档管理服务器IO对各个 复本拷贝快捷方式限制文档被浏览的次数。在本系统中,文档管理服务器10可以在每次事件被执行时认证 用户,或者可以只在复本拷贝快捷方式发布事件被执行时认证用户。在本系统中,当打印包含在文档管理服务器IO提供的复本拷贝 中的复制的文档时,客户机30可以在打印文档内容的同时在预定的 位置(例如,在头部)打印包含在复本拷贝中的复本拷贝ID。复本 拷贝ID可以被可见地打印或者被打印在文档的背面作为一个隐藏的 字符串,所以当被打印的文件由复印机复印时复本拷贝ID变得可见。在上述实施例所示的实例中,文档管理服务器10发布包括访问 站点信息的复本拷贝快捷方式,并提供给客户机30。或者,如果访 问站点信息提前被注册在客户机30中,则文档管理服务器IO可以向 客户机30发布不包括访问站点信息的复本拷贝快捷方式。例如,如 果复本拷贝快捷方式是PDF文件,访问站点信息事先在客户机30的 PDF插件(plug-in)的设置文件中被描述,所以当PDF插件启动时, PDF插件可以从设置文件中读取访问站点信息。在上述实施例所示的实例中,文档管理服务器IO在事件执行过 程中产生原始拷贝ID或复本拷贝ID。或者,客户机30可以在事件 执行过程中产生原始拷贝ID或复本拷贝ID。由客户机30产生的原 始拷贝ID或复本拷贝ID可以由文档管理服务器10使用的随机数计 算方法或者散列计算方法产生。如果由客户机30产生的原始拷贝ID 或复本拷贝ID不唯一,文档管理服务器10可以要求客户机30再产 生一个原始拷贝ID或复本拷贝ID,以便防止注册重复的原始拷贝ID 或复本拷贝ID。由客户机30产生的原始拷贝ID或复本拷贝ID包含 在文档注册请求、复本拷贝快捷方式请求、或文档浏览请求中并被提 供给文档管理服务器10。文档管理服务器10使用所提供的原始拷贝 ID或复本拷贝ID更新派生关系信息。在上述实施例所示的实例中,文档管理服务器10向客户机30提 供不包括文档实体的复本拷贝快捷方式,并且每次客户30发出浏览 请求时向客户机30提供复制的文档。或者,文档管理服务器10可以 接受来自客户机30的复本拷贝请求,而不是复本拷贝快捷方式请求; 为各个复本拷贝请求产生唯一的复本拷贝ID;以及向客户机30提供 由复本拷贝ID和复制的文档组成的复本拷贝。这个方法允许即使客 户机30处在不能与文档管理服务器10通信的离线状态,客户机30也能浏览复制的文档。在这种情况下客户机30最好在每次浏览复本 拷贝时产生并更新复本拷贝ID。在这种情况下,客户机30还独立地 管理派生关系信息,并且当状态改变为客户机30能够与文档管理服 务器IO通信的在线状态时,向文档管理服务器10提供派生关系信息。 文档管理服务器10基于客户机30提供的派生关系信息更新它自己的 派生关系信息。这使得文档管理服务器IO能够管理文档的浏览。在本实施例中,复本拷贝快捷方式是不包括文档的实体的PDF 文件。应当注意到复本拷贝快捷方式可以包含任何从属数据,只要不 是原始拷贝的实体。例如,包含原始拷贝文档的一部分(比如目录或 封页)的复本拷贝快捷方式,也能与上述的本发明达到同样效果。复 本拷贝快捷方式不仅可以包含原始拷贝文档的一部分,也可以包含通 过处理原始拷贝所获取的数据。这样的数据包括縮略图或原始拷贝的 摘要。这种从属数据如果包含在复本拷贝快捷方式中,那么当客户机 30不能与文档管理服务器10通信时,允许客户机30显示从属数据。 即使缺少能够解释复本拷贝快捷方式的插件,客户机30也能显示从 属数据。在这种情况下,客户机30可以浏览从属数据以便确定下一 步采取的最佳行动。接下来,在下文中将参照附图描述本实施例的第一变形。图14是显示第一变形的文档管理系统的一般结构的示图。第一 变形与上述实施例的差别在于添加了文件服务器70。在第一变形的 系统中,文档管理服务器10根据来自代表文件服务器70的客户机 30的指令管理已由文件服务器70管理的文档。文件服务器70管理 复本拷贝快捷方式而不是文档。图15是文件服务器70的功能框图。文档存储单元72存储文档 和与之相关的属性。文档替换单元74将文档注册到文档管理服务器 10作为原始拷贝,该文档由客户机30从存储在文档存储单元72的 文档中选择。文档替换单元74还从文档管理服务器10接收对应于注 册的原始拷贝的复本拷贝快捷方式,并把它注册在复本拷贝快捷方式 存储单元76中。复本拷贝快捷方式存储单元76存储从文档管理服务 器10提供的复本拷贝快捷方式。下面参照图16所示的流程图描述由文档替换单元74执行的文档 替换的处理过程。文档替换单元74从文档存储单元72获取由客户机30选择的文 档和文档的属性(S400)。具体来讲,文档替换单元74向客户机30 提供文档选择屏幕,如图17所示。也就是说,文档替换单元74提供 被存储在文档存储单元72中的并且能够被注册到文档管理服务器10 的文档的列表。在文档选择屏幕上,用户按下对应于一个待替换文档 的注册按钮140,或者选择对应于一个或多个待替换的文档的复选框 142然后按下组注册按钮144。客户机30按下注册按钮140或组注册 按钮144以发送识别信息(比如文档的文件名)到文档替换单元74。 响应接收的识别信息,文档替换单元74从文档存储单元72获取由客 户机30选择的文档及其属性。然后,文档替换单元74向文档管理服务器IO发送文档注册请求, 其包括文档和文档的属性(S402)。响应该文档注册请求,文档管理 服务器10象上述实施例中一样发布复本拷贝快捷方式并把它发送到 文件服务器70。之后,文档替换单元74从文档管理服务器10接收 复本拷贝快捷方式(S404)并且把它注册到复本拷贝快捷方式存储单 元76 (S杨)。通过这种方式,已由文件服务器70管理的文档被作为原始拷贝 由文档管理服务器10管理。文件服务器70管理文档的复本拷贝快捷 方式而不是文档本身。客户机30可以下载由文件服务器70管理的复 本拷贝快捷方式,以象上述实施例一样利用复本拷贝快捷方式浏览文 档。在第一变形中,客户机30从文件服务器70下载文件而不用担心 由文件服务器70管理的文档是不是复本拷贝快捷方式。当客户机30 打开下载的文件时,客户机30自动地访问文档管理服务器IO,并且 对应于复本拷贝快捷方式的文档被显示在屏幕上。文档管理服务器10也可以管理由文件服务器70管理的复本拷贝 快捷方式;也就是说,文件服务器70可以管理哪位用户使用提供给 文件服务器70的复本拷贝快捷方式来浏览文档。响应来自客户机30的复本拷贝快捷方式的请求,文件服务器70 还可以返回代替该复本拷贝快捷方式的第二个复本拷贝快捷方式。为 此,客户机30从复本拷贝快捷方式获取复本拷贝ID,根据上述实施 例中描述的方法产生包含新的第二个复本拷贝ID的第二复本拷贝快 捷方式,并且把它返回到客户机。产生第二复本拷贝快捷方式允许客 户机30每当获取复本拷贝快捷方式时能获取包含不同复本拷贝ID的 复本拷贝快捷方式,从而产生更详细的派生关系记录。虽然在以上描 述中,在获取复本拷贝快捷方式的时候产生新的复本拷贝快捷方式 以便产生更详细的派生关系信息,但是由文件服务器70管理的复本 拷贝快捷方式也可以在客户机30获得复本拷贝快捷方式之后由新的 第二快捷方式替换。另外,如果复本拷贝快捷方式被下载了预定的次 数,则复本拷贝快捷方式也可以被新的复本拷贝快捷方式替换,或者 可以在过去了预定的时间后被替换;也就是说,在有规律的基础上。在上述实例中,由文件服务器70管理的文档被作为原始拷贝注 册在文档管理服务器10中。还可能是,当注册新文档的请求被从客 户机30发送到文件服务器70时,文档管理服务器10管理该文档作 为原始拷贝并且文件服务器70管理该原始拷贝的复本拷贝快捷方 式。接下来,将参照附图描述本实施例的第二变形。 图18A是显示第二变形的文档管理系统的一般结构的示图。第 二变形的文档管理系统被构造为称作纯P2P (对等)的网络。以这种 方式构造的结点80-l、 80-2、 80-3等等(以后,在它们不需要被单独 识别的情况下统称为"节点80")不是仅仅充当文件管理服务器10 或客户机30,而是充当这两种设备。它们是分布式的,用于管理诸 如文档这样的对象。在上述实施例中,客户机30请求文档管理服务器10发送对应于 原始拷贝的复本拷贝快捷方式,该原始拷贝是预先注册在文件管理服 务器10的原始拷贝中的一个,并且是由请求用户指定的。相对照的, 在第二变形中,当节点80注册一个新文档时,结点80还从请求用 户接收浏览用户的指定,并且向浏览用户发布复本拷贝快捷方式,以向浏览用户提供复本拷贝快捷方式。换句话说,在第二变形中,不是每个节点80都在注册的文档中检索复本拷贝快捷方式将被发布的文 档。更准确地讲,在第二变形中,如果有一些用户,要向这些用户发 布复本拷贝快捷方式,用于允许他们浏览文档,那么用户在节点中注册待浏览的文档,同时请求结点发布复本拷贝快捷方式并向浏览用户 分发该复本拷贝快捷方式.在本系统中,使用了称作分布式散列表类型的Chord算法。结点 根据对象的散列值在节点中注册对象并在结点之间传输对象。(参考 文献Ion Stoica, Robert Morris, David Karger, M.Frans Kaashoek, and Han Balakrishnan, Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications, ACM SIGCOMM 2001, San Diego, CA, August 2001, pp 149-160)。节点80有节点ID,它是通过用一个已知的散列函数计算节点特 有的数据(在本系统中是IP地址)而产生的散列值。在本系统中, SHA-256被用作已知的散列函数。在下面的描述中,SHA-256还被 用于计算其他数据的散列值。散列值还被分配给各个对象作为唯一的 ID。在该根据Chord构造的系统中,整个网络被定义为一个环形的虚 空间,称为ID环(标识符环)如图18B所示,所有的节点80和所 有对象被分配在ID环上。被分配了对应于节点ID的散列空间的节点80具有对象,每个所 述对象都具有包含在该散列空间中的散列值。节点80还有它所拥有 的对象的唯一ID的列表、路由信息(称作指针表),和关于相邻节点 的信息。路由信息包含关于下一个结点的信息,其中下一个节点是指 当期望的对象没有在作为对象搜索结果的节点中找到时,查询将被传 递(发送)到的节点。当一个结点试图在这个系统中注册一个对象但待注册对象的唯 一 ID不包括在分配给该结点自身的散列空间中时,该结点参照路由 信息确定查询应该传递到的下一个结点并将待注册对象发送到那个 结点。通过重复该确定处理的步骤序列,对象可以被注册到一个节点 中。同样当一个结点试图获取一个对象但该待获取对象的唯一 ID没有注册在列表中时,该结点确定查询应该传递的下一个结点并发送该 查询到那个结点。结点重复该确定处理序列以搜索待获取对象所存储 的节点,并且从作为搜索结果的已找到对象的节点获取该对象。
在本系统中,如图19所示,节点80所拥有的对象包括文档160、 原始拷贝元信息180、和复本拷贝元信息184。
文档160是字节字符串数据,并且通过执行文档160的散列计算 所产生的散列值是该文档的唯一 ID162。
原始拷贝元信息180描述了文档的唯一 ID162和其它信息,它是 描述文档属性的XML文档。节点80参照包含在原始拷贝元信息中 的唯一 ID,即文档的散列值,以识别对应于原始拷贝元信息的文档 所存储于的结点。通过为原始拷贝元信息180执行散列计算获得的散 列值是原始拷贝元信息的唯一 ID182。
复本拷贝元信息184是每当节点80发布复本拷贝快捷方式190 时产生的XML文档。复本拷贝元信息还在每次利用复本拷贝快捷方 式190浏览复制的文档时产生。复本拷贝元信息的唯一 ID186对应于 复本拷贝ID。通过对复本拷贝元信息执行散列计算产生的散列值是 该复本拷贝元信息的唯一 ID186。
节点80使用由节点80发布的复本拷贝快捷方式190-1的复本拷 贝ID的唯一 ID186-1,以及用于浏览的复本拷贝快捷方式190-2的复 本拷贝ID (用于更新)的唯一ID186-2。
图20A显示了原始拷贝元信息的数据结构的一个实例。在图20A 中,标签200表示该XML文档包含原始拷贝元信息。由标签202表 示的元素描述与原始拷贝元信息相关的文档的文件名。由标签204表 示的元素描述文档的文件格式。由标签206表示的元素描述创建文档 的用户的名字(用户ID)。由标签208表示的元素描述文档的创建日期 与时间。由标签210表示的元素描述文档的散列值(唯一 ID)。
图20B显示了复本拷贝元信息的数据结构的实例。在图20B中, 标签300表示该XML文档包含复本拷贝元信息。标签302表示的元 素描述发布复本拷贝快捷方式的用户名,或者使用该复本拷贝快捷方 式浏览文档的用户名。标签304表示的元素描述该复本拷贝快捷方式被发布的日期与时间,或者用户使用该复本拷贝快捷方式浏览复制的 文档的日期与时间。当在产生该复本拷贝快捷方式时同时产生复本拷
贝元信息时,标签306表示的元素描述原始拷贝元信息的唯一 ID。 同时,当复本拷贝元信息是在当用户使用复本拷贝快捷方式浏览复制 的文档时产生的复本拷贝元信息时,该元素描述包含在复本拷贝快捷 方式中的唯一ID (复本拷贝ID)。
节点80维护并管理表示它自己所拥有的原始拷贝元信息的派生 关系的派生关系信息,以及关于原始拷贝元信息的历史信息。图21A 显示由本系统建立的派生关系。图21B显示由节点80管理的历史信 息的数据结构的实例。如图21B所示,节点80把发布到存储于其自 身的原始拷贝元信息的复本拷贝快捷方式的复本拷贝ID (即,复本 拷贝元信息的唯一 ID)与复本拷贝快捷方式被发布到的用户的用户 ID (例如,邮件地址)关联起来,并将这些作为历史信息管理。这些 信息表示当用户浏览文档时所使用的复本拷贝快捷方式被提供给了 哪位用户。
在本系统中,当新文档被注册时,节点80从用户接收该文档的 浏览用户的指定。节点80为每个指定的用户发布一个复本拷贝快捷 方式,并为每个浏览用户发送一个复本拷贝快捷方式,例如通过电子 邮件。
将参照图22所示的流程图,描述结点80执行的处理过程,其用 于注册一个新文档以及向浏览用户提供对应于该文档的复本拷贝快 捷方式。
响应来自用户的注册新文档的请求,节点80产生关于文档的原 始拷贝元信息(S500),并且另外,当注册请求被发出时为每个由请 求发出用户所指定的每位浏览用户产生复本拷贝元信息(S502)。接 下来,节点80计算文档、原始拷贝元信息、和复本拷贝元信息(下 面,原始拷贝元信息和复本拷贝元信息在不需要被区别的地方统称为 "元信息")的散列值,即唯一 ID。基于计算出的唯一 ID,节点80 搜索文档和元信息将被存储到的节点并向巳经找到的节点发送元信 息(S504)。节点80依据唯一 ID的值可以在一些情况下存储文档或任何元信息。
另外,节点80发布待注册文档的复本拷贝快捷方式,每个浏览 用户一个(S506)。这一步产生的复本拷贝快捷方式的复本拷贝ID是 为每个浏览用户产生的复本拷贝元信息的唯一ID(散列值)。接下来, 节点80向浏览用户提供发布的复本拷贝快捷方式(S508)。此外,节 点80命令存储原始拷贝元信息的结点更新派生关系信息和历史信息 (S510)。接收到更新指令的结点把树形结构数据注册到派生关系信 息中,所述树形结构数据包括作为原始拷贝元信息的唯一 ID的父节 点,和作为复本拷贝元信息的唯一ID的子节点。该结点还把复本拷 贝元信息的唯一ID与各自的浏览用户ID关联起来并注册它们到历史 信息中。
在上述处理过程被执行后,新的文档和关于该文档的原始拷贝元 信息被注册到任一结点中。另外,也为各个由发布注册请求的用户指 定的浏览用户产生关于该文档的复本拷贝元信息,并存储到任一节点 中。并且,复本拷贝ID是所产生的复本拷贝元信息的唯一 ID的复本 拷贝快捷方式被发布并发送到各个浏览用户。
将参照图23所示的流程图描述由节点80执行的处理过程,该处 理过程用于使用复本拷贝快捷方式浏览文档。
节点80从用户选择的用于浏览的复本拷贝快捷方式获取唯一 ID[i] (S600),搜索存储了对应于唯一ID[i]的元信息的结点,并且从 作为搜索结果已被找到的结点中获取元信息(S602)。接下来,节点 80检查所获得的元信息是原始拷贝元信息还是复本拷贝元信息 (S604)。如果检查结果显示元信息是原始拷贝元信息(Y在S606), 则节点80基于该原始拷贝元信息中包含的唯一ID搜索对应于原始拷 贝元信息的文档被作为原始拷贝所存储于的结点,并从已被找到的作 为搜索结果的节点中获取待浏览的文档的拷贝(S608)。节点80在屏 幕上显示所获取的复制的文档(S608)。
接下来,当节点80浏览文档时,节点80产生新的复本拷贝元信 息,其中在描述散列值的标签处描述唯一ID[i] (S610)。此外,结点 80计算新的复本拷贝元信息的散列值,使用计算出的散列值作为新复本拷贝元信息的唯一 lD[i+l],搜索新复本拷贝元信息将被存储的 结点,并且向找到的作为搜索结果的节点发送新的复本拷贝元信息 (S612)。节点80用唯一 ID[i+l]更新用于文档浏览的复本拷贝快捷 方式的复本拷贝ID (S614)。也就是说,节点80将该复本拷贝快捷 方式的复本拷贝ID改变为唯一 ID[i+l]。此夕卜,结点80把唯一 ID[i+l] 与唯一 ID[i]关联起来,并且向关于待浏览文档的原始拷贝元信息被 存储的节点80发送那些唯一ID (S616)。响应这些唯一ID的通知, 节点更新自己拥有的派生关系信息。也就是说,结点添加唯一 ID[i+l] 作为唯一 ID[i]的子节点。
另一方面,如果所获得的、在S604中检査的元信息的类型是复 本拷贝元信息(N在S606),则节点80搜索包含对应于所获取的元 信息中描述的唯一ID的元信息的结点,从找到的作为搜索结果的节 点中获取新的元信息(S618),并且再次在S606检査类型。节点80 重复这个处理以获取原始拷贝元信息。
如上所述,第二实施例中的节点80没有明显地区分为文档管理 服务器10或客户机30,而是同时充当两个角色以实施对文档等对象 的分布式管理。派生关系信息和复本拷贝元信息显示哪位用户已经发 布了复本拷贝快捷方式,哪位用户已经浏览了文档,以及该用户何时 浏览的。如果参照派生关系信息和复本拷贝元信息,则历史信息显示 哪位用户已经发布了复本拷贝快捷方式并且该用户何时发布它的。此 外,由各个节点管理的派生关系信息显示为一个文档已经发布了多少 复本拷贝快捷方式,哪个复本拷贝快捷方式被用于浏览文档,以及文 档被浏览了多少次。
也可以利用一个更简单的结构,其中结点不存储关于原始拷贝元 信息的派生关系信息或历史信息,并且当产生复本拷贝元信息时,不 发送通知到存储原始拷贝元信息的结点。即使在这样一种比较简单的 结构中,给定的复本拷贝快捷方式传播到的历史信息也可以通过递归 地参考元信息来恢复。
在本发明的一个实施例中,文档管理服务器还包含一种文档提供 单元,该单元用于接收文档的访问请求,参照为该访问请求指定的复本拷贝ID和派生关系信息识别对应于该访问请求的原始拷贝ID,以 及发送对应于所识别的原始拷贝ID的文档作为对访问请求的响应。
根据本发明,派生关系信息显示原始拷贝ID和复本拷贝ID之间 的派生关系。所以,对于指定了复本拷贝ID的访问请求,通过参照 派生关系信息可以唯一地识别与该复本拷贝ID相关联的原始拷贝 ID,并且对应于原始拷贝ID的文档可以被提供给发出访问请求的用 户。
在本发明的一个实例中,文档提供单元产生与为访问请求指定的 复本拷贝ID不同的新的复本拷贝ID,并发送新的复本拷贝ID以及 识别的文档,新的复本拷贝ID作为为访问请求指定的复本拷贝ID的 更新ID,以及派生关系信息管理单元向派生关系信息中添加为访问 请求指定的复本拷贝ID和文档提供单元为该复本拷贝ID产生的新的 复本拷贝ID之间的派生关系。
根据本发明,文档提供单元发送用于更新的、与为访问请求指定 的复本拷贝ID不同的复本拷贝ID,作为对访问请求的响应,并且派
生关系信息管理单元向派生关系信息中添加为访问请求指定的复本 拷贝ID和用于更新的复本拷贝ID之间的派生关系。所以,通过参照 派生关系信息,可以检查是否通过提供给请求用户的复本拷贝ID进 行了访问。另外,访问请求源的复本拷贝ID被改为用于更新的复本 拷贝ID。所以,既使当访问请求源对第三方发布了它拥有的复本拷 贝ID,通过检查发布到第三方的复本拷贝ID是否被更新,就可以检 査访问请求源是否使用所提供的复本拷贝ID发出了访问请求。
在本发明的一个实施例中,历史信息管理单元通过把访问请求源 与复本拷贝ID相关联,来管理为访问请求指定的访问请求源和为访 问请求指定的复本拷贝ID。
根据本发明,历史信息管理单元通过把访问请求源与复本拷贝 ID相关联,来管理为访问请求指定的访问请求源和为访问请求指定 的复本拷贝ID。因此,通过参照派生关系信息以及表示访问请求源 和复本拷贝ID之间关系的历史信息,可以识别哪个复本拷贝ID (也 就是说,该复本拷贝ID被发布到哪个访问请求源)被访问请求源用于访问文档。
在本发明的一个实施例中,文档提供单元参照表示各个复本拷贝
ID的访问条件的访问条件信息,检查为访问请求指定的复本拷贝ID 是否满足访问条件,如果访问条件被满足,提供该文档作为对访问请 求的响应。
根据本发明,文档提供单元参照访问条件信息,并且如果为访问 请求指定的复本拷贝ID满足访问条件,则提供该文档作为对访问请 求的响应。所以,可以通过根据为访问请求指定的复本拷贝ID定义 期望满足的访问条件而限制对文档的访问。
根据本发明的一个实施例,提供了一种文档管理服务器,其中包 括识别信息提供单元,用于从客户机接收获取访问文档所需的识别
信息的请求,为接收的请求产生识别信息,并且向客户机发送产生的
识别信息;关系信息管理单元,用于管理所请求的文档和为该请求所 产生的识别信息的关系信息;以及历史信息管理单元,用于管理已经 发送与识别信息相关的请求的客户机的信息。
上述文档管理服务器可以还包括文档提供单元,用于接收文档的 访问请求,通过参照由访问请求指明的识别信息和关系信息识别对应 于访问请求的文档,以及发送所识别的文档作为对访问请求的响应。
在上述文档管理服务器中,文档提供单元可以产生与由访问请求 指明的识别信息不同的新的识别信息,并且发送新的识别信息以及识 别的文档,该新的识别信息作为由访问请求指明的识别信息的更新信 息。此外,关系信息管理单元可以存储由访问请求指明的识别信息和 新的识别信息的关系信息。
在上述文档管理服务器中,历史信息管理单元可以管理已经发送 访问请求的客户机的信息和由访问请求指明的识别信息。
在上述文档管理服务器中,识别信息提供单元可以发送访问站点 信息以及识别信息,作为对获取请求的响应,访问站点信息表示存储 对应于获取请求的文档的访问站点。
在上述文档管理服务器中,文档提供单元可以参照表示每个识别 信息的访问条件的访问条件信息,检查由访问请求指明的识别信息是否满足访问条件,如果访问条件被满足,提供该文档作为对访问请求 的响应。
在上述文档管理服务器中,访问条件信息可以包括每个识别信息 的被允许访问文档的访问请求源。此外,文档提供单元可以参照访问 条件信息,如果访问请求的访问请求源包含在访问条件信息中,则提 供文档作为对访问请求的响应。
在上述文档管理服务器中,对于包含在访问条件信息中的、并且 相关的访问请求源都已经接收到文档的识别信息,文档提供单元之后 不会再提供文档作为对指明该识别信息的访问请求的响应。
在上述文档管理服务器中,访问条件信息可以包含识别信息的文 档可访问期限。此外,文档提供单元可以参照访问条件信息,并且如 果访问请求是在由访问请求指明的识别信息的可访问期限内接收到 的,则提供文档作为对访问请求的响应。
在上述文档管理服务器中,访问条件信息可以包括识别信息的对 文档的最大访问次数。此外,如果通过由访问请求指明的识别信息访 问文档的次数小于最大访问次数,则文档提供单元提供文档作为对访 问请求的响应。
上述文档管理服务器可以还包括文档注册单元,用于接收文档注 册请求,产生与该文档相关的识别信息,注册该文档到与该文档相关 的存储单元,以及发送产生的识别信息作为对注册请求的响应。
根据本发明的另一个实施例,提供了一种文档管理系统,其中包 括识别信息提供单元,用于从客户机接收获取访问文档所需的识别 信息的请求,为接收的请求产生识别信息,并且向客户机发送产生的 识别信息;关系信息管理单元,用于管理所请求的文档和为该请求产 生的识别信息的关系信息;以及历史信息管理单元,用于管理已经发 送与识别信息相关的请求的客户机的信息。
该文档管理系统可以还包括识别信息获取单元,用于发送获取 识别信息的请求,以及接收作为响应的识别信息;文档获取单元,用 于发送指明了所获取的识别信息的文档访问请求,以获取与该识别信 息相关的文档;以及文档提供单元,用于接收文档的访问请求,参照由访问请求指明的识别信息和关系信息识别对应于访问请求的文档, 并且发送所识别的文档作为对访问请求的响应。在上述文档管理系统中,文档提供单元可以产生与由访问请求指 明的识别信息不同的新的识别信息,并且发送该新的识别信息以及识 别的文档,该新的识别信息作为由访问请求指明的识别信息的更新信 息。关系信息管理单元可以存储由访问请求指明的识别信息和新的识 别信息的关系信息。文档管理系统可以还包括识别信息改变单元,用 于根据接收的作为对访问请求的响应的更新信息改变由访问请求指 明的识别信息。上述文档管理系统可以还包括文档注册单元,用于接收文档注 册请求,产生与该文档相关的识别信息,注册与识别信息相关的文档, 以及发送产生的识别信息作为对注册请求的响应;识别信息管理单元,用于管理识别信息而不是文档;以及获取请求响应单元,用于接 收文档的获取请求,以及发送所请求的文档的识别信息作为对获取请 求的响应。根据本发明的另一个实施例,提供了一种计算机可读的存储介 质,该存储介质存储计算机可以运行的指令的程序以用作文档管理服务器。功能包括从客户机接收获取访问文档所需的识别信息的请求;为接收的请求产生识别信息;向客户机发送产生的识别信息;管理所 请求的文档和为该请求所产生的识别信息的关系信息;管理已经发送 与识别信息相关的请求的客户机的信息。根据本发明的另一个实施例,提供了一种计算机可读的存储介 质,该存储介质存储计算机可以执行的指令的程序,以用作通过网络 获取文档的客户机。功能包括识别信息获取单元,用于发送指明待 获取的文档的获取请求,以及获取作为获取请求的响应的识别信息; 文档获取单元,用于发送指明所获取的识别信息的文档访问请求,并 获取作为访问请求的响应的与识别信息相关的文档和更新信息;以及 识别信息改变单元,用于根据更新信息改变由访问请求指明的识别信 息。根据本发明的另一个实施例,提供了一种连接到对等网络的节点,其使用分布式散列表并且与其它节点共享文档。节点包括文档 注册单元,用于产生包含待注册文档的散列值的第一元信息,以及把 待注册文档和第一元信息发送到将要存储它们的节点;快捷方式发布 单元,用于响应浏览文档的请求而获取对应于文档的第一元信息,以 及产生包含第一元信息的散列值的第二元信息,发布包含第二元信息 的散列值的快捷方式,以及向已经请求的用户提供该快捷方式;关系 信息管理单元,用于管理第一元信息和第二元信息的关系信息;以及 历史信息管理单元,用于管理已被提供快捷方式的用户的信息和包含 在快捷方式中的第二种元信息的散列值。节点可以还包括文档获取单元,用于根据对应于包含在快捷方 式中的散列值的元信息和关系信息来获取请求的文档,产生包含快捷 方式中包含的散列值的新的元信息,并且将快捷方式中的识别信息改 变为新的元信息的散列值。此外,关系信息管理单元可以添加快捷方 式中包含的元信息和新的元信息的关系信息。根据本发明的另一个实施例,提供了一种文档管理服务器,用于 管理关于文档访问的历史信息。该文档管理服务器包含识别信息提 供单元,用于从客户机接收访问文档的请求,以及为所接收的请求产 生识别信息;以及历史信息管理单元,用于管理请求的文档的信息、 产生的识别信息、和己经基于识别信息发送访问文档的请求的客户机 的信息。根据本发明的另一个实施例,提供了一种文档管理方法,其包括 从客户机接收获取访问文档所需的识别信息的请求;为接收的请求产 生识别信息;向客户机发送所产生的识别信息;管理所请求的文档和 为该请求产生的识别信息的关系信息;以及管理已经发送与识别信息 相关的请求的客户机上的信息。根据本发明的另一种实施例,提供了一种文档管理系统的客户 机。该客户机包括识别信息获取单元,用于向文档管理服务器发送 获取请求,以及接收作为响应的识别信息;文档获取单元,用于发送 指明所获取的识别信息的文档访问请求,以及获取作为访问请求的响 应的与该识别信息相关的文档和更新信息;以及识别信息改变单元,用于根据更新信息改变由访问请求指明的识别信息。在2005年6月27日提交的日本专利申请No.2005-185934的完 整公开,包括说明书、权力要求、附图、以及摘要,通过参照其全部 而合并在此。尽管描述了目前被认为是本发明的优选实施例的实施例,应当知 道,可以对其做出各种变形,并且所附的权力要求意味着包含属于本 发明的思想和范围内的所有变形。
权利要求
1.一种文档管理系统,包括文档管理服务器和客户机设备,其中所述文档管理服务器包括快捷方式提供单元,该单元从所述客户机设备接收获得快捷方式文件用于查看与第一ID有关的文档的第一请求,为每个第一请求产生第二ID,并且将所述快捷方式文件发送给所述客户机设备,所述快捷方式文件包括所述产生的第二ID并且不包括所述文档;相关信息管理单元,该单元管理所述第一ID、所述第二ID和所述文档之间的相关信息;以及文档提供单元,该单元接收查看所述文档的第二请求,所述第二请求是通过使用所述快捷方式文件来执行的;该单元还通过参考所述相关信息,提供与所述快捷方式文件中包括的所述第二ID相关的文档;以及其中所述客户机设备包括快捷方式请求单元,该单元发送获得所述快捷方式文件用于查看与所述第一ID相关的所述文档的第一请求,该单元还获得包括所述第二ID的所述快捷方式文件;快捷方式存储单元,该单元储存所述获得的快捷方式文件;以及查看请求单元,该单元利用所述快捷方式文件发送查看与所述储存的快捷方式文件中包括的所述第二ID相关的文档的第二请求,该单元还获得所述文档。
2. 如权利要求1所述的文档管理系统,其中 所述文档提供单元为每个第二请求产生第三ID,并且与所述产生的第三ID —起提供所述文档,所述相关信息管理单元管理所述第一 ID、所述第二 ID、所述第 三ID和所述文档之间的相关信息,储存在所述客户机设备中的快捷方式文件是基于所述第三ID更新的,以及当所述查看请求单元发送下一个第二请求时,所述查看请求单元 使用所述更新过的快捷方式文件。
3. 如权利要求1所述的文档管理系统,其中 所述获得的文档没有储存在所述客户机设备中。
4. 如权利要求1所述的文档管理系统,其中 所述快捷方式提供单元发送访问站点信息和所述第二 ID作为对所述第一请求的响应,所述访问站点信息表明储存与所述第一请求对 应的文档的访问站点。
5. 如权利要求1所述的文档管理系统,其中 所述文档提供单元参照表明每个ID的访问条件的访问条件信息,检查所述第二请求指定的ID是否满足所述访问条件,并且如果 满足所述访问条件,则提供所述文档作为对所述第二请求的响应。
6. 如权利要求5所述的文档管理系统,其中 所述访问条件信息表明允许访问每个ID的所述文档的请求源,以及所述文档提供单元参照所述访问条件信息,并且如果所述访问条 件信息表明允许所述第二请求的请求源访问所述文档,则就提供所述 文档作为对所述第二请求的响应。
7. 如权利要求6所述的文档管理系统,其中 在允许访问与一个ID相关的文档的所有请求源都收到所述文档以后,所述文档提供单元不提供所述文档作为对指定所述ID的第二 请求的响应。
8. 如权利要求5所述的文档管理系统,其中所述访问条件信息包括ID的文档可访问期限,以及 所述文档提供单元参照所述访问条件信息,并且如果在所述第二请求指定的所述ID的可访问期限内收到所述第二请求,则就提供所述文档作为对所述第二请求的响应。
9.如权利要求5所述的文档管理系统,其中 所述访问条件信息包括对ID的文档的最大访问次数,以及 如果所述第二请求指定的所述ID的文档的访问次数小于所述最大访问次数,则所述文档提供单元就提供所述文档作为对所述第二请求的响应。
全文摘要
所述文档管理服务器包括识别信息提供单元,用于从客户机接收获取访问文档所需的识别信息的请求,为接收的请求产生识别信息,以及向客户机发送产生的识别信息;关系信息管理单元,用于管理所请求的文档和为所述请求产生的识别信息的关系信息;以及历史信息管理单元,用于管理已经发送与识别信息相关的请求的客户机的信息。
文档编号G06F17/30GK101256584SQ20081008228
公开日2008年9月3日 申请日期2006年1月16日 优先权日2005年6月27日
发明者上田良宽, 国武节, 寺尾太郎, 川边惠久, 萌 时, 沼田贤一, 铃木明, 额贺雅夫 申请人:富士施乐株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1