合作电子邮件的制作方法

文档序号:6475054阅读:377来源:国知局
专利名称:合作电子邮件的制作方法
技术领域
本发明领域涉及数据处理,尤其涉及用于合作电子邮件的方法、系统和产品。
背景技术
产生电子邮件文档时用于合作的系统一般在中央位置维护文档的主副本,在主副本中记录变化,并且通过提供整个文档的新副本来更新合作者的副本。尤其当在一段时间内有许多修改时,这使用大量带宽。存在诸如Unix源代码控制系统或“SCCS”之类的版本控制系统,和称为同步版本系统或“CVS”的开放源版本控制系统。这些系统非常适应于用于源代码文档的版本控制,然而其与合作电子邮件结合得并不好,当自动更新到某一修改等级或通过有效数字签名验证时,其缺少对那些合作特性的支持。因此,需要改进用于合作电子邮件的系统和方法。

发明内容
在第一方面,本发明提供用于写合作电子邮件文档的方法,该方法包括在管理员的计算机上建立合作电子邮件文档;标识一个或多个被授权来查看并编辑文档的合作者;向合作者提供用于查看并编辑的文档的副本,其中合作者的副本驻留在合作者的计算机中;在文档的至少一个副本中产生修改;记录修改;并且使用修改更新文档在合作者计算机上的副本。
最好,合作者包括管理员。
最好,在管理员计算机上建立合作电子邮件文档包括为文档标识管理员;和在管理员计算机上保留文档的管理副本。
该方法最好还包括标识电子邮件文档的可编辑的部分,其中标识一个或多个合作者还包括指定特定的合作者被授权来查看并编辑文档的一个或多个部分。
该方法最好还包括在文档验证中记录特定的合作者来编辑文档的一个或多个部分。
该方法最好还包括为文档标识一个或多个签名者;向每个签名者提供文档的副本,用于签名;为每个签名者向文档附加数字签名;从管理员的计算机向收件人发送签名的文档。
该方法最好还包括仅当文档具有来自所有签名者的有效数字签名时,将合作电子邮件文档从管理员计算机发送到收件人。
最好,记录修改包括在可访问合作者计算机的计算机上存储修改。
最好,记录修改包括使用用于每次修改的版本标识来存储修改。
最好,记录修改包括使用用于每次修改的顺序标识存储修改。
最好,使用修改更新文档的副本包括向合作者和管理员计算机异步通信修改。
最好,使用修改更新文档的合作者副本还包括当作出修改时,向一个或多个合作者同步通信修改。
最好,使用修改更新文档的副本还包括标识修改的同步通信可用的合作者计算机;向修改的同步通信可用的合作者计算机同步通信修改;为修改的同步通信可用的合作者计算机上的文档的副本更新当前版本标识。
最好,标识修改的同步通信可用的合作者计算机包括确定是否使用最新的修改同步合作者副本。
最好,使用修改更新文档的副本包括利用晚于副本的当前版本标识符的所有修改来更新文档副本在第二方面,本发明提供用于写合作电子邮件文档的系统,该系统包括用于在管理员的计算机上建立合作电子邮件文档的设备;用于标识一个或多个被授权来查看并编辑文档的合作者的设备;用于向合作者提供用于查看并编辑的文档的副本的设备,其中合作者的副本驻留在合作者的计算机中;用于在文档的至少一个副本中产生修改的设备;用于记录修改的设备;和用于使用修改更新文档在合作者计算机上的副本的设备。
最好,合作者包括管理员。
最好,用于在管理员计算机上建立合作电子邮件文档的设备包括用于为文档标识管理员的设备;和用于在管理员计算机上保留文档的管理副本的设备。
该系统最好还包括用于标识电子邮件文档的可编辑的部分的设备,其中用于标识一个或多个合作者的设备还包括用于指定特定的合作者被授权来查看并编辑文档的一个或多个部分的设备。
该系统最好还包括用于在文档验证中记录特定的合作者来编辑文档的一个或多个部分的设备。
该系统最好还包括用于为文档标识一个或多个签名者的设备;用于向每个签名者提供文档的副本,用于签名的设备;用于为每个签名者向文档附加数字签名的设备;和用于从管理员的计算机向收件人发送签名的文档的设备。
该系统最好还包括仅当文档具有来自所有签名者的有效数字签名时,用于将合作电子邮件文档从管理员计算机发送到收件人的设备。
最好,用于记录修改的设备包括用于在可访问合作者计算机的计算机上存储修改的设备。
最好,用于记录修改的设备包括使用用于每次修改的版本标识来存储修改的设备。
最好,用于记录修改的设备包括使用用于每次修改的顺序标识存储修改的设备。
最好,用于使用修改更新文档的副本的设备包括用于向合作者和管理员计算机异步通信修改的设备。
最好,用于使用修改更新文档的合作者副本的设备还包括当作出修改时,用于向一个或多个合作者同步通信修改的设备。
最好,用于使用修改更新文档的副本的设备还包括用于标识修改的同步通信可用的合作者计算机的设备;用于向修改的同步通信可用的合作者计算机同步通信修改的设备;和用于为修改的同步通信可用的合作者计算机上的文档的副本更新当前版本标识的设备。
最好,用于标识修改的同步通信可用的合作者计算机的设备包括用于确定是否使用最新的修改同步合作者副本的设备。
最好,用于使用修改更新文档的副本的设备包括用于利用晚于副本的当前版本标识符的所有修改来更新文档副本的设备。
在第三方面,本发明包括包含了计算机程序代码的计算机程序,当程序加载到计算机系统并在其上执行时,使所述计算机系统执行根据第一方面的方法的步骤。
计算机程序的优选特征包括用于执行对应于第一方面的优选特征的步骤的代码设备。
本发明的第三方面以用于写合作电子邮件文档的计算机程序产品的方式实现,该计算机程序产品包括记录介质;记录在记录介质上的设备,用于在管理员的计算机上建立合作电子邮件文档;记录在记录介质上的设备,用于标识一个或多个被授权来查看并编辑文档的合作者;记录在记录介质上的设备,用于向合作者提供用于查看并编辑的文档的副本,其中合作者的副本驻留在合作者的计算机中;记录在记录介质上的设备,用于在文档的至少一个副本中产生修改;记录在记录介质上的设备,用于记录修改;和记录在记录介质上的设备,用于使用修改更新文档在合作者计算机上的副本。
最好,合作者包括管理员。
最好,用于在管理员计算机上建立合作电子邮件文档的设备包括记录在记录介质上的设备,用于为文档标识管理员;和记录在记录介质上的设备,用于在管理员计算机上保留文档的管理副本。
该计算机程序产品最好还包括记录在记录介质上的设备,用于标识电子邮件文档的可编辑的部分,其中用于标识一个或多个合作者的设备还包括记录在记录介质上的设备,用于指定特定的合作者被授权来查看并编辑文档的一个或多个部分。
该计算机程序产品最好还包括记录在记录介质上的设备,用于在文档验证中记录特定的合作者来编辑文档的一个或多个部分。
该计算机程序产品最好还包括记录在记录介质上的设备,用于为文档标识一个或多个签名者;记录在记录介质上的设备,用于向每个签名者提供文档的副本,用于签名;记录在记录介质上的设备,用于为每个签名者向文档附加数字签名;和记录在记录介质上的设备,用于从管理员的计算机向收件人发送签名的文档。
该计算机程序产品最好还包括记录在记录介质上的设备,仅当文档具有来自所有签名者的有效数字签名时,用于将合作电子邮件文档从管理员计算机发送到收件人。
最好,用于记录修改的设备包括记录在记录介质上的设备,用于在可访问合作者计算机的计算机上存储修改。
最好,用于记录修改的设备包括记录在记录介质上的设备,其使用用于每次修改的版本标识来存储修改。
最好,用于记录修改的设备包括记录在记录介质上的设备,使用用于每次修改的顺序标识存储修改。
最好,用于使用修改更新文档的副本的设备包括记录在记录介质上的设备,用于向合作者和管理员计算机异步通信修改。
最好,用于使用修改更新文档的合作者副本的设备还包括记录在记录介质上的设备,当作出修改时,用于向一个或多个合作者同步通信修改。
最好,用于使用修改更新文档的副本的设备还包括记录在记录介质上的设备,用于标识修改的同步通信可用的合作者计算机;记录在记录介质上的设备,用于向修改的同步通信可用的合作者计算机同步通信修改;和记录在记录介质上的设备,用于为修改的同步通信可用的合作者计算机上的文档的副本更新当前版本标识。
最好,用于标识修改的同步通信可用的合作者计算机的设备包括记录在记录介质上的设备,用于确定是否使用最新的修改同步合作者副本。
最好,用于使用修改更新文档的副本的设备包括记录在记录介质上的设备,用于利用晚于副本的当前版本标识符的所有修改来更新文档副本。
因此,本发明以各个方面和优选实施例提供用于写合作电子邮件文档的方法、系统和计算机产品,包括在管理员的计算机上建立合作电子邮件文档;标识一个或多个被授权来查看并编辑文档的合作者,其中合作者选择性地包括管理员;向合作者提供用于查看并编辑的文档的副本,其中合作者的副本驻留在合作者的计算机中;在文档的至少一个副本中产生修改;记录修改;并且使用修改更新文档在合作者计算机上的副本。在典型实施例中,使用修改更新文档的副本包括在使用在用于副本的当前版本后的一个或多个修改来更新文档的副本。
典型实施例包括标识电子邮件文档的可编辑的部分,其中标识一个或多个合作者还包括指定特定的合作者被授权来查看并编辑文档的一个或多个部分。典型实施例好包括在文档验证中记录特定的合作者来编辑文档的一个或多个部分。
典型实施例还包括为文档标识一个或多个签名者;向每个签名者提供文档的副本,用于签名;为每个签名者向文档附加数字签名;和从管理员的计算机向收件人发送签名的文档。这些实施例还包括仅当文档具有来自所有签名者的有效数字签名时,将合作电子邮件文档从管理员计算机发送到收件人。
在典型实施例中,记录修改包括在可访问合作者计算机的计算机上存储修改。在这些实施例中,记录修改典型地包括使用用于每次修改的版本标识来存储修改。在这些实施例中,记录修改典型地包括使用用于每次修改的顺序标识存储修改。
在典型实施例中,使用修改更新文档的副本包括向合作者和管理员计算机异步通信修改。在许多实施例中,使用修改更新文档的合作者副本还包括当作出修改时,向一个或多个合作者同步通信修改。在这些实施例中,使用修改更新文档的副本还包括标识修改的同步通信可用的合作者计算机;向修改的同步通信可用的合作者计算机同步通信修改;为修改的同步通信可用的合作者计算机上的文档的副本更新当前版本标识。在这些实施例中,标识修改的同步通信可用的合作者计算机包括确定是否使用最新的修改同步合作者副本。


通过结合附图对本发明的优选实施例进行详细描述,本发明的上述目的和优点将会变得更加清楚,其中图1描述可以实现本发明各种实施例的数据处理系统的体系结构。
图2阐明用在根据本发明实施例的合作电子邮件系统中的自动计算机器的方框图。
图3阐明根据本发明实施例改进的电子邮件客户机上的数据输入(entry)屏幕的线条图。
图4阐明用在本发明各种实施例中的示例性数据结构的数据库图。
图5阐明用于描述写合作电子邮件文档的方法的流程图。
图6阐明用于图解图5的方法的扩展的流程图。
图7阐明用于图解修改的同步通信的方法的流程图。
具体实施例方式
引言这份说明书很大程度上是针对合作电子邮件进行描述的。然而,本领域技术人员应当了解的是,任何包含用于根据公开的方法运行的适当编程手段也都落入本发明的范围。
适当编程手段包括用于引导计算机系统执行本发明方法的步骤的任何手段,例如包括由耦合到计算机存储器的处理单元和计算逻辑电路组成的系统,这种系统在计算机存储器中进行存储的能力,这种计算机存储器包括配置来存储数据和程序指令的电子电路,由处理单元执行的、本发明的方法的编程步骤。本发明还可以以诸如磁盘或其他记录介质之类的计算机程序产品来实现,以用于任何适当数据处理系统。
通过使用用于机器可读信息的任何记录介质,可以实现计算机程序产品的实施例,所述记录介质包括磁介质、光介质或其他适当介质。当以程序产品实现时,本领域技术人员将马上认识到,具有适当编程手段的任何计算机系统都能够执行本发明的方法的步骤。本领域技术人员将马上认识到,虽然在本说明书中描述的绝大多数示例性实施例面向安装并在计算机硬件上执行的软件,不过实现为固件或硬件的替换实施例也在本发明的范围内。
定义在本说明书中,除非上下文另外指出,否则一般将术语“字段”、“数据元素”和“属性”用作同义词,指的是信息的单独元素,通常表示为数字数据。数据元素的总和指的是“记录”或“数据结构”。记录的总和指的是“表”或“文件”。文件或表的总和指的是“数据库”。在数据库中表的上下文中,字段可能指的是“列”,并且记录可能指的是“行”。包括成员方法、函数或软件程序以及数据元素的复杂数据结构指的是“类”。类的实例指的是“对象”或“类对象”。
“CGI”指的是“公共网关接口”,即一种用于在环球网服务器和网络客户机之间资源的数据通信的标准技术。CGI提供在服务器和用于管理向/从数据库和文件系统实际读/写数据的服务器端“网关”接口之间的标准接口。
“客户”、“客户设备”、“客户机”或“客户计算机”指的是能够管理根据本发明实施例的合作电子邮件的任何计算机或其他自动计算机器。例子包括个人计算机、PDA、移动电话、笔记本、手持设备和本领域技术人员了解的其他设备。客户机包括能够无线和有线通信的设备。
“HDML”表示“手持设备标记语言”,一种用于为开通网络功能的移动电话格式化内容的标记语言。HDML由Openwave Systems公司所有,并且仅能在使用Openwave浏览器的电话上运行。与WAP不同,HDML在Openwave的手持设备传输协议(“HDTP”)上运行。
“HTML”表示“超文本标记语言”,一种用于在浏览器上显示网页的标记语言。
“HTTP”表示“超文本传输协议”,一种万维网的标准数据通信协议。HTTP是超链接协议。在本发明示例性实施例中,经常通过使用超链接协议实现修改的异步通信。超链接协议的其他例子包括HDML和WAP。
“POP”指的是邮局协议,即用于从邮件服务器向邮件客户机传递邮件消息的标准协议。“POP3”是能够在邮件服务器之间以及从和向邮件客户机传递邮件消息的标准邮局协议,这表示POP3现在作为单一邮件协议使用而不需要SMTP。
在本说明书中的“服务器”指的是在管理资源的网络上的计算机或其他自动计算机器,所述资源包括文档和访问这些资源的请求。“环球网服务器”是依靠诸如HTTP、WAP或HDTP之类的超链接协议,通过诸如浏览器或微浏览器之类的数据通信应用程序与客户机通信、以便管理并使文档、数据对象和其他资源对于联网计算机可用的服务器。服务器通常包括用于接受数据通信连接以便通过返回应答来服务请求的应用程序。因此,任何计算机或程序均可以是客户机和服务器。在本公开中使用的这些术语基本上指的是由计算机或程序对数据通信的特定连接或耦合所执行的角色,而通常不是计算机或程序的能力。
“SMTP”指的是简单邮件传送协议,即用于从邮件客户机向邮件服务器和从邮件服务器向其他邮件服务器传递邮件消息的标准协议。在现有技术中,SMTP用于从源邮件客户机向邮箱位置传递邮件消息,而POP用于从邮箱向目的邮件客户机传递邮件消息。
“TCP/IP”指的是标准OSI数据通信协议堆栈的两层。利用网络协议即大写的“IP”实现网络层。而利用称为“TCP”的传输控制协议实现传输层。由于两个协议频繁一起使用,所以它们经常被称为“TCP/IP”组,或更简单地称为“TCP/IP”。TCP/IP是适用于所谓因特网的公知计算机全球网的标准数据传输组。
“WAP”指的是无线应用协议,即一种用于手持无线设备的协议。使用WAP的无线设备的例子包括移动电话、寻呼机、无线电收发设备、手持计算机和PDA。许多无线网络支持WAP,并且许多操作系统也支持WAP。WAP支持HTML、XML,特别是WML(无线标记语言),其中WML是为小屏幕和不使用键盘和鼠标的单手导航而特别设计的语言。特别为手持设备设计的操作系统包括PalmOS、EPOC、Windows CE、FLEXOS、OS/9和JavaOS。使用显示器并访问因特网的WAP设备运行“微浏览器”。微浏览器使用能够容纳手持设备的低存储器限制和无线网络的低带宽限制的小型文件。
合作电子邮件根据本发明的方法和系统通常通过当正在写合作电子邮件时,标识被授权来查看并编辑合作电子邮件文档的合作者来实现合作电子邮件。可以将文档的片断标识为只有特定的合作者被授权查看并编辑。
通过一个或多个服务器,修改典型地在合作者的客户机之间异步(或同步)地流动。这样的方法和系统典型地为文档标识管理员,这种管理员客户机上维护有文档的管理副本。管理员可以是也可以不是被授权的合作者,但是管理员的文档副本可以同步于文档的当前版本,使得管理员可以提供关于文档进展的管理服务,管理服务诸如为监视文档状态、保护来自签名者的有效数字签名和最后将文档的最终版本发送到收件人。
在这样的系统中,收件人既可以包含也可以不包含合作者,签名者既可以包含也可以不包含合作者。例如,经理可以指派经理秘书产生合作文档,打入其初始内容,并且作为文档产生的管理员。经理可以指定一个或多个执行者作为签名者,经理所熟知的执行者负责文档的主题区域。经理既可以是也可以不是签名者。在写文档时,经理可以指定将接收文档副本的合作者来查看并编辑文档。实际上,合作者编辑或修改文档可以说就是写文档。经理既可以被列为也可以不被列为合作者。
当合作者完成编辑文档时,管理员可以将其发送给签名者签名。在所有要求的签名附加到文档之后,管理员可以向其收件人“发送”文档。在根据本发明实施例改进的电子邮件客户机中,直到存在所有要求的签名为止,电子邮件客户机的“发送”功能不能启用。合作者客户机上的发送按钮一般是根本不可用的。正如所有合作者副本那样以修改来更新管理员的副本。能够区别管理员客户机和合作者电子邮件客户机的操作的唯一点是(当文档被签名时)在管理员客户机上最终可以向收件人发送,而在合作者客户机上却不能。修改一般仅仅来自关于合作电子邮件文档的合作者客户机的数据的发送。
从图1开始,根据附图对用于合作电子邮件的示例性方法、系统和产品作进一步的说明。图1描述可以实现各种本发明实施例的数据处理系统的体系结构。图1的系统包括多个在网络中耦合用来进行数据通信的计算机。根据本发明实施例,每个所述计算机作为电子邮件客户机或服务器。
图1的系统包括网络102、104。在这样的系统中的网络可以包括局域网、广域网、企业内部内联网、企业内部互联网、因特网、环球网(web)和万维网本身。这样的网络包括能够用于在分布的数据处理系统中连接在一起的各种设备和计算机之间提供数据通信连接的介质。这样的网络包括诸如有线或光纤电缆之类的永久连接,或通过有线电话或无线通信产生的临时连接。
在图1的例子中,服务器128和服务器105连接到网络102。存储器单元132通过服务器105连接到网络102。标识对根据本发明实施例的合作电子邮件文档的修改的修改记录134可以存储在如存储单元132这样的存储单元上。此外,几个示例性客户机设备包括连接到网络102的PDA 106、工作站108和移动电话110。网络启动式移动电话110通过无线连接116连接到网络102,而PDA 106通过无线连接114连接到网络102。在图1的例子中,服务器128直接耦合到客户机工作站130和网络104(其可以是局域网),其合并了支持到膝上计算机126的无线连接的无线通信链路与支持到客户机工作站112的有线连接的有线协议。这些示例性客户机设备可以支持用于根据本发明实施例的用于合作电子邮件的电子邮件客户机。
可以由各种诸如大型机、个人计算机、个人数字助理、网络启动式移动电话等等之类的计算设备代表这样的分布式处理系统中的客户机设备和服务器。在图1中图解的特定服务器和客户机设备是用于说明而不是用于限制。虽然在图1中未示出,但是本领域技术人员应该理解,数据处理系统可以包括其他服务器、客户机、路由器、其他设备和对等结构。本领域技术人员应该理解,在这样的分布式数据处理系统的网络可以支持多种数据通信协议,TCP/IP、HTTP、WAP、HDTP、SMS、SMNT、POP等。除了图1所示的那些,还可以通过各种硬件平台实现本发明的各种实施例。图1表示为可以实现本发明的各种实施例的不同种类计算环境的例子,而不是限制本发明的结构。
虽然在该公开中以客户机-服务器为例概括地描述了示例性实施例,但是其不是本发明的限制。相反对于本领域技术人员来说,可以例如以对等结构或其它计算机结构布置实现本发明的各种实施例。
图2阐明自动计算机器的方框图,所述计算机器包括诸如客户机设备、电子邮件客户机或服务器之类的、用于根据本发明实施例的合作电子邮件的计算机106。图2的计算机106包括至少一个计算机处理器或“CPU”和随机存取存储器168(“RAM”)。存储在RAM 168中的是应用程序152。用于实现合作电子邮件的应用程序包括在服务器和客户机器上的电子邮件客户机运行的Java小服务程序和CGI脚本。此外,存储在RAM 168中的是操作系统154。本领域技术人员应该理解,用于根据本发明实施例的计算机中的操作系统包括Unix、Linux、Microsoft NT等。
图2的计算机106包括通过系统总线160耦合到处理器156和计算机其他部件的计算机存储器166。计算机存储器166可以实现为硬盘驱动器170、光盘驱动器172、电可擦除可编程只读存储空间(所谓‘EEPROM’或‘Flash’存储器)174、RAM驱动器(未示出),或本领域技术人员了解的任何其他种类计算机存储器。
图2的示例计算机106包括通信适配器167,该适配器实现用于针对其他计算机182、服务器或客户机的数据通信184的连接。通信适配器实现硬件级的数据通信连接,通过该连接客户计算机和服务器相互直接或通过网络发送数据通信。通信适配器的例子包括用于有线拨号连接的调制解调器、以太网(IEEE 802.3)、用于有线局域网连接的适配器和用于无线局域网连接的适配器802.11b。
图2的示例计算机包括一个或多个输入/输出接口适配器178。在计算机中的输入/输出接口适配器例如通过用于控制到诸如显示屏之类的显示设备180以及来自诸如键盘和鼠标之类的用户输入设备181的用户输入的软件驱动器和计算机硬件,以实现面向用户的输入/输出。
参照图3进一步说明本发明示例性的实施例。图3阐明在根据本发明实施例改进的电子邮件客户机上的数据输入(entry)屏幕的线条图。图3的数据输入屏幕包括显示正在编辑的文档是合作电子邮件文档、文档标识(“465”)和电子邮件客户机的名称(“ClientName”)的标题行。在实际实施例中,ClientName是诸如微软的OutlookTM或Qualcomm的EudoraTM之类的电子邮件客户机的实际名称。
图3的数据输入屏幕包括水平下拉菜单304,其包含诸如‘文件’、‘编辑’、‘查看’之类的常规菜单项。图3的项目屏幕还包括用于显示被标为‘显示修改’、‘提交修改’、‘版本返回’、‘版本前进’、‘同步’、‘签名’和‘发送’的按钮的工具条306。将图3的电子邮件客户机编程为响应工具条306中按钮‘显示修改’的操作来显示或不显示修改。在图3的例子中,为合作电子邮件文档465显示文本Hyperlinks are implemented in HTML documents by use of thehyperlink anchor element whose start and end tags are<a>and</a>。
在该例子中,‘显示修改’设置为‘开’,因此电子邮件客户机显示表示从2行1列删除‘hyperlink’并在2行1列插入‘anchor’的修改。如果‘显示修改’设置为‘关’,则正在编辑的文本将显示为Hyperlinks are implemented in HTML documents by use of theanchor element whose start and end tags are<a>and</a>。
图3的电子邮件被编程为响应工具条‘提交修改’按钮的操作,电子邮件客户机将正在编辑的文档的副本的修改的当前组编码,并且将它们发送到服务器。例如,服务器可以是向其他客户机异步发送可用的修改的环球网服务器,服务器也可以是向可利用客户机同步发送修改的即时消息服务器(instantmessaging server)。例如可以按如下实现用于上述的示例性修改的编码。
d2 1 hyperlinki2 1 anchor其中“d2 1 hyperlink”编码“删除开始于2行1列的文本‘hyperlink,而“i2 1 anchor”编码“在2行1列开始插入文本‘anchor。
在服务器上,编码的修改可以存储在诸如在图4所示的那些数据结构中图4显示数据库图,其中文档表402中的记录与合作者副本表410中的记录是一对多关系,合作者副本表410中的记录与修改表410中的记录也是一对多关系。在文档表402中的每个记录表示具有一个管理副本和一个或多个合作者副本的合作电子邮件文档。文档表中的每个记录包括文档标识字段404、用于文档406的管理员标识和用于文档的状态字段408。例如,状态字段可以用于注释文档已经产生但是还没有分发到合作者、正在由合作者进行编辑或当其能够由签名者签名时为了编辑而禁止。
合作者副本表410中的每个记录表示提供给合作者用于查看并编辑的合作者电子邮件文档的副本。合作者副本表410中的每个记录包括被提供了副本的合作者的标识412。例如,合作者标识412可以实现为合作者的电子邮件地址。每个合作者副本记录410还包括用于标识提供给合作者的文档副本的文档标识字段404。
在该例子中,每个合作者副本记录410还包括当前作为副本提供给合作者的文档的当前版本414的标识。通过使用在用于副本的当前版本标识符之后的所有修改来更新文档副本,从而执行使用修改更新合作者客户机上的合作电子邮件文档的副本,并且副本的当前版本标识符的存储库通常是诸如图4所示的服务器端数据结构。服务器端存储副本的当前版本标识通常指的是来自客户机的更新请求消息仅需要指定合作者标识412和文档标识404。即,更新请求消息不需要包括客户机上的合作者电子邮件的当前版本号,这是因为服务器跟踪用于该文档的合作者副本的版本标识414并且可以从合作者标识和文档标识中推断出它。然后服务器被编程为使用用于发送用来在请求消息中标识的副本的当前版本号之后的所有修改的应答消息—然后将当前版本标识更新为当前版本号,从而响应该更新请求消息。在本说明书中该处理通常指的是完全同步,例如如图3的电子邮件客户机的工具条中所示的一种在根据本发明实施例改进的电子邮件客户机中由‘synch’按钮支持的处理。
另一种请求消息请求不完全同步,例如仅仅包含下一个版本的修改、或包含前一个版本的修改。即,根据本发明实施例的电子邮件客户机被编程来通过向服务器发送用于包含下一个版本的修改的请求,来响应例如图3的示例工具条中显示的‘版本前进’按钮。‘下一版本’指的是仅在诸如图4的附图标记414的服务器端当前版本标识中当前标识的版本之后的版本。然后服务器被编程来通过使用用于仅发送由用于在请求消息中标识的副本的下一版本号标识的修改的应答消息—然后将当前版本标识更新为下一版本号,从而响应该更新请求消息。在该方法中,电子邮件客户机不需要再一次通知服务器其当前版本,服务器知道。请求消息仅需要将自己标识为“仅欢迎下一版本”消息类型,并且提供用于相关合作文档的合作者标识412和文档标识404。
类似地,根据本发明实施例的电子邮件客户机被典型地编程来通过向服务器发送用于包含先前版本的修改的请求,从而响应诸如图3上的示例工具条中显示的‘版本后退’按钮。“先前版本”指的是仅在诸如图4的附图标记414的服务器端当前版本标识中当前标识的版本之前的版本。然后服务器被编程来通过使用用于仅发送由用于在请求消息中标识的副本的先前版本号标识的修改的应答消息—然后将当前版本标识更新为先前版本号,从而响应该更新请求消息的操作。在该方法中,电子邮件客户机不需要再一次通知服务器其当前版本,服务器知道。请求消息仅需要将自己标识为“仅欢迎先前版本”消息类型,并且提供用于相关合作文档的合作者标识412和文档标识404。
修改表422中的每个记录都表示对合作者电子邮件的修改。除了可以是上述那样的编码字符串的修改420本身,每个修改记录422还包括产生修改的合作者的合作者标识412、需要修改的文档的文档标识404、修改标识416和用于在版本中安排修改的顺序标识418。
如上所述,根据本发明实施例的电子邮件客户机被编程来响应如图3的附图标记306所示的、工具条中‘提交修改’按钮的操作,电子邮件客户机编码在客户机上正在编辑的文档的副本的当前修改组,并且将它们发送到服务器。一旦到达服务器,则分配该组修改修改标识码416,例如该标识码可以实现为顺序的整数1、2、3等等。当实现文档的特定版本时,在以正确次序更新文档的副本的情况下,版本标识码(或‘版本号’)标识一组来自特定合作者的修改。
在典型实施例中,电子邮件客户机可以被编程来为每个修改提供顺序号,该顺序号标识将使用修改来更新合作者电子邮件文档的正确次序。上述示例性修改是很清楚的d2 1 hyperlinki2 1 anchor由于在2行1列插入‘anchor’后,电子邮件客户机不能从相同的位置删除‘hyperlink’,因此不可以以相反次序执行。这解释了在图4的附图标记418上显示的顺序标识码的用处。
参照图5进一步解释本发明的方法。图5阐明用于描述写合作电子邮件文档的方法的流程图,其中该方法包括在管理员客户机上建立(502)合作电子邮件文档。图5的方法还包括标识(504)一个或多个被授权来查看并编辑正在写的文档的合作者。合作者选择性地包括文档的管理员。
通过打开新的电子邮件文档,将文档标识为合作者文档,并且为文档标识管理员,可以在管理员客户机上建立(502)合作电子邮件文档。在典型实施例中,建立合作者电子邮件文档包括当一个或多个合作者写文档时,在管理客户机上保留文档的管理副本。
需要理解,根据本发明实施例的合作者电子邮件文档的管理副本不是根据现有技术的主文档,根据本发明实施例,不存在依靠其识别修改的合作文档的‘主副本’。包括管理副本的所有副本在这里具有用于查看、编辑和更新的相同状态和资格。实际上,如果管理员也是授权的合作者,则所有副本是相同的,并且区别管理员副本的唯一点是最后其管理客户机将获得启用的‘发送’功能,而其他客户机将不能。
在本发明中,没有关于合作者电子邮件的初始内容的限制。产生文档的用户,典型地将被标识为文档管理员的用户可以是写第一草稿的作者,以便初始内容是实际的。另外,管理员可以是代表管理员产生完全由其合作者写入的全空白文档。
例如通过在以HTML格式实现的电子邮件文档中的meta数据中包含他们的标识符,可以标识合作者和管理员,如下所示<HTML>
<HEAD>
<META name=”Document Type”content=”Collaborative Email”>
<META name=”Revision Number”content=”1”>
<META name=”adminID”content=”MaryJohnson@us.ibm.com”>
<META name=”collaboratorID”content=”MaryJohnson@us.ibm.comPeterJones@us.ibm.com”>
<META name=”RevisionAuthority”content=”MaryJohnson@us.ibm.com ALLPeterJones@us.ibm.com Segmentl JohnSmith@us.ibm.com Segment2”>
</HEAD>
<BODY>
<SEGMENT1></SEGMENT1>
<SEGMENT2></SEGMENT2>
</BODY>
</HTML>
在该例子中,所谓“Document Type”的元数据元素用于将电子邮件文档标识为合作文档。所谓“Revision Number”元数据元素用于存储文档的每个副本的当前修改标识。因为每个合作者副本和管理员副本同时包含文档的不同版本,因此虽然“Revision Number”典型地存储在服务器端,也可方便地存储在用于合作文档的每个副本的元数据中。
在示例性元数据中,所谓“adminID”的元数据元素将文档的管理员的身份记录为“MaryJohnson@us.ibm.com”。虽然管理员标识典型地存储在服务器端,也可方便地存储在用于合作文档的每个副本的元数据中,使得在其上由合作者或管理员修改副本的电子邮件客户机可以知道特定的电子邮件客户机是否是文档的管理客户机。
在该例子中,所谓“colaboratorID”的元数据元素记录被授权来查看并编辑在文档写处理中的文档的合作者的身份。图5的方法还包括当正在写文档时,向合作者提供(506)文档的副本用于查看和编辑,并且合作者的副本典型地位于合作者的客户机上。在该元数据例子中,文档管理员Mary Johnson还被标识为合作者,这是可选的。通过从管理客户机向合作者发送副本来实现向合作者提供副本。在根据本发明实施例的电子邮件客户机中经常保留字段‘From’(图3的310)用于签名者的标识,如说明书所述地同步或异步合作者之间的通信修改。因此,如果管理员没有列为合作者,则没有合作者知道或关心谁是管理员是可能的。
图5的方法包括在至少一个文档副本中产生(508)修改。通过记录由一般电子邮件客户机文档编辑器影响的文档中的变化,并且例如将它们编码为上述的“d 5 12 hyperlink”、“I 5 12 anchor”等等,从而产生修改。
图5的方法包括记录(510)修改。通过将它们暂时存储在电子邮件客户机上,直到做出修改的合作者希望将它们记录到服务器作为一个版本时为止,从而执行记录。在根据本发明实施例的电子邮件客户机中,‘提交修改’功能被编程为向服务器发送其实现代表一个版本的一组修改。即,在图5的方法中,通过在合作者客户机可访问的服务器上存储修改,从而实现记录修改510。许多这样的电子邮件客户机提供工具条按钮或诸如在图3的附图标记306的工具条中的‘提交修改’按钮之类的其他用户接口控制,其中所述按钮被编程来向服务器发送关于一个版本的一组修改。例如,这样的修改的发送不是SMTP和POP的正常电子邮件功能。反之,根据本发明实施例,这样的发送受TCP/IP、HTTP或本领域人员可知的其他数据通信协议的使用的影响。
在图5的方法中,记录修改典型地包括存储修改与用于每个修改的版本标识。通过在诸如图4的附图标记416所示的服务器端数据结构中存储版本标识来实现存储修改与版本标识。类似地,在图5的方法中,记录修改经常还包括存储修改与用于每个修改的顺序标识,使得在版本中可以存储和索引修改。通过在诸如图4的附图标记418所示的服务器端数据结构中存储顺序标识来实现存储修改与顺序标识。本领域技术人员应该理解,使用修改标识416和顺序标识418实现的与图4的修改表422相同的数据结构在包含结合的修改标识和顺序标识的修改记录中产生唯一的复合密钥。在这样的实施例中,顺序标识可以在一个修改中是唯一,而在多个修改中是不唯一的顺序整数,使得包括顺序标识的唯一密钥还包括修改号。另外,顺序标识可以是标识进行每个修改的日期和时间的时间标志。然而,甚至时间标志在多个修改中也可以是不明确的,因此包括时间标志作为顺序标识的唯一密钥还有利地包括修改号。
图5的方法包括使用修改来更新(512)合作者客户机上的副本,在合作者客户机上产生的副本可以认为已经与客户机上的文档合并,因此可以更新客户机上的修改号,例如<META name=”Revision Number”content=”2”>
类似地,响应于携带版本修改到服务器的数据通信发送,服务器使用与图4相同的那些数据结构来使用新版本号414更新有关的合作者副本记录410,其中新版本号是当产生新版本时用于合作者副本的。然后该服务器为每个包含文档新版本的修改产生修改记录422。
然后通过合作者客户机和服务器之间请求/应答通信来执行更新其他合作者。合作者客户机在下一版本当前安装到客户机或用于将客户机从当前版本完全更新到最新可用版本的请求之后,发送HTTP请求消息,用于更新或者到下一版本的更新。用于将客户机从当前版本完全更新到最新可用版本的请求称为同步请求。例如,图3的电子邮件客户机被编程来响应其工具条306中的“版本前进”操作,发送用于下一版本的请求。图3的电子邮件客户机还被编程来响应其工具条306中的“同步”操作,发送用于将客户机从当前版本完全更新到最新可用版本的请求。
除了请求下一版本和完全同步外,客户机可以还请求先前版本。当服务器接收这样的请求时,服务器在应答消息中提供定义先前版本的修改,并且请求电子邮件客户机以相反次序实现那些修改,从而在那个电子邮件客户机上产生文档的先前版本。例如,图3的电子邮件客户机被编程来响应其工具条306中的“版本后退”操作,发送用于先前版本的请求。
图5所示的合作电子邮件的方法还经常包括标识(516)合作电子邮件文档的可编辑部分。在这样的方法中,标识(506)一个或多个合作者典型地包括指定(518)仅仅特定合作者被授权来查看并编辑文档的一个或多个部分。通过使用模板或通过插入标识可编辑部分的标记,可以实现标识(516)合作电子邮件文档的可编辑部分。此外,用于特定合作者来编辑文档的一个或多个部分的授权可以记录在文档本身—或在文档的每个副本中—使得授权的限制对于每个合作者电子邮件客户机是很容易使用的。在下面的以标记格式实现的示例性电子邮件文档中,例如<HTML>
<HEAD>
<META name=”RevisionAuthority” content=”MaryJohnson@us.ibm.com ALLPeterJones@us.ibm.com Segmentl JohnSmith@us.ibm.com Segment2”>
</HEAD>
<BODY>
<SEGMENT1></SEGMENT1>
<SEGMENT2></SEGMENT2>
</BODY>
</HTML>
在文档本身中,通过标记元素<SEGMENT1></SEGMENT1><SEGMENT2></SEGMENT2>标识文档的可编辑部分。在该例子中通过使用元数据执行指定(518)仅仅特定合作者被授权来查看并编辑文档的一个或多个部分<META name=”RevisionAuthority”content=”MaryJohnson@us.ibm.com ALLPeterJones@us.ibm.com Segment1 JohnSmith@us.ibm.com Segment2”>
其指定Mary Johnson被授权来查看并编辑整个文档,Pete Jones被授权来查看并编辑整个Segment1,而John Smith被授权来查看并编辑Segment2。
图6阐明用于图解图5的方法的扩展的流程图。即,与图5中的方法一样,图6的方法包括建立合作电子邮件文档502,标识合作者504等等。此外,图6的方法还包括标识一个或多个文档的签名者。诸如图3所示,通过编程电子邮件客户机来将通过其‘From’字段310的多个签名标识JaySchwarz@us.ibm.com、MikeWilliams@us.ibm.com等等接受为输入,并且将它们中的每一个作为签名,可以实现标识签名者。在这样的实施例中,没有关于何时识别签名者的限制。即,当由管理员最初产生文档时,或者在所有合作者完成修改文档之后,可以识别签名者。因此,根据本发明的合作电子邮件文档与常规电子邮件不同之处在于其可以到达合作者的收件箱而在其‘From’字段没有任何数据输入,这是因为例如没有决定谁必须向收件人授权文档最终的发布(promulgation)。考虑将新公司策略的电子邮件通报发送到数百个收件人。在公司计划部门中的员工产生并由数个合作者修改电子邮件。然后,在合作者满意文档的内容后,确定公司董事长是否签署它,并且是否有一个或多个副董事长将签署它。
图6的方法包括向每个签名者提供(604)文档的副本用于签名。对于签名者也是合作者的情况,他们可能已经有了文档的副本,并且只要结束修改他们就可以附加他们的签名。不是合作者的签名人典型地从管理员处收到文档的副本,以获得他们的签名。例如在图3的电子邮件客户机中,工具条306包括标为‘签名’的按钮,其中电子邮件客户机被编程为将文档发送到签名者。在本发明实施例中,一般用于向签名者发送文档‘签名’按钮仅在管理员的电子邮件客户机上启动,从而在将签名附加到文档的处理中具有管理控制。
图6的方法包括向文档附加数字签名。在该上下文中,‘签名’通常指的是数字签名。数字签名是包含使用签名者专用密钥加密的合作电子邮件文档的散列摘要(hashed digest),该密钥来自非对称密码系统的公共/专用密钥对。电子邮件客户通常配备了向电子邮件文档附加数字签名的能力。例如在微软的OutlookTM中,当电子邮件文档打开用于编辑时,通过在查看/选项/安全的下拉菜单中数字签名是可用的。
通过使用签名者的公共密钥从签名中解密散列摘要,向文档的当前内容散列(hashing)新的摘要,并且将新摘要与从签名中解密的摘要进行比较,完成检查数字签名的有效性。如果新摘要与从签名中解密的摘要相同,则签名被认为是有效的。如果在签名附加到文档之后又添加修改,则它们将不相同。
因此在本发明许多实施例中,当向签名者提供(604)文档来签名时,首先有利地将文档禁止修改。例如通过在专用于该目的的、诸如图4的示例数据结构中的‘状态’字段的数据元素中编码该情况,可以禁止文档被修改。例如,该状态字段可以赋予诸如“LOCKED(锁定)”的值,然后当锁定文档时,支持修改表的服务器可以被编程为拒绝或不接受从合作者接收的修改。
某些实施例不实现在签名过程中禁止修改。在不实现签名过程中禁止修改的某些实施例中,同样为合作者的签名者可以继续向前并且附加由后面的版本宣布为无效的签名。如图6所示,在这样的实施例中,用于合作电子邮件的方法可以有利地包括确定(610)文档中的数字签名是否有效,如果它们不是有效的,则向一个或多个签名者提供(606)文档用于再签名。以这种方式,仅当文档具有来自所有签名者的有效数字签名时,诸如图6所示的方法可以从管理员客户机向收件人发送合作电子邮件文档。
图6的方法包括从管理员客户机向收件人发送(608)签名的文档。与常规电子邮件不同,在到达收件人的收件箱的合作电子邮件中的‘From’字段标识文档的签名者而不是实际的发送者。实际发送者典型地是收件人熟悉或不熟悉的管理员。在该上下文中,‘From’字段所转递的是利用签名者的权力向收件人传递文档的内容。
在处理过程中的这一点上,管理员和合作者的身份可以对于收件人来说是不关心的。合作者经常代表具有文档主题权力的签名者有效产生用于邮寄的文档。因此经常考虑签名者的身份而不是产生者的身份对于收件人是更相关的。合作者、管理员和签名者可以在或不在收件人中。
通过异步向合作者和管理员传递修改,可以实现使用修改更新(512)合作者电子邮件文档的副本。由于当产生修改时,合作者计算机在网络中不是在线来接收修改,因此修改的异步通信是有用的。例如,通过使用服务器端诸如图4所示的那些数据结构来实现修改的异步通信。电子邮件客户机可以被编程来以诸如HTTP(超文本传输协议)、WAP(无线访问协议)、HDTP(手持设备传输协议)或本领域技术人员了解的其他格式之类的标准消息格式发送修改。服务器可以支持Java小服务程序或CGI脚本或本领域技术人员了解的其他服务器端功能,用于接收修改并将其记录到支持与图4阐明的示例相似的数据结构的数据库中。以这种方式,修改存储在服务器并保持有效,用于当合作者网络在线时,可以下载到合作者客户机上,从而获得用于更新他们的文档副本的修改。
通过一个或多个客户机中的设置参数确定或选择用于在电子邮件客户机上更新文档副本的精确方法。例如每次在电子邮件客户机是激活的并且电子邮件客户机是在运行的时期时,通过从服务器下载修改来更新文档副本。即使不经常打开文档的本地副本来编辑,只要电子邮件客户机在客户机器上运行,周期性的更新被编程来继续背景更新,使得当打开副本用于编辑时,其很可能被完全同步到最新的版本。另外,由于他或她每次回顾文档,因此合作者可能希望查看修改,通过使用与例如图3的电子邮件客户机上的工具条中的附图标记306所示示例的相同‘版本前进’步进。在这种情况下,合作者将关闭电子邮件客户机的设置参数以便自动背景更新。
除了通过服务器实现的异步更新之外,通过当做出修改时同步地向一个或多个合作者传递修改,实现使用修改更新(512)合作电子邮件文档的合作者副本。通过使用即时消息通知协议中的消息可以实现修改的同步通信。用于本发明各个实施例的即时消息通知协议的例子包括由Intemet EngineeringTask Force的IMPP工作组说明的即时通知和存在协议(“IMPP”)和MitreCorporation的简单即时通知和存在服务(“SIMP”)。
图7阐明用于图解修改的同步通信的方法的流程图。在图7的方法中,使用修改更新(512)合作电子邮件文档的副本包括标识(702)有效的用于同步通信修改的合作者客户机。即时通知服务通常定义并支持用于提供即时通知客户机是否在线的指示的‘存在服务’。经常改进能够支持根据本发明实施例的修改的同步通信的电子邮件客户机来通过一个或多个即时通知协议支持消息传递和存在检测。图7的方法包括通过向所有被确定为当前在线并且可用于即时通知的合作者电子邮件客户机发送包含修改的即时消息,实现向可同步通信的合作者客户机同步传递(704)修改。
同步更新文档的副本影响副本的版本标识。因此在图7的方法中,更新合作者副本包括更新(706)可同步通信的合作者客户机上的文档副本的当前版本标识。使用HTTP消息可以实现当前版本标识的更新,例如从客户机向保持与图4所示那些示例相同的数据结构的服务器的HTTP消息。该服务器典型地支持服务器端的功能,诸如被编程来响应来自客户机的、具有合作者标识412和文档标识404的消息,更新版本标识的Java小服务程序和CGI脚本。
通过进一步解释,应当注意的是,可以有利地一起采用同步更新和异步更新。当对不与最新修改同步的合作者副本采用修改的同步通信时,存在异步修改将以非正确顺序应用到副本的风险,从而引起在合作者客户机上文档副本的混乱。因此,在从修改异步源的最新修改同步合作者副本之后,可以有利地实现用于文档的合作者副本的修改的同步通信。
例如在图7的方法中,标识(702)可用的、修改的同步通信的合作者客户机还典型地包括确定是否使用最新的修改更新合作者副本。通过将用于文档每个合作者副本的当前版本标识(图4中的414)与诸如在图4的附图标记422说明的示例的修改表中的最新修改标识416相比较,实现确定是否使用最新的修改更新合作者副本。在确定在有效的用于修改同步通信的电子邮件客户机上‘存在(present)’的合作者副本不是文档的当前版本的情况下,通过应用在其当前修改号之后的所有修改可以更新副本—然后将其当前版本标识414更新为最新的版本号。
经常存在文档的一些合作者在进行修改的同步通信而同一文档的其他合作者不能用于修改的同步通信的情况。因此,根据本发明实施例的电子邮件客户机经常发送用于存储在服务器上的所有修改,用于由其他合作者在方便时进行异步下载。以这种方式,即使与其他合作者开始同步会话的合作者在会话中间登出,他也可以通过从服务器下载来获得中间的修改。例如当该合作者在修改的同步通信中登出时,电子邮件客户机有利地将用于该合作者的文档副本的当前版本信息记录在诸如图4的附图标记414所示的数据结构中。当该合作者在修改的同步通信的结束登出时,他们的电子邮件客户机有利地将用于文档的每个合作者副本的当前版本标识记录到诸如图4的附图标记414所示的数据结构中。
从上面的描述中,本领域技术人员将十分清楚可以以本发明各种实施例来实现多种修改和变化。
权利要求
1.一种用于写合作电子邮件文档的方法,该方法包括在管理员的计算机上建立合作电子邮件文档;标识一个或多个被授权来查看并编辑文档的合作者;向合作者提供用于查看并编辑的文档的副本,其中合作者的副本驻留在合作者的计算机中;在文档的至少一个副本中产生修改;记录修改;和使用修改更新文档在合作者计算机上的副本。
2.如权利要求1所述的方法,其中在管理员计算机上建立合作电子邮件文档包括为文档标识管理员;和在管理员计算机上保留文档的管理副本。
3.如权利要求1或2所述的方法,还包括在文档中记录仅仅特定合作者查看并编辑文档的一个或多个部分的授权。
4.如权利要求1到3之一所述的方法,还包括为文档标识一个或多个签名者;向每个签名者提供文档的副本,用于签名;为每个签名者向文档附加数字签名;和从管理员的计算机向收件人发送签名的文档。
5.如权利要求1到4之一所述的方法,还包括仅当文档具有来自所有签名者的有效数字签名时,将合作电子邮件文档从管理员计算机发送到收件人。
6.如权利要求1到5之一所述的方法,还包括在可访问合作者计算机的计算机上存储修改;使用用于每次修改的版本标识来存储修改;或者使用用于每次修改的顺序标识存储修改。
7.如前述任意一个权利要求所述的方法,其中使用修改更新文档的副本包括标识修改的同步通信可用的合作者计算机;向修改的同步通信可用的合作者计算机同步通信修改;和为修改的同步通信可用的合作者计算机上的文档的副本更新当前版本标识。
8.如前述任意一个权利要求所述的方法,其中使用修改更新文档的副本包括利用晚于副本的当前版本标识符的所有修改来更新文档副本。
9.一种用于写合作电子邮件文档的系统,该系统包括用于在管理员的计算机上建立合作电子邮件文档的设备;用于标识一个或多个被授权来查看并编辑文档的合作者的设备;用于向合作者提供用于查看并编辑的文档的副本的设备,其中合作者的副本驻留在合作者的计算机中;用于在文档的至少一个副本中产生修改的设备;用于记录修改的设备;和用于使用修改更新文档在合作者计算机上的副本的设备。
10.一种包含计算机程序代码的计算机程序,用于当加载到计算机系统并在其上执行时,使所述计算机系统执行在权利要求1到8中任何一个权利要求中声明的方法的步骤。
全文摘要
公开了用于写合作电子邮件文档的方法、系统和产品,包括在管理员的计算机上建立合作电子邮件文档;标识一个或多个被授权来查看并编辑文档的合作者;向合作者提供用于查看并编辑的文档的副本,其中合作者的副本驻留在合作者的计算机中;在文档的至少一个副本中产生修改;记录修改;和使用修改更新文档在合作者计算机上的副本。实施例典型地包括标识电子邮件文档的可编辑部分,包括指定特定的合作者被授权来查看并编辑文档的一个或多个部分。在许多实施例中,通过服务器流动修改,使得在服务器或在别处依靠其识别修改的合作文档的“主副本”。
文档编号G06Q10/00GK1701326SQ200480001025
公开日2005年11月23日 申请日期2004年8月3日 优先权日2003年8月7日
发明者库尔维尔·S·博格尔, 小尼扎马迪恩·伊什梅尔, 罗伯特·坎珀, 罗希特·沙哈斯拉巴迪, 曼迪普·S·西德休 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1