首页> 中国专利> 检测编辑之间的关系并且对编辑的子集有所行动

检测编辑之间的关系并且对编辑的子集有所行动

摘要

本文中公开了一种系统和方法,用于检测协同文档编辑环境中的复合的和冲突的建议的编辑。接收对电子文档的第一编辑和第二编辑。标识第一编辑和第二编辑在电子文档中的共享位置,并且至少部分基于标识来确定复合关系或者冲突关系。向电子文档的用户显示第一编辑、第二编辑以及上述关系的指示符。

著录项

  • 公开/公告号CN104798066A

    专利类型发明专利

  • 公开/公告日2015-07-22

    原文格式PDF

  • 申请/专利权人 谷歌公司;

    申请/专利号CN201380060752.0

  • 发明设计人 V·J·瓦格尔;I·冈;

    申请日2013-11-21

  • 分类号

  • 代理机构北京市金杜律师事务所;

  • 代理人李辉

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 10:02:35

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-07-10

    授权

    授权

  • 2018-03-09

    著录事项变更 IPC(主分类):G06F17/21 变更前: 变更后: 申请日:20131121

    著录事项变更

  • 2015-12-16

    实质审查的生效 IPC(主分类):G06F17/21 申请日:20131121

    实质审查的生效

  • 2015-07-22

    公开

    公开

说明书

技术领域

总体上,本公开内容涉及电子文档,更具体地,涉及用于检测 编辑之间的关系并且对编辑的子集有所行动的系统和方法。

背景技术

在电子文档的开发期间,常常期望有多个用户对电子文档的草 稿提出更改和批注。例如,作者可以创建电子文档的初始草稿并且 将该电子文档的副本发送至一个或多个审核人以对文档做出批注和 更改。每个审核人可以独立地在电子文档中提出更改或者做出批注, 并且将该电子文档的修订版本返回至该作者。因为每个审核人可以 创建该电子文档的唯一版本,所以不同的版本之间可能存在冲突。 原始作者将需要解决冲突的编辑并且向该审核人重新发送该电子文 档的经更新的副本。将需要重复这些步骤直至作者和所有审核人都 满意该电子文档的版本。一种提高这一过程的效率的途径是允许多 个用户同时对文档进行更改。

发明内容

因此,本文中公开了一种用于检测协同文档编辑环境中的复合 的建议的编辑和冲突的建议的编辑的方法。一方面涉及一种方法用 于标识电子文档中的编辑之间的复合关系。处理器接收对电子文档 的第一编辑和第二编辑并且标识该第一编辑和该第二编辑在电子文 档中的共享位置。该处理器至少部分基于该标识来确定该第一编辑 和该第二编辑具有复合关系。

另一方面涉及一种用于标识电子文档中的编辑之间的冲突关系 的方法。处理器接收对电子文档的第一编辑和第二编辑并且标识该 第一编辑和该第二编辑在电子文档中的共享位置。该处理器至少部 分基于该标识来确定该第一编辑和该第二编辑具有冲突关系,并且 向该电子文档的用户显示该第一编辑、该第二编辑以及该冲突的指 示符。

另一方面涉及一种用于标识电子文档中的建议的编辑之间的复 合关系的系统。接收器处理器接收对电子文档的第一建议的编辑和 第二建议的编辑。此外,耦合至该接收器处理器的复合标识器标识 所建议的编辑在电子文档中的共享位置,并且至少部分基于该标识 来确定该第一建议的编辑和该第二建议的编辑具有复合关系。

另一方面涉及一种用于标识电子文档中的建议的编辑之间的冲 突关系的系统。接收器处理器接收对电子文档的第一建议的编辑和 第二建议的编辑。此外,耦合至该接收器处理器的冲突标识器标识 所建议的编辑在电子文档中的共享位置,并且至少部分基于该标识 来确定该第一建议的编辑和该第二建议的编辑具有冲突关系。用户 界面向该电子文档的用户显示该第一建议的编辑和该第二建议的编 辑以及该冲突的指示符。

附图说明

结合附图并且在考虑以下详细描述的基础上,本公开内容的以 上特征和其他特征(包括其属性及其各种优点)将变得更清楚,在 附图中:

图1是根据说明性实施例的、用于协同地集成所提出的更改并 且发布电子文档的计算机化的系统的框图。

图2是根据说明性实施例的、在包括文档访问控制列表的电子 数据库上所存储的示例数据结构。

图3是根据说明性实施例的、在包括与建议的编辑对应的元数 据的电子数据库上所存储的示例数据结构。

图4是根据说明性实施例的、用于对多个建议的编辑之间的复 合关系和冲突关系进行可视化的示例树形图。

图5至图6是根据说明性实施例的、用于与具有复合的建议的 编辑的文档交互的审核人界面的示例性显示的图。

图7至图10是根据说明性实施例的、用于与具有复合的建议的 编辑的文档交互的编辑人界面的示例性显示的图。

图11至图13是根据说明性实施例的、用于与具有冲突的建议 的编辑的文档交互的审核人界面的示例性显示的图。

图14至图16是根据说明性实施例的、用于与具有冲突的建议 的编辑的文档交互的编辑人界面的示例性显示的图。

图17是根据说明性实施例的、用于显示文档中的建议的编辑的 子集的编辑人界面的示例性显示的图。

图18是根据说明性实施例的、由审核管理器使用以管理对文档 的更新的方法的流程图。

图19是根据说明性实施例的、由审核管理器使用以基于对另一 建议的编辑的更新来确定是否更新一个或多个建议的编辑的状态的 方法的流程图。

图20是根据说明性实施例的、由审核管理器使用以标识两个编 辑之间的复合关系的方法的流程图。

图21是根据说明性实施例的、由审核管理器使用以标识两个编 辑之间的冲突关系的方法的流程图。

图22是根据说明性实施例的、用于执行本文中所描述的过程中 的任何过程的计算设备的框图。

具体实施方式

为了提供对本公开内容的全面理解,现在将描述某些说明性实 施例,包括一种用于检测编辑之间的关系并且对编辑的子集有所行 动的系统。具体地,检测编辑之间的关系并且对编辑的子集有所行 动使得能够高效地开发文档。然而,本领域普通技术人员将理解, 可以适当地适配和修改本文中所描述的系统和方法使其适用于所提 出的应用,并且可以在其他合适的应用中采用本文中所描述的系统 和方法,并且这样的其他添加和修改将没有偏离其范围。

图1至图3是可以用于实现本文中所描述的系统和方法的网络 和数据库结构的图。图1是根据说明性实施例的、用于检测编辑之 间的关系并且对编辑的子集有所行动的计算机化的系统100的框图。 系统100包括通过网络101连接的服务器104以及4个用户设备113a 至113d(统称为用户设备113)。服务器104包括审核管理器102, 该审核管理器102管理对主文档106的各种版本的更新。

审核管理器102被配置成通过与用户设备113通信的网络101 来传送和接收数据。特别地,审核管理器102接收指示用户在用户 设备113处希望建议或者创建的与主文档106相关的更改的数据。 取决于设置用于用户访问主文档106的访问许可的用户类型,审核 管理器102然后通过附加与主文档106对应的建议列表105来创建 这些更改。该建议列表105可以被存储为数据结构的形式,该数据 结构的一个示例关于图3来更详细地描述。

审核管理器102可以包括处理器和存储器单元。该存储器单元 存储由处理器来执行的计算机可执行指令。该计算机可执行指令包 括:用于通过网络101来接收数据的指令、用于确定给定用户的用 户类型的指令、用于对主文档106做出更改的指令以及用于向各种 用户发布文档106的各种版本的指令。如图1所描绘的,主文档106 存储在与服务器104分离的设备上,但是该主文档106也可以存储 在电子数据库103中或者甚至存储在审核管理器102内包括的存储 器单元中。此外,本文中所描述的存储在电子数据库103上的任何 数据可以替代地或者附加地存储在审核管理器102中的存储器单元 中或者存储在服务器104外部的单独的存储器单元中。

在用户设备113处的用户可以通过用户界面110或者114与主 文档106同时交互。具体地,图1描绘4个用户,每个用户与用户 类型关联,该用户类型定义访问主文档的某些版本的权限等级以及 主文档的某些版本的编辑能力。具体地,图1描绘3个审核人112a 至112c(统称为审核人112)以及1个编辑人108。每个审核人112 通过审核人界面114a至114c(统称为审核人界面114)与主文档106 交互,并且编辑人108通过编辑人界面110与主文档交互。

每个用户设备113可以包括诸如个人计算机、膝上型电脑、写 字板、智能手机、个人数字助理或者任何其他合适类型的计算机或 通信设备的设备。在用户设备处的用户通过网络101从服务器104 访问和接收信息。该用户设备113可以包括典型的部件,例如输入 设备、输出设备和通信接口(例如编辑人界面110或者审核人界面 114)。用户可以通过经由用户界面输入用户名和密码(或者提供其 他标识信息)来与服务器104认证,使得同一用户设备可以由不同 用户(包括具有相同的或者不同的用户类型的用户)在不同时间使 用。

用户与服务器104交互,使得用户(结合服务器104)通过协同 地提出对文档106的更改来执行在线文档。虽然在图1中被图示为 单个设备,然而服务器104可以被实现为例如单个计算设备或者多 个分布式计算设备。用户与服务器104的交互通过用户界面114和 110来实现,该用户界面114和110可以包括网页浏览器。例如,可 以使用在网页浏览器内显示文档的应用来查看文档。在这一布置中, 用户不需要向其用户设备本地安装软件以查看文档和对文档做出更 改。当在本文中讨论浏览器或者用户界面时,这些术语意在指代使 得用户能够浏览文档的任何程序,而不管该浏览器程序是独立的程 序还是嵌入式程序(诸如作为操作系统的一部分而包括的浏览器程 序)。本文中所描述的逻辑可以用硬件、软件、固件或者其组合来 实现。

在一个示例中,文档106为文本文档。本领域技术人员应当理 解,本文中所描述的特征和概念可以被应用于任何类型的协同文档 应用,包括例如电子表格应用、呈现应用、绘图应用等。

一种类型的文档用户是审核人112,该审核人112具有对文档的 某种权限并且能够访问文档。通常,审核人可以查看文档106并且 对文档106做出建议的编辑和批注。为此,审核人112在审核人界 面114上查看文档的某个版本并且对该文档做出更改。将指示该更 改的数据通过网络101向服务器104发送,其中审核管理器102接 收数据并且向与文档106关联的建议列表105添加数据。该更改可 以是对文档106的建议的编辑,诸如文档的插入、删除、替换、移 动、格式更改或者任何其他合适的更改。在另一示例中,更改可以 是对文档106或者其一部分的批注。不同类型的更改(例如,诸如 插入、删除、替换、移动、格式更改或者批注)可以在建议列表105 中不同地保存。例如,不同的列表可以用来存储不同类型的更改。 作为另一示例,不同类型的更改可以一起存储作为一个列表中的条 目,其中每个条目具有指示该更改类型的标记。

另一用户类型为编辑人108,该编辑人108比审核人112对文档 106具有更高的权限等级。该编辑人108可以接受或者拒绝由审核人 112做出的任何建议的编辑,并且还可以删除由审核人112做出的任 何批注。访问和权限可以变化并且可以针对文档被定制,从而允许 不同的用户具有不同的访问能力和使用能力。当审核人(诸如审核 人112a)对文档106做出建议的编辑时,编辑人108被提示接受或 者拒绝所建议的编辑。如果编辑人108接受所建议的编辑,则审核 管理器102将所建议的编辑转换成接受的编辑并且使用所接受的编 辑来更新主文档106。此外,可以从建议列表105中去除所接受的编 辑,或者可以针对所接受的编辑设置指示符标记以指示该编辑已经 被接受。如果编辑人108拒绝建议的编辑,则审核管理器102从建 议列表105中去除所建议的编辑,或者可以针对该编辑来设置指示 符标记以指示该编辑已经被拒绝或者被驳回。

除了接受或者拒绝由审核人112做出的更改,编辑人108还能 够通过直接编辑文档106或者对文档106做出批注而有权对文档做 出直接更改。审核管理器102将由编辑人108做出的编辑处理为自 动被接受的接受的编辑。备选地,编辑人108可能希望做出建议的 编辑以从审核人112或者其他编辑人得到与所建议的编辑相关的意 见。在这种情况下,编辑人108可以将编辑标记为“建议的”或者 可以设置用户设备109以“建议模式”操作,使得所建议的编辑出 现在该文档给审核人112的建议列表105中。然后,审核人112可 以修改所建议的编辑或者对所建议的编辑进行批注,并且编辑人108 然后可以判定接受还是拒绝所建议的编辑。

对主文档106和建议列表105的更新几乎实时地执行。这表示 当审核人112和编辑人108同时查看和访问文档时,审核人112几 乎紧接在编辑人108发送反馈之后就接收与建议的编辑相关的反馈。 该系统100在如下情况下尤其有利:其中由审核人112做出的建议 的编辑可能影响由审核人112做出的另外的建议的编辑。例如,因 为与所建议的编辑有关的反馈可能影响未来建议的编辑,所以审核 人112提早从编辑人108接收该反馈是很有用的。

除了管理主文档106的建议列表105,审核管理器102还保持对 建议列表105中所建议的编辑之间的关系的跟踪。特别地,该审核 管理器102包括复合标识器和/或冲突标识器。该复合标识器可以标 识文档106中的两个或多个建议的编辑之间的共享位置,并且可以 确定在文档106中共享位置的所建议的编辑具有“复合关系”,这 在下面更详细地描述。此外,该冲突标识器可以标识文档106中的 两个或多个建议的编辑之间的共享位置,并且可以确定在文档106 中共享位置的建议的编辑具有“冲突关系”,这在下面更详细地描 述。即使主文档106关闭,仍然可以存储与主文档106关联的任何 标识的复合关系和/或冲突关系。在这种情况下,在加载或者显示文 档106时,可以从存储位置加载这些关系。备选地,当文档106关 闭时可以丢弃这些关系,并且每次加载或者显示文档106时,审核 管理器102都可以标识复合关系和/或冲突关系。

作为一个示例,如果一个建议的编辑取决于另一建议的编辑, 则这两个建议的编辑可以具有复合关系。例如,审核人112a可以做 出第一建议的编辑,诸如向文档106中插入某个文本。然后,审核 人112b可以做出第二建议的编辑,诸如更改由审核人112a做出的 建议的插入。例如,审核人112b可以建议做出另一插入、做出删除、 定位拼写错误、或者对由审核人112a做出的建议的插入的任何其他 更改。在这种情况下,第二建议的编辑与第一建议的编辑具有复合 关系,并且在做出第二建议的编辑时,审核管理器102检测复合关 系并且可以将该复合关系的指示存储在建议列表105中。关于图5 和图6来示出和更详细地描述具有复合的建议的编辑的文档106的 显示的示例视图。在通过复合标识器来标识复合关系之后,将该复 合关系的指示存储并且向用户、诸如编辑人108显示。该审核管理 器102因此向编辑人108提供这些关系的视觉指示符。这些视觉指 示符对于编辑人108做出关于接受还是拒绝所建议的编辑的判定可 以很有用。特别地,对于具有复合关系的建议的编辑,对第二建议 的编辑的接受依赖于对第一建议的编辑的接受。也就是说,为了编 辑人108能够接受第二建议的编辑,第一建议的编辑也必须被接受。 因此,如果编辑人108接受第二建议的编辑,则审核管理器102可 以在没有另外地提示编辑人108接受第一建议的情况下将第一建议 的编辑也自动更新为接受。因此,建议的编辑之间的任何复合关系 的知识可以产生文档106的高效开发。

在另一示例中,如果一个建议的编辑与另一建议的编辑冲突, 则这两个建议的编辑可以具有“冲突”关系。例如,第一建议的编 辑可以是删除文本段,第二建议的编辑可以是在所删除段内插入某 个文本。在这种情况下,第一建议的编辑和第二建议的编辑具有冲 突关系,这表示编辑人108可以不接受这两个建议的编辑。在通过 冲突标识器标识冲突关系之后,将该冲突关系的指示存储并且向用 户、诸如编辑人108显示。审核管理器102因此向编辑人108提供 这些关系的视觉指示符。因此,如果编辑人108接受第一建议的编 辑,则审核管理器102可以将第二建议的编辑自动更新为拒绝。在 这种情况下,编辑人108通过接受第一建议的编辑来隐含地拒绝第 二建议的编辑。类似地,如果编辑人108接受第二建议的编辑,则 审核管理器102可以将第一建议的编辑自动更新为拒绝。在这种情 况下,编辑人108通过明确地接受第二建议的编辑来隐含地拒绝第 一建议的编辑。因此,由于系统100利用编辑之间的关系,所以建 议的编辑之间的任何冲突关系的知识可以产生文档106的高效开发。 特别地,审核管理器102基于编辑人108已经做出的关于其他编辑 的判定来自动接受或者拒绝编辑人108隐含地接受或者拒绝的编辑。 关于图3更详细地描述用于存储建议列表105的数据结构的示例。

当界面110和114包括网页浏览器时,可以将文档的不同版本 (例如文档的标记版本、纯净版本或者各种历史版本,诸如那些包 括建议的编辑和/或接受的编辑的所选择的组的版本)存储在不同的 网络位置。编辑人108可以选择将主文档106的哪些版本存储在哪 个网络位置,并且还可以选择以特定格式(诸如浏览器格式、html 格式、或者任何其他用于显示电子文档的适当格式)显示文档的版 本。此外,诸如审核人112和/或编辑人108的用户可以选择查看包 括满足一个或多个准则的任何建议的编辑的主文档106。作为一个示 例,用户可能希望仅查看某种类型的建议的编辑,诸如插入、删除、 替换、格式更改、拼写错误、或者任何其他合适类型的建议的编辑。

审核人112和编辑人108可以查看当前另外还有谁正在查看文 档。当多于一个用户同时查看文档时,用户可以通过即时消息应用 来彼此通信。

图1示出了1个编辑人和3个审核人以避免使附图变得复杂; 然而,系统100可以支持具有相同或者不同用户类型的任何数目的 用户。当存在多个审核人时,一个审核人(即审核人112a)可以查 看由其他审核人(即审核人112b和112c)或者编辑人做出的建议的 编辑和批注。以这一方式,通过允许对文档提出更改的一组用户之 间的高效合作,系统100与其中审核人独立地对文档提出更改的系 统相比提供显著的优点。因此,当编辑人108查看文档时,编辑人 108可以查看由多个审核人112同时做出的协同更新的实时流,从而 显著地降低开发文档的总时间。此外,第三种类型的用户是查看者 (未示出),查看者可以查看包括任何接受的编辑、但是不包括任 何待决的建议的编辑(尚未接受或者拒绝的建议的编辑)的文档106。 在一些实现中,可以允许查看者查看待决的建议的编辑。

在某些实现中,每个用户被指定唯一的颜色,使得做出更改的 用户能够用颜色标记对文档的版本的更改。此外,可以在文档的视 图上与由审核人做出的更改不同地标记由编辑人108做出的更改。 另外,用户可以选择查看包括某种类型的所有建议的编辑(诸如由 特定用户或者特定类型的用户做出的所有建议的编辑)或者与特定 编辑类型对应的所有建议的编辑(诸如所有插入、删除、替换、移 动、格式更改、拼写更改或者任何其他合适的编辑类型)的文档106。 编辑人108可以立刻接受或者拒绝由特定用户做出的所有建议的编 辑或者与特定编辑类型对应的所有建议的编辑。

图2是根据说明性实施例的、包括文档访问控制列表的电子数 据库103上所存储的示例数据结构117。该文档访问控制列表包括能 够访问主文档106的某个版本的用户列表及其对应的用户类型。在 这种情况下,多个用户具有相同的用户类型。特别地,存在3个审 核人(用户A至用户C)和1个编辑人(用户D),所有这些人可 以同时与主文档106交互。

图3描绘根据说明性实施例的、包括与建议的编辑对应的元数 据的电子数据库103上所存储的示例性数据结构118。该数据结构 118包括建议的编辑的4个记录。该数据结构118中的每个记录包括 “建议的编辑id”字段,该字段的值包括编辑的标识号。该数据结 构118中的每个记录与建议的编辑对应,并且还包括建议该编辑的 用户的用户id、与对应的建议的编辑具有冲突关系的任何其他建议 的编辑的指示符、与对应的建议的编辑具有复合关系的任何其他建 议的编辑的指示符、以及与建议的编辑关联的编辑类型(即添加、 删除、移动、替换、格式更改、拼写更改、或者任何其他合适的编 辑类型)。该数据结构118指示建议的编辑574和687彼此冲突, 这表示编辑人108将最多接受建议的编辑574和687中的一个。数 据结构118还指示所建议的编辑1345与所建议的编辑1254复合, 这指示所建议的编辑1345取决于所建议的编辑1254。该数据结构 118被示出仅用于说明目的,其也可以包括具有另外的数据的其他字 段。这样的另外的数据的示例包括所建议的编辑的时间、所建议的 编辑被接受还是拒绝、谁接受或者拒绝了所建议的编辑、接受或者 拒绝的时间、以及所建议的编辑在文档106中的位置。另外,当建 议的编辑包括删除、移动或者替换文档中的现有对象时,该数据结 构118还可以包括要删除、移动或者替换哪些对象。类似地,当建 议的编辑包括添加对象时,该数据结构118还可以包括要添加哪个 (些)对象。

在一些实施例中,可以将与建议的编辑相关的数据存储为文档 的变化。例如,变化可以包括指示如下内容的数据:通过编辑做出 的更改(诸如删除、添加)、做出建议的编辑的用户的用户id、编 辑的位置、以及编辑的状态(诸如待决、拒绝或者接受)。

图4描绘根据说明性实施例的、用于对各种建议的编辑之间的 关系进行可视化的两个示例性树形图。特别地,连接两个建议的编 辑的实线指示所连接的编辑具有复合关系,并且虚线指示冲突关系。 响应于从编辑人108接收到对树119或者120中的第一建议的编辑 的接受或者拒绝,审核管理器102可以解析树119或者120以自动 接受或者拒绝与第一建议的编辑具有某种关系的建议的编辑。对第 一建议的编辑的接受或者拒绝可以被称为对文档的直接更改,并且 对与第一建议的编辑具有某种关系的其他建议的编辑的接受或者拒 绝可以被称为对文档的间接更改。下面更详细地说明这一过程。

树形图119指示建议的编辑1345和1278各自取决于建议的编 辑1254并且与建议的编辑1254具有复合关系。也就是说,对建议 的编辑1345或者1278中的任一个的接受将需要对建议的编辑1254 的接受。此外,建议的编辑459取决于建议的编辑1278并且与建议 的编辑1278具有复合关系。因此,对建议的编辑459的接受需要对 建议的编辑1254和1278二者的接受。另外,建议的编辑892与建 议的编辑1254具有冲突关系。因此,对建议的编辑1254的接受需 要对建议的编辑892的拒绝,对建议的编辑892的接受需要对建议 的编辑1254的拒绝。在一个示例中,编辑人108直接接受建议的编 辑892,并且审核管理器102解析树119以确定与建议的编辑892 相关的建议的编辑。特别地,审核管理器102自动拒绝建议的编辑 1254,并且还自动拒绝需要对建议的编辑1254的接受的任何建议的 编辑、诸如建议的编辑1345、1278和459。因此,对建议的编辑892 的直接接受导致对树119中的其他建议的编辑的状态的间接更改。 在另一示例中,编辑人108直接接受建议的编辑459。在这种情况下, 审核管理器自动接受建议的编辑1254和1278并且自动拒绝建议的 编辑892。另外,对建议的编辑459的接受不影响建议的编辑1345 的状态,该建议的编辑1345保持为待决。在另一示例中,编辑人108 直接拒绝建议的编辑1254。在这种情况下,审核管理器自动拒绝建 议的编辑1345、1278和459,并且建议的编辑892的状态保持为待 决。

树形图120指示建议的编辑574与建议的编辑1126具有复合关 系,并且与建议的编辑687具有冲突关系。特别地,建议的编辑574 取决于建议的编辑1126,使得对建议的编辑574的接受需要对建议 的编辑1126的接受。在一个示例中,编辑人108直接接受建议的编 辑574,并且审核管理器102自动接受建议的编辑1126并且自动拒 绝建议的编辑687。在另一示例中,编辑人108直接接受建议的编辑 1126。在这种情况下,建议的编辑574和687二者保持为待决。建 议的编辑574的状态不变,这是因为接受建议的编辑1126对于接受 建议的编辑574而言是必须的但不一定是充分的。在另一示例中, 编辑人108直接拒绝建议的编辑1126,并且审核管理器自动拒绝建 议的编辑574。建议的编辑687的状态保持为待决,这是因为拒绝建 议的编辑574对于接受建议的编辑687而言是必须的但不一定是充 分的。在另一示例中,编辑人108直接接受建议的编辑687,并且审 核管理器102自动拒绝建议的编辑574并且接受建议的编辑1126。 在一个示例中,建议的编辑1126包括插入的段落,并且建议的编辑 574包括在插入的段落内删除的语句。另外,建议的编辑687为在删 除的语句中插入的词语。在这种情况下,当编辑人108接受建议的 编辑687时,建议的编辑574可以被自动拒绝,并且建议的编辑1126 可以被自动接受。

树形图119和120为用于存储文档106中的建议的编辑之间的 关系的数据结构的示例。该树形图119和120各自示出三级建议的 编辑,并且被简化用于说明目的。通常,建议的编辑之间的关系可 能更复杂并且可能包括任何数目的等级。用树形结构(诸如树形图 119和120)来代表建议的编辑之间的关系使得审核管理器102能够 基于对第一建议的编辑的接受或者拒绝来高效地确定哪些建议的编 辑应当被自动接受或者拒绝。

数据结构117至120以及主文档106可以存储在同一电子数据 库103上,或者可以存储在不同的数据库上。在一些实施例中,主 文档106的原始版本存储在数据库上。例如,原始版本和数据结构 118的组合将足以使用动态方法来生成文档的各种版本。特别地,如 果用户希望仅查看建议的编辑的子集,则可以生成文档的包括原始 版本和建议的编辑的子集的版本。该子集可以包括与特定用户、用 户类型或者编辑类型对应的那些建议的编辑。所生成的版本可以不 存储在数据库上。替代地,在用户访问文档时,可以(基于用户的 设置)生成该用户特定的版本。

除了示例数据结构117至120中所存储的数据,审核管理器102 还可以存储另外的数据。例如,可以存储指示所有用户如何与文档 交互的数据,诸如文档的哪些部分被最多地查看或者阅读。

图5至图17是用于用户与主文档106交互的用户界面的示例性 显示的图。特别地,图5至图10是在文档106包括一对复合编辑的 时审核人界面114(图5至图6)和编辑人界面110(图7至图10) 的示例性显示。图11至图16是在文档106包括一对冲突编辑时审 核人界面114(图11至图13)和编辑人界面110(图14至图16) 的示例性显示。图17是包括编辑人显示选项的集合的编辑人界面 110的示例性显示。

图5至图6是根据说明性实施例的、用于审核人112与主文档 106交互的审核人界面114的显示的示例性图500至600。特别地, 可以实时地更新审核人界面114的显示,使得能够向审核人112(即 审核人112a)实时地告知由其他用户(例如审核人112b和112c以 及编辑人108)做出的对文档106的更改(即建议的编辑或者批注的 形式的更改)。以这一方式,审核人112a可以鉴于由所有其他合作 者对文档106做出的最近的建议来对文档106的更改作出他/她自己 的判断。因此,本文中所描述的系统和方法促进用于编辑文档106 的高效协同。

图500包括具有建议的编辑1254的原始文档106的一部分。特 别地,所建议的编辑1254包括向文档添加语句,并且通过围绕文本 的框而区别于文档的其余部分。此外,图500包括在审核人界面114 的右手侧的侧边栏,该侧边栏用于显示与建议的文本1254关联的元 数据。特别地,该侧边栏包括与建议的文本1254关联的元数据区域 224。该元数据区域224包括指示如下内容的数据:哪个用户做出了 建议的编辑1254(即审核人A)、与建议的编辑1254对应的编辑类 型(即添加)、做出建议的编辑的时间和日期(即今天上午10:00)、 以及要添加的对象的指示(即“在文档的开发期间”)。元数据区 域224中所示的元数据可以存储在数据结构、诸如图3所示的数据 结构118中。

图600类似于图500,只是图600还包括另一建议的编辑1345。 该建议的编辑1345包括向由建议的编辑1254添加的语句添加词语 “电子”。此外,位于审核人界面114的右手侧的侧边栏包括与建 议的编辑1345关联的另一元数据区域228。该元数据区域228指示 建议的编辑1345包括添加词语“电子”并且由审核人B来做出。元 数据区域1345还包括对审核人B做出建议的编辑1254的日期和时 间的指示。所建议的编辑1345通过围绕文本的带有虚线的框而区别 于文档的其余部分。作为元数据区域228与建议的编辑1345对应的 指示,该元数据区域228还被带有虚线的框围绕。该元数据区域228 中所示的元数据可以存储在数据结构、诸如图3所示的数据结构118 中。

当审核人B做出建议的编辑1345时,审核管理器102确定建议 的编辑1345与建议的编辑1254具有复合关系。特别地,审核管理 器102确定对建议的编辑1345的接受取决于对建议的编辑1254的 接受。为了显示对建议的编辑1254与1345之间的复合关系的指示, 在元数据区域224内显示元数据区域228。

当审核人A和B分别做出建议的编辑1254和1345时,审核管 理器102可以通过网络101接收指示所建议的编辑1254和1345的 数据,并且可以因此更新建议列表105。另外,还可以在通过网络 101接收到新的建议的编辑时更新图3所示的数据结构118和图4 所示的树形图120。

图500和600为示例性显示并且被示出仅用于说明目的。特别 地,本领域普通技术人员应当理解,可以在审核人界面114上以任 何数目的方式显示与建议的编辑关联的元数据的任何组合。例如, 元数据区域224和228可以仅包括要添加的文本的一部分。当审核 人经由用户输入(诸如使用鼠标点击或者使用键盘输入)来选择围 绕建议的编辑1254或1345的区域或者元数据区域224或228时, 可以用颜色加亮所选择的元数据区域和/或所建议的编辑,或者可以 用任何其他方式区分所选择的元数据区域和/或建议的编辑与文档 106的其余部分。图500和600示出所建议的编辑1254和1345通过 围绕文本的框而区别于文档的其余部分。然而,可以使用任何区分 建议的编辑(诸如1254和1345)与文档106的其余部分的方法,包 括针对不同的审核人使用不同的颜色、针对不同编辑类型使用不同 的颜色、对添加的条目加下划线、对去除的条目加删除线、对文档 的视图加红线、或者在文档中区分建议的编辑的任何其他合适的方 法。

图7至图10是根据说明性实施例的、在编辑人108与文档106 交互时编辑人界面110的示例性图700至1000。特别地,图700是 在编辑人108被提示接受或者拒绝所建议的编辑1254或者1345中 的一个或多个建议的编辑时编辑人界面110的示例显示。图800至 图1000是在编辑人108做出接受或者拒绝建议的编辑1254或者 1345的选择时编辑人界面110的示例显示。因为所建议的编辑1254 和1345具有复合关系,所以对一个建议的编辑的接受或者拒绝可以 影响对另一建议的编辑的接受或者拒绝。

用于编辑人108的图700包括与用于审核人112的图600相似 的视图,只是图700包括若干附加选项。特别地,图700包括编辑 人显示选项按钮334(关于图17更详细地描述)以及判定框330和 332。该判定框330和332分别与建议的编辑1254和1345对应,并 且是用于编辑人108做出接受或者拒绝所对应的建议的编辑的选择 的提示。当编辑人108(以选择判定框330或者332中的选项之一的 形式)提供用户输入时,文档的标记版本的显示将被更新以反映由 编辑人108做出的选择。

作为一个示例,图800是当编辑人108已经通过向判定框332 提供用户输入来接受建议的编辑1345时该编辑人界面110的显示的 视图。在这种情况下,因为所建议的编辑1345与1254具有复合关 系,这表示对所建议的编辑1345的接受需要对所建议的编辑1254 的接受,所以审核管理器102响应于从编辑人108接收到对所建议 的编辑1345的接受而自动接受所建议的编辑1254。在一个示例中, 审核管理器102通过参考数据结构118或者树形图119、或者通过使 用用于标识两个或多个建议的编辑之间的复合关系的任何其他合适 的方法来确定所建议的编辑1345和1254之间的复合关系。

当编辑人108选择接受建议的编辑1345时,所建议的编辑1345 的状态被更新。为了更新所建议的编辑1345的状态,审核管理器102 可以更新指示所建议的编辑1345在数据结构、诸如数据结构118中 的状态的条目。建议的编辑的状态的示例包括待决(即编辑人108 尚未选择接受或者拒绝所建议的编辑的情况)、接受(即编辑人108 接受所建议的编辑的情况)、或者拒绝(即编辑人108拒绝所建议 的编辑的情况)。在这种情况下,在从编辑人108接收到该接受时, 可以将所建议的编辑1345的状态从待决更新为接受。另外,对所建 议的编辑1345的状态的更新需要对所建议的编辑1254的状态的更 新。在这种情况下,对所建议的编辑1254的状态的更新可能还需要 对与图118中的所建议的编辑1254对应的数据项的更新、以及对树 形图119和120的更新。此外,可以将接受或者拒绝建议的编辑的 编辑人108的标识的指示存储在数据结构、诸如数据结构118中。 然后,当其他编辑人查看文档106或者文档106的历史时,可以确 定对文档106做出更改的编辑人108的标识。

此外,当编辑人108接受所建议的编辑1345时,文档的视图也 被更新。特别地,围绕所建议的编辑1254和1345的框从图800中 被去除以指示编辑人108已经接受由审核人A建议的对语句的添加 以及由审核人B建议的对词语“电子”的添加。另外,判定框330 可以包括(与元数据区域224对应的)所建议的编辑1254也已经被 自动接受的指示(未示出)。对文档106的视图的更新可以向查看 文档的任何用户实时地显示。在某些实现中,在从编辑人108接收 到对所建议的编辑的接受时,从侧边栏去除与受影响的建议的编辑 对应的元数据区域。在其他实现中,可以向与文档106交互的用户 示出所建议的编辑在侧边栏中已经被接受的指示。这一指示可以与 元数据区域、图标或者任何其他合适的指示的压缩版本对应。

在另一示例中,图900是在编辑人108已经通过向判定框330 (未示出)提供用户输入来接受建议的编辑1254之后编辑人界面 110的显示的视图。在接收到对建议的编辑1254的接受时,审核管 理器102从侧边栏去除判定框330。作为对所建议的编辑1254的接 受的结果,审核人A所添加的语句在主文档106中被更新,并且围 绕语句的框(指示建议的编辑1254先前为待决)已经被去除。围绕 语句的框的去除指示语句的添加已经被编辑人108接受。

另外,对建议的编辑1254的接受不影响建议的编辑1345的状 态。特别地,建议的编辑1254和1345之间的复合关系使得对建议 的编辑1345的接受需要对建议的编辑1254的接受。然而,对建议 的编辑1254的接受不影响建议的编辑1345的状态。因此,复合关 系、诸如建议的编辑1254和1345之间的复合关系具有方向性。在 这种情况下,建议的编辑1345的状态不变,使得该状态保持待决。 因此,编辑人界面110仍然显示判定框332,该判定框332提示编辑 人108接受或者拒绝所建议的编辑1345。

在另一示例中,图1000是当编辑人108通过向判定框330提供 用户输入来拒绝建议的编辑1254时编辑人界面110的显示的视图。 在这种情况下,因为所建议的编辑1345与所建议的编辑1254具有 复合关系,这表示对建议的编辑1254的拒绝另外需要对建议的编辑 1345的拒绝。所以,审核管理器102响应于从编辑人108接收到对 建议的编辑1254的拒绝而自动拒绝建议的编辑1345。在一个示例 中,审核管理器102通过参考数据结构118或者树形图119、或者通 过使用用于标识两个或多个建议的编辑之间的复合关系的任何其他 合适的方法来确定建议的编辑1345和1254之间的复合关系。

当编辑人108选择拒绝建议的编辑1254时,通过更新指示所建 议的编辑1254在数据结构、诸如数据结构118中的状态的条目,建 议的编辑1345的状态被更新。在这种情况下,在从编辑人108接收 到接受时,可以将建议的编辑1254的状态从待决更新为拒绝。另外, 对建议的编辑1254的状态的更新需要对建议的编辑1345的状态的 更新。在这种情况下,对建议的编辑1254的状态的更新可能还需要 对与图118中的建议的编辑1345对应的数据项的更新、以及对树形 图119和120的更新。

此外,当编辑人108拒绝建议的编辑1254时,文档的视图也被 更新。特别地,与建议的编辑1254(语句)和1345(词语“电子”) 对应的添加被从图1000中去除以指示编辑人108拒绝这些添加。特 别地,编辑人108已经直接拒绝了由审核人A建议的对语句的添加, 并且已经间接拒绝了由审核人B建议的对词语“电子”的添加。对 文档的视图的更新可以向查看文档106的任何用户实时地显示。

在某些实现中,当编辑人108通过接受或者拒绝建议的编辑来 对文档106做出直接更改时,审核管理器102提示编辑人108确认 做出直接更改所需要的间接更改。在某些实现中,(例如通过使用 不同的颜色或者不同的格式类型)与直接更改不同地显示对文档106 的间接更改。在某些实现中,在从编辑人108接收到对建议的编辑 的拒绝时,从侧边栏去除与受影响的建议的编辑对应的元数据区域。 在其他实现中,可以向与文档106交互的用户示出建议的编辑已经 在侧边栏中被拒绝的指示。这一指示可以与元数据区域、图标或者 任何其他合适的指示的压缩版本对应。

在某些实现中,审核管理器102被配置成允许编辑人108撤销 对建议的编辑的先前的接受或者拒绝。例如,编辑人108可以拒绝 建议的编辑1254。在这种情况下,审核管理器102可以自动拒绝建 议的编辑1345,因为对建议的编辑1254的拒绝需要对建议的编辑 1345的拒绝。然而,即使在编辑人108间接拒绝建议的编辑1345 之后,仍然可以通过编辑人界面110向编辑人108显示建议的编辑 1345的指示。例如,这一指示可以是编辑人界面110的侧边栏中的 图标,并且编辑人108可以例如通过在图标上方悬停或者通过提供 用户输入、诸如鼠标点击来选择查看经拒绝的建议的编辑1345。在 查看经拒绝的建议的编辑1345的同时,编辑人108可以选择直接接 受建议的编辑1345,以有效地撤销对建议的编辑1254和1345的拒 绝。备选地,编辑人108可以确认对建议的编辑1345的拒绝,并且 对应的图标可以从侧边栏中被去除。类似地,编辑人108可以撤销 对建议的编辑的先前的接受。审核管理者102因此允许编辑人108 审核响应于从编辑人108接收到直接更改而自动做出的间接更改。 另外,审核管理器102允许编辑人108撤销对建议的编辑的先前的 接受或者拒绝。这一特征在编辑人108改变他的/她的主意的情况下、 在期望允许编辑人108审核由另一编辑人做出的先前的判定或者审 核由同一编辑人108做出的先前的判定时很有用。在某些实现中, 多个编辑人108协同以对文档106做出更改。在这种情况下,这一 特征可以使得编辑人108能够撤销由另一编辑人做出的先前的接受 或者拒绝。

图11至图13是根据说明性实施例的、用于审核人112与具有 冲突的建议的编辑的主文档106交互的审核人界面114的显示的示 例性图1100至1300。

图1100包括具有建议的编辑574的原始文档106的一部分。特 别地,建议的编辑574包括删除文档106中的某个段落,并且通过 穿过该段落的文本的线而区别于文档106的其余部分。此外,图1100 包括用于显示与建议的编辑574关联的元数据的侧边栏。特别地, 该侧边栏包括与建议的编辑574关联的元数据区域440。该元数据区 域440与图500中的元数据区域224类似。特别地,该元数据区域 440包括指示如下内容的数据:哪个用户做出了建议的编辑574(即 审核人C)、与建议的编辑574对应的编辑类型(即删除)、做出 建议的编辑的时间和日期(即今天上午9:42)、以及对要添加的对 象的指示(即“由于每个审核人可以创建一个……”)。元数据区 域440中所示的元数据可以存储在数据结构、诸如图3所示的数据 结构118中。此外,元数据区域440包括用于用户选择在文档的视 图中示出建议的编辑574的选项。特别地,如果示出选项被选中(如 图1100中所示),则显示穿过段落的文本的线,以指示建议的删除。 备选地,如果示出选项未被选中(如图1200中所示),则不显示穿 过段落的文本的线,不示出建议的删除的指示。在图1200中,元数 据区域440仍然被显示在审核人界面114的侧边栏中。可选地,元 数据区域440可以包括当用户选择不示出对应的建议的编辑时图 1200中示出的内容的压缩版本。例如,该压缩版本可以包括元数据 区域440的缩水版本,该元数据区域440的缩水版本包括所显示的 元数据的子集,或者该压缩版本可以是图标的形式。

图1300与图1200相同,只是图1300还包括另一建议的编辑687。 该建议的编辑687包括向文档106的章节添加词语“不同”。此外, 位于审核人界面114的右手侧的侧边栏包括与建议的编辑687关联 的另一元数据区域442。该元数据区域442指示建议的编辑687包括 添加词语“不同”并且由审核人B做出。该元数据区域442还包括 对审核人B做出建议的编辑687的日期和时间的指示。建议的编辑 687通过围绕文本的具有虚线的框而区别于文档的其余部分。作为元 数据区域442与建议的编辑687对应的指示,元数据区域442还被 具有虚线的框围绕。元数据区域440和442中所示的元数据可以存 储在数据结构、诸如图3所示的数据结构118中。

当审核人B做出建议的编辑687时,审核管理器102确定建议 的编辑687与建议的编辑574具有冲突关系。特别地,审核管理器 102确定对建议的编辑687的接受需要对建议的编辑574的拒绝。此 外,对建议的编辑574的接受需要对建议的编辑687的拒绝。为了 显示建议的编辑687和574之间的冲突关系的指示,在元数据区域 440内显示元数据区域442,并且在元数据区域440和442上方显示 指示冲突关系的警告。

另外,当与文档106交互的用户选择示出建议的编辑687或者 574之一时,另一建议的编辑被自动隐藏。在图1300的示例显示中, 审核人已经选择示出建议的编辑687。因此,围绕词语“不同”的框 被显示,并且穿过由建议的编辑574建议的、要删除的段落的线未 被显示。如图1300中所示,即使建议的编辑574在文档的显示中未 被示出,与建议的编辑574对应的元数据区域400仍然在审核人界 面114的侧边栏中被示出。在某些实现中,如以上所描述的,在对 应的建议的编辑未示出时可以显示元数据区域440的压缩版本。

当审核人B和C分别作出建议的编辑687和574时,审核管理 器102可以通过网络101接收指示建议的编辑687和574的数据, 并且可以因此更新建议列表105。另外,还可以在通过网络101接收 到新的建议的编辑时更新图3所示的数据结构118和图4所示的树 形图120。

在某些实现中,当编辑人108通过接受或者拒绝建议的编辑来 对文档106做出直接更改时,审核管理器102提示编辑人108确认 做出直接更改所需要的间接更改。在某些实现中,(例如通过使用 不同的颜色或者不同的格式类型)与直接更改不同地显示对文档106 的间接更改。在某些实现中,在从编辑人108接收到对建议的编辑 的拒绝时,从侧边栏去除与受影响的建议的编辑对应的元数据区域。 在其他实现中,可以向与文档106交互的用户示出所建议的编辑已 经在侧边栏中被拒绝的指示。这一指示可以与元数据区域、图标或 者任何其他合适的指示的压缩版本对应。

图14至图16是根据说明性实施例的、在编辑人108与包括冲 突的建议的编辑的文档106交互时编辑人界面110的示例性图1400 至1600。特别地,图1400是当编辑人108被提示接受或者拒绝建议 的编辑574和687中的一个或多个建议的编辑时编辑人界面110的 示例显示。图1500至图1600是当编辑人108做出接受建议的编辑 574或者687的选择时编辑人界面110的示例显示。因为建议的编辑 574和687具有冲突关系,所以对一个建议的编辑的接受排斥对另一 建议的编辑的接受。

用于编辑人108的图1400包括与用于审核人112的图1300相 似的视图,只是图1400包括若干附加选项。特别地,图1400包括 编辑人显示选项按钮334(关于图17更详细地描述)以及判定框544 和546。判定框544和546分别与建议的编辑574和687对应,并且 是用于编辑人108做出接受或者拒绝对应的建议的编辑的选择的提 示。当编辑人108(以选择判定框544或者546中的选项之一的形式) 提供用户输入时,文档的标记版本的显示将被更新以反映由编辑人 108做出的选择。

作为一个示例,图1500是当编辑人108已经通过向判定框546 提供用户输入来接受建议的编辑687时编辑人界面110的显示的视 图。在这种情况下,因为建议的编辑687与建议的编辑574具有冲 突关系,所以审核管理器102响应于从编辑人108接收到对建议的 编辑687的接受而自动拒绝建议的编辑574。在一个示例中,审核管 理器102通过参考数据结构118或者树形图120、或者通过使用用于 标识两个或多个建议的编辑之间的复合关系的任何其他合适的方法 来确定建议的编辑574和687之间的冲突关系。

当编辑人108选择接受建议的编辑687时,通过例如更新数据 结构118中的条目,建议的编辑687的状态被更新。另外,对建议 的编辑687的状态(即从待决到接受)的更新需要对建议的编辑574 的状态(即从待决到拒绝)的更新。在这种情况下,对建议的编辑 574的状态的更新可能还包括对与数据结构118中的建议的编辑574 对应的数据项的更新、以及对树形图119和120的更新。

此外,当编辑人108接受建议的编辑687时,文档的视图也被 更新。特别地,文档的标记版本不再包括建议的编辑687和574为 待决的指示(即用指示建议的编辑687和574红线标记的更改被去 除)。另外,判定框544包括(与元数据区域440对应的)建议的 编辑574已经被自动拒绝的指示。

在另一示例中,图1600是在编辑人108已经通过向判定框544 提供用户输入来接受建议的编辑574之后编辑人界面110的显示的 视图。在接收到对建议的编辑574的接受时,审核管理器102可以 从侧边栏去除判定框544。作为对(建议删除文档中的某个段落的) 建议的编辑574的接受的结果,所删除的段落从主文档106中被去 除。此外,建议的编辑687由于建议的编辑574和687之间的冲突 关系而被自动或者间接拒绝。

图1500和1600中示出的示例指示彼此具有冲突关系的两个建 议的编辑相互冲突,这表示对任一个建议的编辑的接受需要对另一 建议的编辑的拒绝(或者相当于排斥对另一建议的编辑的接受)。 然而,对一个建议的编辑的拒绝不影响另一建议的编辑。也就是说, 如果建议的编辑574被拒绝,则编辑人108仍然可以被提示接受或 者拒绝建议的编辑687,反之亦然。

如关于用于复合的建议的编辑的图5至图10所描述的,对建议 的编辑的状态的更新可以通过更新指示所建议的编辑在数据结构、 诸如数据结构118中的状态的条目来实现。另外,对一个建议的编 辑的状态的更新可能需要对一个或多个其他建议的编辑的状态的更 新。

此外,当编辑人108向判定框、诸如判定框544和546提供用 户输入时,文档的视图被实时地更新。特别地,因为编辑人108接 受了对段落的删除,所以从文档的显示上去除建议的编辑574中的 段落。特别地,编辑人108已经直接接受了由审核人C建议的对段 落的删除并且已经间接拒绝了由审核人B建议的对词语“不同”的 添加。

在某些实现中,当编辑人108通过接受或者拒绝建议的编辑来 对文档106做出直接更改时,审核管理器102提示编辑人108确认 做出直接更改所需要的间接更改。在某些实现中,(例如通过使用 不同的颜色或者不同的格式类型)与直接更改不同地显示对文档106 的间接更改。在某些实现中,在从编辑人108接收到对建议的编辑 的拒绝时,从侧边栏去除与受影响的建议的编辑对应的元数据区域。 在其他实现中,可以向与文档106交互的用户示出建议的编辑已经 在侧边栏中被拒绝的指示。这一指示可以与元数据区域、图标或者 任何其他合适的指示的压缩版本对应。

图17是根据说明性实施例的、当编辑人108与文档106交互时 编辑人界面110的视图的说明性图1700。特别地,在图1700中,编 辑人108已经通过选择编辑人显示选项按钮334来选择显示编辑人 显示选项。当编辑人显示选项按钮334被选中时,编辑人界面110 的侧边栏包括显示框654。特别地,显示框654包括用于编辑人108 的显示选项以及判定选项(即拒绝选项650和接受选项652)的列表。

特别地,显示框654允许编辑人108选择性地查看与文档106 相关的所有建议的编辑的子集。例如,编辑人108可能希望仅查看 与特定审核人对应的建议的编辑或者与特定类型的建议的编辑对应 的建议的编辑。在这种情况下,编辑人108可以在显示框654中的 显示选项下选择和取消选择适当的选项集合。当编辑人108选择和 取消选择显示选项时,可以实时地更新文档的显示的视图。如图所 示,编辑人108已经选择查看与每个人的活动对应的选项。在选择 这一选项时,可以自动选择紧邻审核人的标识符(即审核人A、审 核人B和审核人C)的每个框,并且可以在显示中示出所有建议的 编辑。跟随审核人标识符的数字与该审核人遗留的待决建议的数目 相对应。例如,审核人A具有5个待决的建议的编辑,审核人B具 有2个待决的建议的编辑,审核人C具有3个待决的建议的编辑。 审核人管理器102可以在编辑人108接受或者拒绝文档106中的建 议的编辑时适当地更新这些数字。

显示框654还允许编辑人108选择性地查看与编辑类型对应的 建议的编辑的子集。编辑人108可以选择和取消选择适当的选项子 集以显示与一个或多个期望的编辑类型对应的编辑。如图所示,编 辑人108已经选择查看与批注、添加、删除、拼写错误和格式更改 对应的所有编辑。在这种情况下,显示中示出了所有编辑,而不管 编辑类型。该审核管理器可以使用图3所示的数据结构容易地确定 要在文档的视图中显示的建议的编辑的子集。

在一个示例中,编辑人108可能希望仅查看与审核人B对应的 那些建议的编辑。为了仅显示由审核人B做出的建议的编辑,编辑 人108可以在显示框654中的显示选项下取消选择除了审核人B之 外的所有审核人。然而,由审核人B做出的建议的编辑之一(即建 议的编辑1345)取决于由审核人A做出的建议的编辑之一(即建议 的编辑1254)。在这种情况下,审核人管理器102可以提示编辑人 108确定是否显示由审核人B做出的编辑取决于其的任何建议的编 辑。取决于来自编辑人108的输入,审核人管理器102可以显示建 议的编辑1254和1345二者,或者可以不显示任何一个建议的编辑。 在一个示例中,除了审核人B所建议的编辑取决于其的任何建议的 编辑,审核人管理器102可以显示由审核人B做出的所有建议的编 辑。

此外,显示框654包括与拒绝选项650和接受选项652对应的2 个选项。该选项650和652使得编辑人108能够接受或者拒绝当前 编辑,该当前编辑可以与文档106中的建议的编辑对应并且可以在 文档中用颜色、指针、或者指示文档中的编辑的任何其他合适的方 式来加亮。此外,该选项650和652还使得编辑人108能够接受或 者拒绝所有可见编辑(即与选择为要在显示选项下显示的那些编辑 对应的编辑)。特别地,可能期望编辑人108接受或者拒绝与特定 审核人(即审核人A)对应的所有编辑。在这种情况下,编辑人108 可以选择仅显示与审核人A对应的那些编辑,并且可以选择选项650 以拒绝所有显示的建议的编辑。备选地,编辑人108可以选择选项 652以接受来自审核人A的所有建议的编辑。作为一个示例,可能 期望的是:如果编辑人108足够信任审核人A,则接受由审核人A 做出的所有建议而没有单独审核它们。

可能期望的是,编辑人108接受或者拒绝与特定编辑类型对应 的所有建议的编辑。特别地,解析每个建议的编辑可能很耗时,尤 其是在所建议的编辑包括对拼写错误、格式更改、或者任何其他微 小的建议的编辑的定位的情况下。因此,编辑人108可以选择仅显 示与一个或多个编辑类型(即拼写错误和格式更改、或者“非实质 性的”建议的编辑)对应的那些编辑,并且选择选项652以接受所 有可见的编辑。然后,编辑人108可以另行考虑解析其余的编辑(即 “实质性的”建议的编辑)。使得编辑人108能够高效地接受或者 拒绝与一个或多个审核人或者一个或多个编辑类型对应的编辑的那 些选项,从而使得能够对文档106高效地做出更改。

显示框654仅出于说明目的而示出,本领域普通技术人员将理 解,可以将所示部件的任何子集和与文档106相关的任何其他种类 的数据进行组合以用于显示。

图18是由审核管理器102使用以确定对文档106的建议的编辑 之间的复合关系和冲突关系的方法1800的说明性流程图。该方法 1800包括以下步骤:从第一审核人接收第一建议的编辑(步骤702) 以及从第二审核人接收第二建议的编辑(步骤704)。审核管理器 102确定所建议的编辑是否彼此冲突(判定块706)。如果所建议的 编辑冲突,则审核管理器102将第一建议的编辑和第二建议的编辑 标记为冲突编辑(步骤708),并且确定是否接受第一建议的编辑(判 定块710)。如果接受第一建议的编辑,则审核管理器102接受第一 建议的编辑并且拒绝第二建议的编辑(步骤712)。否则,如果拒绝 第一建议的编辑,则审核管理器确定是否接受第二建议的编辑(判 定框716)。备选地,如果第一建议的编辑和第二建议的编辑彼此不 冲突,则审核管理器102确定第二建议的编辑是否与第一建议的编 辑复合(判定块720)。如果第二建议的编辑与第一建议的编辑复合, 则审核管理器102将第二建议的编辑标记为与第一建议的编辑复合 (步骤724)。然后审核管理器102确定是否应当接受第二建议的编 辑(判定块726)。如果是,则接受第一建议的编辑和第二建议的编 辑二者(步骤728)。否则,拒绝第二建议的编辑(步骤730),并 且审核管理器确定是否接受第一建议的编辑(判定块732)。

在步骤702,审核管理器102从第一审核人接收第一建议的编辑, 在步骤704,审核管理器102从第二审核人接收第二建议的编辑。该 第一审核人和第二审核人可能是相同的或者不同的审核人。在判定 块706,审核管理器102确定第一建议的编辑和第二建议的编辑是否 彼此冲突。特别地,为了确定所建议的编辑是否具有冲突关系,审 核管理器102可以使用与文档106相关的任何类型的信息。作为一 个示例,如果两个建议的编辑修改文档的同一部分,以及如果对一 个建议的编辑的接受会排斥对另一建议的编辑的接受,则审核管理 器102可以确定所建议的编辑彼此冲突。例如,当文档106为文本 文档时,第一建议的编辑可以与对文本的部分的删除对应,而第二 建议的编辑可以与第一建议的编辑建议删除的部分内的某个文本的 插入对应。在这种情况下,第一建议的编辑和第二建议的编辑冲突, 因为它们修改文档106的同一部分。在另一示例中,当对一个建议 的编辑的接受排斥对另一建议的编辑的接受时,审核管理器102确 定两个建议的编辑具有冲突关系。因此,当两个建议的编辑建议以 不同的方式修改文档106的同一部分时,这可以是给审核管理器102 的两个建议的编辑彼此冲突的指示。

如果在判定块706审核管理器102确定第一建议的编辑和第二 建议的编辑冲突,则审核管理器102将第一建议的编辑和第二建议 的编辑标记为冲突。特别地,将第一建议的编辑和第二建议的编辑 标记为冲突可以包括更新数据结构、诸如图3所示的数据结构118。 作为一个示例,可以使用所冲突的建议的编辑中的建议的编辑标识 符(即数据结构118中的第三列)来更新数据结构中的数据项(即 数据结构118中与建议的编辑对应的行)。此外,可以用冲突的建 议的编辑的标识符来更新与两个冲突的建议的编辑对应的数据结构 的两个行。在另一示例中,审核管理器102可以通过更新树形图、 诸如图4所示的树形图119和120来将第一建议的编辑和第二建议 的编辑标记为冲突。特别地,如果第一建议的编辑已经是树形图的 一部分,则可以向树形图添加第二建议的编辑以指示冲突关系,反 之亦然。

在判定块710,审核管理器102确定是否接受第一建议的编辑。 作为一个示例,审核管理器102可以基于指示接受第一建议的编辑 的用户输入、诸如来自编辑人108的输入来做出这一确定。作为另 一示例,审核管理器102可以基于从编辑人108先前接收到的输入 来做出这一确定。特别地,编辑人108可能已经接受了第三建议的 编辑,该第三建议的编辑可以与第一建议的编辑具有复合关系使得 对第三建议的编辑的接受需要对第一建议的编辑的接受。在这种情 况下,在从编辑人108接收到对第三建议的编辑的接受时,审核管 理器102可以间接确定接受第一建议的编辑。如果审核管理器102 在判定块710确定接受第一建议的编辑,则审核管理器102继续进 行至步骤712以接受第一建议的编辑并且拒绝第二建议的编辑。在 这种情况下,因为第一建议的编辑和第二建议的编辑具有冲突关系, 所以对一个建议的编辑的接受会间接产生对另一建议的编辑的拒 绝。在某些实现中,对另一建议的编辑的间接拒绝可能自动出现。 在其他实现中,编辑人108可以被提示确认对其他建议的编辑的间 接拒绝被期望。

备选地,审核管理器102可以在判定块710确定拒绝第一建议 的编辑。在这种情况下,该确定可以基于来自编辑人108的用以拒 绝第一建议的编辑的用户输入来做出。在另一示例中,审核管理器 102可能已经接收到对第四建议的编辑的接受,该第四建议的编辑与 第一建议的编辑冲突。在这种情况下,审核管理器102在没有从编 辑人108接收到用以拒绝第一建议的编辑的任何明确指令的情况下 间接确定拒绝第一建议的编辑。审核管理器102继续进行至步骤714 以拒绝第一建议的编辑并且继续进行至判定块716以确定是否接受 第二建议的编辑。在这种情况下,如果要接受第二建议的编辑(如 关于判定块710所描述地类似地判定),则在步骤718接受第二建 议的编辑。

如果审核管理器102在判定块706确定第一建议的编辑和第二 建议的编辑不冲突,则审核管理器102继续进行至判定块720以确 定第一建议的编辑和第二建议的编辑是否具有复合关系。特别地, 为了确定所建议的编辑是否具有复合关系,审核管理器102可以使 用与文档106相关的任何类型的信息。作为一个示例,如果两个建 议的编辑修改文档的同一部分,以及如果对一个建议的编辑的接受 会需要对另一建议的编辑的接受,则审核管理器102可以确定建议 的编辑彼此复合。例如,当文档106为文本文档时,第一建议的编 辑可以与到文档106中的一部分文本的插入对应,而第二建议的编 辑可以与对所插入的文本的编辑对应。在这种情况下,第二建议的 编辑与第一建议的编辑复合,因为对第二建议的编辑的接受会需要 对第一建议的编辑的接受。

在某些实现中,如果第一建议的编辑和第二建议的编辑不具有 复合关系,则审核管理器102继续进行至步骤722并且将第二建议 的编辑标记为“独立的”编辑。例如,可以在数据结构118中做出 某种指示以指示第一建议的编辑和第二建议的编辑彼此具有冲突关 系或者复合关系。

如果审核管理器102确定第二建议的编辑与第一建议的编辑复 合(即对第二建议的编辑的接受需要对第一建议的编辑的接受), 则审核管理器继续进行至步骤724以将第二建议的编辑标记为与第 一建议的编辑复合。在这种情况下,审核管理器102可以用指示该 复合关系的数据项来更新数据结构118。作为一个示例,可以用第一 建议的编辑的标识符来更新与第二建议的编辑对应的数据项以指示 该复合关系。在另一示例中,审核管理器102可以更新树形图、诸 如树形图119和120。审核管理器102可以解析任何所存储的树形图 以确定是否有任何树具有与第一建议的编辑对应的条目。可以通过 向第一建议的编辑附加第二建议的编辑并且指示第一建议的编辑和 第二建议的编辑之间的关系来更新包括第一建议的编辑的任何树形 图。

在审核管理器102标记复合关系之后,审核管理器102在判定 块726确定是否接受第二建议的编辑。特别地,如果审核管理器102 确定应当接受第二建议的编辑(如以上所描述的,这通过来自编辑 人108的直接用户输入来进行,或者基于从编辑人108先前接收到 的用户输入由审核管理器102已经对第二建议的编辑的接受自动进 行),则审核管理器102继续进行至步骤728以接受第一建议的编 辑和第二建议的编辑二者。因为对第二建议的编辑的接受需要对第 一建议的编辑的接受,所以这两个建议的编辑在步骤728均被接受。

备选地,如果审核管理器102在判定块726确定要拒绝第二建 议的编辑,则审核管理器102在步骤730拒绝第二建议的编辑。因 为对第二建议的编辑的接受取决于对第一建议的编辑的接受,反之 则不成立,所以第一建议的编辑的状态不变并且保持待决。在这种 情况下,审核管理器102继续进行至判定块732以确定是否接受第 一建议的编辑。如以上所描述的,可以通过从编辑人108接收明确 的用户输入或者通过审核管理器102的自动确定来确定对第一建议 的编辑的接受或者拒绝。特别地,如果审核管理器102确定应当接 受第一建议的编辑,则审核管理器102继续进行至步骤734以接受 第一建议的编辑。否则,审核管理器102在步骤736拒绝第一建议 的编辑。

图18所示的步骤和判定块的顺序仅出于说明的目的,本领域普 通技术人员将理解可以使用任何合适的顺序。特别地,如图18所描 绘地所示,审核管理器102首先在判定块706确定建议的编辑是否 具有冲突关系。如果建议的编辑不具有冲突关系,则审核管理器102 在判定块720确定建议的编辑是否具有复合关系。在一些实施例中, 审核管理器102可以在确定建议的编辑是否具有冲突关系之前确定 建议的编辑是否具有复合关系。判定块706和720的执行顺序并不 重要,审核管理器102可以并行地执行这些过程。在一个示例中, 可以基于其中审核管理器102标识冲突和复合关系的过程的相对复 杂度来选择上述顺序。例如,可能期望的是,在执行其他判定块之 前执行(例如在复杂度或者延迟方面)成本低的判定块(即判定块 706或者720)。

此外,如图所示,方法1800指示当确定两个建议的编辑具有冲 突关系时,在判定块710考虑第二建议的编辑之前,在判定块710 考虑对第一建议的编辑的接受或者拒绝。在这种情况下,可以类似 地颠倒第一建议的编辑和第二建议的编辑的考虑顺序而不偏离本文 中所描述的系统和方法的范围。类似地,当第一建议的编辑和第二 建议的编辑具有复合关系时,方法1800包括在判定块732考虑第一 建议的编辑之前在判定块726考虑接受还是拒绝第二建议的编辑。 在这种情况下,可以按照任何顺序来考虑第一建议的编辑或者第二 建议的编辑。特别地,可以通过由编辑人108接收的用户输入的顺 序来确定上述顺序。

图19是由审核管理器102使用以基于对第一建议的编辑的接受 或者拒绝来确定接受还是拒绝任何建议的编辑的方法1900的说明性 流程图。在一个示例中,方法1900代表由审核管理器102执行以解 析树形图、诸如树形图119和120从而标识冲突关系或者复合关系 的步骤。方法1900包括以下步骤:确定接受第一建议的编辑(判定 块802)并且接受第一建议的编辑(步骤804)。方法1900还包括: 确定第一建议的编辑是否与任何其他建议的编辑冲突(判定块806) 并且拒绝与第一建议的编辑冲突的任何经标识的建议的编辑(步骤 808)。方法1900还包括:确定第一建议的编辑是否取决于任何其 他建议的编辑(或者与任何其他建议的编辑具有复合关系)(判定 块810)并且接受第一建议的编辑取决于其的任何经标识的建议的编 辑(步骤812)。

在判定块802,审核管理器102确定接受第一建议的编辑。如关 于方法1800的判定块710和726所描述的,审核管理器102可以基 于指示接受第一建议的编辑的用户输入、诸如来自编辑人108的输 入来做出这一确定。在另一示例中,审核管理器102可以基于从编 辑人108先前接收到的输入(即通过接收对另一建议的编辑的接受, 该另一建议的编辑的接受需要对第一建议的编辑的接受)来做出这 一确定。

在步骤804,审核管理器102接受第一建议的编辑。在某些实现 中,接受第一建议的编辑包括更新文档106的视图以反映该接受。 例如,当第一建议的编辑为待决时,文档106的视图可能已经包括 该文档的指示建议的编辑的标记(即建议的添加可能被加下划线, 建议的删除可能被加删除线等)。在接受第一建议的编辑时,可以 从显示上去除标记。另外,可以更新存储与第一建议的编辑相关的 数据的数据结构以反映该接受。特别地,该数据结构可以具有用于 第一建议的编辑的状态的字段项,并且可以将状态从待决更新为接 受。

在判定块806,审核管理器102确定第一建议的编辑是否与任何 建议的编辑冲突。为此,审核管理器102可以使用数据结构、诸如 数据结构118来确定任何冲突的建议的编辑的标识符(如果存在)。 在另一示例中,审核管理器102可以使用树形图、诸如树形图119 或者120来标识与第一建议的编辑冲突的任何建议的编辑。如果任 何冲突的建议的编辑被标识,则审核管理器102在步骤808拒绝冲 突的建议的编辑。在某些实现中,拒绝冲突的建议的编辑包括更新 文档106的视图以反映该拒绝。例如,在拒绝时,可以从显示去除 文档的指示冲突的建议的编辑的标记。另外,可以更新存储与冲突 的编辑相关的数据的数据结构来反映该冲突。特别地,该数据结构 可以具有用于所标识的冲突的建议的编辑的状态的字段项,并且可 以将这些编辑的状态从待决更新为拒绝。

在判定块810,审核管理器102确定第一建议的编辑是否取决于 任何其他建议的编辑。特别地,审核管理器102标识任何复合关系, 使得对第一建议的编辑的接受需要对一个或多个其他建议的编辑的 接受。为此,审核管理器102可以使用数据结构、诸如数据结构118 来确定任何复合的建议的编辑的标识符(如果存在)。

审核管理器102可以使用树形图、诸如树形图119或者120以 标识对第一建议的编辑的接受需要其接受的任何建议的编辑。特别 地,这些编辑可以是比第一建议的编辑定位在更高级别的那些复合 的建议的编辑。作为一个示例,参考树形图119,如果第一建议的编 辑是建议的编辑1278,则审核管理器102将建议的编辑1254标识为 与第一建议的编辑复合。因为建议的编辑459比建议的编辑1278在 更低级别处,所以本文不考虑建议的编辑1278和459之间的复合关 系,并且对建议的编辑1278的接受不需要对建议的编辑459的状态 的改变。

作为一个示例,如果第一建议的编辑是建议的编辑459,则审核 管理器102将建议的编辑1278标识为与第一建议的编辑复合。因此 对建议的编辑459的接受需要对建议的编辑1278的接受。另外,审 核管理器102可以额外确定对建议的编辑459的接受取决于对建议 的编辑1278所需要的任何建议的编辑(即建议的编辑1254)的接受。 因此也可以需要对建议的编辑1254的接受以便接受建议的编辑 459。因此,在判定块820可以标识两个建议的编辑1254和1278。 总之,在判定块810可以标识在树形图、诸如树形图119的任何数 目的级别处的任何数目的建议的编辑。

如果在判定块810标识任何建议的编辑,则审核管理器102在 步骤812接受复合的建议的编辑。在某些实现中,接受复合的建议 的编辑包括更新文档106的视图以反映该接受。例如,在接受时, 可以从显示去除文档的指示复合的建议的编辑的标记。另外,可以 更新存储与复合的编辑相关的数据的数据结构以反映该接受。特别 地,该数据结构可以具有用于所标识的建议的编辑的状态的字段项, 并且可以将这些编辑的状态从待决更新为接受。

图20和图21是由审核管理器102使用以确定两个建议的编辑 具有复合关系(即方法2000)还是具有冲突关系(即方法2100)的 方法2000和2100的说明性流程图。方法2000包括以下步骤:接收 第一编辑和第二编辑(步骤902),标识第一编辑和第二编辑的共享 位置(904),以及基于该标识来确定第一编辑和第二编辑具有复合 关系(步骤906)。

在步骤902,审核管理器102接收第一编辑和第二编辑。该第一 编辑和第二编辑可以与文档的任何类型的建议的编辑(诸如建议的 插入、删除、替换、格式更改、或者任何其他合适类型的建议的编 辑)对应。这些编辑可以从相同的审核人或者不同的审核人来接收。

在步骤904,审核管理器102标识第一编辑和第二编辑的共享位 置。该共享位置包括文档106中的两个编辑均建议进行更改的同一 部分。例如,第一编辑和第二编辑可以分别与建议的编辑1254和 1345对应,如图7所示。在这种情况下,审核管理器102可以将共 享位置标识为文档中的编辑1254的文本被建议插入其中的区域(即, 在“通常期望…”之前)。

在步骤906,审核管理器102基于该标识来确定第一编辑和第二 编辑具有复合关系。因为这两个编辑均包括文档中的共享位置中建 议的更改,所以该共享位置指示编辑之间的关系。特别地,在标识 第一编辑(即建议的编辑1254)和第二编辑(即建议的编辑1345) 的共享位置之后,审核管理器102确定第一编辑和第二编辑具有复 合关系。该复合关系基于该共享位置来确定。此外,标识该复合关 系是基于对第二建议的编辑的接受需要对第一建议的编辑的接受这 一确定。

方法2100包括以下步骤:接收第一编辑和第二编辑(步骤912), 标识第一编辑和第二编辑的共享位置(步骤914),基于该标识确定 第一编辑和第二编辑具有冲突关系(步骤916),以及显示第一编辑 和第二编辑以及该冲突的指示符(步骤918)。

在步骤912,审核管理器102接收第一编辑和第二编辑。该第一 编辑和第二编辑可以与文档的任何类型的建议的更改(诸如建议的 插入、删除、替换、格式更改、或者任何其他合适的类型的建议的 编辑)对应。这些编辑可以从相同的审核人或者不同的审核人来接 收。

在步骤914,审核管理器102标识第一编辑和第二编辑的共享位 置。该共享位置包括文档106中的两个编辑均建议进行更改的同一 部分。例如,第一编辑和第二编辑可以分别与建议的编辑574和687 对应,如图11和图13所示。在这种情况下,审核管理器102可以 将共享位置标识为文档中的编辑574的文本被建议从其中删除的区 域。

在步骤916,审核管理器102基于该标识来确定第一编辑和第二 编辑具有冲突关系。因为这两个编辑均包括文档中的共享位置中建 议的更改,所以该共享位置指示编辑之间的关系。特别地,在标识 第一编辑(即建议的编辑574)和第二编辑(即建议的编辑687)的 共享位置之后,审核管理器102确定第一编辑和第二编辑具有冲突 关系。此外,标识该冲突关系基于对一个编辑的接受需要对另一编 辑的拒绝(反之亦然)这一确定。

图22是用于执行本文中所描述的过程中的任何过程的计算设备 (诸如图1的系统的部件中的任何部件)的框图。这些系统的部件 中的每个部件可以在一个或多个计算设备2200上来实现。在某些方 面,一个计算设备2200内可以包括这些系统的多个部件。在某些实 现中,可以跨若干计算设备2200来实现部件和存储设备。

计算设备2200包括至少一个通信接口单元、输入/输出控制器 1010、系统存储器、以及一个或多个数据存储设备。系统存储器包 括至少一个随机存取存储器(RAM 1002)以及至少一个只读存储器 (ROM 1004)。所有这些元件与中央处理单元(CPU 1006)通信以 促进计算设备2200的操作。该计算设备2200可以按照很多不同的 方式来配置。例如,该计算设备2200可以是传统的独立的计算机, 或者备选地,该计算设备2200的功能可以跨多个计算机系统和架构 来分布。在图22中,该计算设备2200经由网络或者局域网链接至 其他服务器或者系统。

计算设备2200可以被配置成分布式架构,其中数据库和处理器 被容纳在单独的单元或者位置。一些单元执行主要的处理功能并且 至少包含通用控制器或者处理器和系统存储器。在分布式架构实现 中,这些单元中的每个单元可以经由通信接口单元1008附接至用作 与其他服务器、客户端或者用户计算机和其他相关设备的主要通信 链路的通信集线器或者端口(未示出)。该通信集线器或者端口自 身可以具有最小处理能力,以主要用作通信路由器。各种通信协议 可以是系统的一部分,这些通信协议包括但不限于Ethernet、SAP、 SASTM、ATP、BLUETOOTHTM、GSM和TCP/IP。

CPU 1006包括处理器(诸如一个或多个传统的微处理器)以及 一个或多个补充协处理器(诸如用于从CPU 1006分担工作量的数学 协处理器)。CPU 1006与通信接口单元1008和输入/输出控制器1010 通信,并且通过该通信接口单元1008和输入/输出控制器1010,CPU 1006与其他设备(诸如其他服务器、用户终端或者设备)通信。该 通信接口单元1008和输入/输出控制器1010可以包括用于与例如其 他处理器、服务器或者客户端终端同时通信的多个通信信道。

CPU 1006还与数据存储设备通信。该数据存储设备可以包括磁 性存储器、光学存储器或者半导体存储器的适当组合,并且可以包 括例如RAM 1002、ROM 1004、闪存驱动器、光盘(诸如光碟)或 者硬盘或硬盘驱动器。CPU 1006和数据存储设备各自可以例如完全 位于单个计算机或者其他计算设备内;或者通过通信介质(诸如USB 端口、串行端口线缆、同轴线缆、Ethernet线缆、电话线、射频收发 器或者其他类似的无线或有线介质或者上述各项的组合)彼此连接。 例如CPU 1006可以经由通信接口单元1008连接至数据存储设备。 CPU 1006可以被配置成执行一个或多个特定处理功能。

数据存储设备可以存储例如:(i)计算设备2200的操作系统 1012;(ii)适于根据本文所描述的系统和方法以及特别地根据关于 CPU 1006详细描述的过程来指导CPU 1006的一个或多个应用1014 (例如计算机程序代码或者计算机程序产品);或者(iii)适于存 储可以用于存储程序所需要的信息的信息的数据库1016。

操作系统1012和应用1014可以用例如压缩格式、未编译格式 和加密格式来存储,并且操作系统1012和应用1014可以包括计算 机程序代码。该程序的指令可以从除了数据存储设备之外的计算机 可读介质(诸如从ROM 1004或者从RAM 1002)向处理器的主存储 器中读取。虽然程序中的指令序列的执行使得CPU 1006执行本文中 所描述的过程步骤,然而可以用硬连线电路来代替用于实现本公开 内容的过程的软件指令,或者将硬连线电路与用于实现本公开内容 的过程的软件指令相结合。因此,所描述的系统和方法不限于硬件 和软件的任何具体组合。

可以提供合适的计算机程序代码用于执行与本文中所描述的检 测编辑之间的关系以及对编辑的子集有所行动相关的一个或多个功 能。该程序还可以包括允许处理器经由输入/输出控制器1010来与计 算机外围设备(例如视频显示器、键盘、计算机鼠标等)对接的程 序元件、诸如操作系统1012、数据库管理系统和“设备驱动器”。

本文中所使用的术语“计算机可读介质”指代提供或者参与向 计算设备2200的处理器(或者本文中所描述的设备的任何其他处理 器)提供指令用于执行的任何非暂态介质。这样的介质可以采用很 多形式,包括但不限于非易失性介质和易失性介质。非易失性介质 包括例如光、磁或光磁盘、或者集成电路存储器(诸如闪存)。易 失性介质包括动态随机存取存储器(DRAM),该DRAM通常由主 存储器组成。普通形式的计算机可读介质包括例如软盘、柔性盘、 硬盘、磁带、任何其他磁性介质、CD-ROM、DVD、任何其他光介 质、打孔卡片、纸带、具有孔图案的任何其他物理介质、RAM、PROM、 EPROM或EEPROM(电可擦除可编程只读存储器)、 FLASH-EEPROM、任何其他存储器芯片或磁带盒、或者计算机可以 从其读取的任何其他非暂态介质。

在向CPU 1006(或者本文中所描述的设备的任何其他处理器) 携带一个或多个指令的一个或多个序列用于执行时可能涉及各种形 式的计算机可读介质。例如,该指令可以初始在远程计算机(未示 出)的磁盘上生成。该远程计算机可以向其动态存储器中加载指令 并且通过Ethernet连接、电缆线路或者甚至使用调制解调器通过电 话线发送指令。计算设备2200(例如服务器)本地的通信设备可以 在相应通信线路上接收数据并且将数据放置在用于处理器的系统总 线上。该系统总线向主存储器携带数据,从该主存储器处理器取回 并且执行指令。由该主存储器接收的指令可以可选地在由处理器执 行之前或者之后存储在存储器中。此外,该指令可以经由通信端口 来接收作为电、电磁或者光信号,该电、电磁或者光信号是携带各 种类型的信息的无线通信或数据流的示例性形式。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号