为电子邮件消息的附加文档提供版本控制的方法和系统转让专利

申请号 : CN200610137544.8

文献号 : CN1987912B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : O·基泽尔巴赫N·海德洛夫M·R·奥布赖恩

申请人 : 国际商业机器公司

摘要 :

一种用于为电子邮件消息的附加文档提供版本控制的系统,其中使用用户个人文档库来存储该用户发送和/或接收的电子邮件消息的附加文档。每次附加文档在消息线索内被传送或接收时,创建该文档的不同版本并将其存储在个人文档库中。所创建的多个文档版本允许本发明的系统提供给用户打开附加文档的最近版本和/或打开与特定的打开的消息相关联的附加文档的版本的选项。在电子邮件消息内使用URL(统一资源定位符)表示附加文档,其中存储的URL指向存储在用户的个人文档库中的、该消息的附加文档的版本。通过由个人文档库提供的API(应用编程接口),可请求文档的最近版本,或可指示打开该文档的另一个特定的版本。

权利要求 :

1.一种为电子邮件消息的附加文档提供版本控制的方法,包括:

检测涉及带有附加文档的电子邮件消息的传送的操作,所述消息属于消息线索;

响应于所述操作的所述检测,确定所述文档先前是否存储在本地用户的个人文档库中;

如果所述文档先前没有存储在所述个人文档库中,则从所述消息分离所述文档并将所述文档存储在所述个人文档库中,其中将所述文档与所述电子邮件消息和所述消息线索相关联地存储在所述个人文档库中;

如果所述文档先前存储在所述个人文档库中,则确定所述文档自从先前被存储在所述个人文档库中以后是否已经被修改;以及如果所述文档先前存储在所述个人文档库中且自从先前被存储在所述个人文档库中以后已经被修改,则生成所述文档的新版本,其中所述文档的所述新版本是与所述电子邮件消息关联的所述文档的版本。

2.根据权利要求1的方法,进一步包括:

响应于用户在电子邮件用户界面中选择所述电子邮件消息,呈现包括多个文档打开选项的文档打开用户界面,其中第一个所述文档打开选项使得所述用户能打开与所述电子邮件消息相关联的所述文档的所述版本,且其中第二个所述文档打开选项使得用户能打开所述消息线索中的所述文档的最近的版本,其中所述文档的所述最近的版本与所述消息线索中的更近接收的电子邮件消息相关联。

3.根据权利要求2的方法,其中所述文档打开用户界面进一步使得所述用户能设置与所述电子邮件消息相关联的所述文档的所述版本为所述消息线索中的所述文档的所述最近的版本。

4.根据权利要求1的方法,进一步包括将对所述文档的所述新版本的指针存储到所述电子邮件消息中。

5.根据权利要求1的方法,其中涉及带有所述附加文档的所述电子邮件消息的传送的所述操作包括发送所述电子邮件消息。

6.根据权利要求1的方法,其中涉及带有所述附加文档的所述电子邮件消息的传送的所述操作包括接收所述电子邮件消息。

7.一种为电子邮件消息的附加文档提供版本控制的系统,包括:

用于检测涉及带有附加文档的电子邮件消息的传送的操作的装置,所述消息属于消息线索;以及用于响应于所述操作的所述检测,确定所述文档先前是否存储在本地用户的个人文档库中的装置;

用于在所述文档先前没有存储在所述个人文档库中的情况下,从所述消息分离所述文档并将所述文档存储在所述个人文档库中的装置,其中将所述文档与所述电子邮件消息和所述消息线索相关联地存储在所述个人文档库中;

用于在所述文档先前存储在所述个人文档库中的情况下,确定所述文档自从先前被存储在所述个人文档库中以后是否已经被修改的装置;以及用于在所述文档先前存储在所述个人文档库中且自从先前被存储在所述个人文档库中以后已经被修改的情况下,生成所述文档的新的版本的装置,其中所述文档的所述新版本是与所述电子邮件消息相关联的所述文档的版本。

8.根据权利要求7的系统,进一步包括:

用于响应于用户在电子邮件用户界面中选择所述电子邮件消息,呈现包括多个文档打开选项的文档打开用户界面的装置,其中第一个所述文档打开选项使得所述用户能打开与所述电子邮件消息相关联的所述文档的所述版本,且其中第二个所述文档打开选项使得所述用户能打开所述消息线索中的所述文档的最近的版本,其中所述文档的所述最近的版本与所述消息线索中的更近接收的电子邮件消息相关联。

9.根据权利要求8的系统,其中所述文档打开用户界面进一步使得所述用户能设置与所述电子邮件消息相关联的所述文档的所述版本为所述消息线索中的所述文档的所述最近的版本。

10.根据权利要求7的系统,进一步包括用于将对所述文档的所述新版本的指针存储到所述电子邮件消息中的装置。

11.根据权利要求7的系统,其中涉及带有所述附加文档的所述电子邮件消息的传送的所述操作包括发送所述电子邮件消息。

12.根据权利要求7的系统,其中涉及带有所述附加文档的所述电子邮件消息的传送的所述操作包括接收所述电子邮件消息。

说明书 :

为电子邮件消息的附加文档提供版本控制的方法和系统

技术领域

[0001] 本发明一般涉及电子邮件系统中的文档附件的处理,且更具体地涉及为电子邮件消息的附加文档提供版本控制的系统和方法。

背景技术

[0002] 如一般所了解的,电子邮件(“email”)软件系统通过通信网络在计算机系统用户之间传送消息和与之关联的文档附件。电子邮件系统经常以客户机-服务器软件模型被构建,在该种模型中在终端用户计算机系统中提供客户软件以使得用户能够编写、发送和接收消息,而提供服务器软件部件以执行各种集中的功能。在大部分的电子邮件系统中,可由服务器计算机系统代表用户接收消息,以便以后检索。例如,在本地计算机系统中的电子邮件客户应用程序可通过定期地查询关联的电子邮件服务器系统进行操作以确定一个或多个新消息是否已经为本地用户到达。如果到达,那么该电子邮件客户端可提供指示一个或多个新消息到达的警告给该本地用户。该本地用户然后可将接收的来自该服务器系统的消息下载到该本地客户计算机系统。电子邮件需要底层消息传递系统,其提供存储和转发能力,例如因特网简单邮件传输协议(SMTP)。众所周知的现有的电子邮件客户系统包括的Outlook和 。通过诸如Google、Yahoo、和其他Web门户提供商提供的服务的因特网电子邮件服务,Web浏览器程序也可用于提供邮件客户端。
[0003] 典型的电子邮件应用提供给用户图形用户界面,通过该图形用户界面可编写和发送消息,并可查看接收的和以前已发送的消息。通常为用户维护多个邮箱结构(construct),包括存储接收的消息的收件箱、放置等候发送的消息的发件箱、和存储以前已被发送的消息的已发送邮箱。电子邮件消息通常包括或关联于一个或多个标识该消息将被发送给的收件人的目的地址或用户名,其有时被称为“收件人:”字段。“发件人:”字段也被包括于或关联到消息,且标识消息的发件人。电子邮件消息的“主题:”字段包括定义消息的主题的文本字符串。消息正文存储消息的内容,包括文本、图像、链接、或其他内容。在消息被发送前,多个单独的文档也可以附加到消息中,这些文档包含被包含在消息正文内的内容之外的内容。在消息正文、目的电子邮件地址和消息的任何附件被用户确定后,可单击或以其他方式选择“发送”图形按钮等以使得消息被发送。
[0004] 当消息被接收时,电子邮件客户软件提供给接收用户回复所接收消息的能力,例如通过图形用户界面内的“回复”和/或“回复全部”按钮。单击“回复”按钮建立包括所接收消息的新的消息,以便编辑并发回给所接收消息的原始发件人。单击“回复全部”按钮也建立也包括所接收消息的新的消息,以便编辑且发回给原始发件人和原始消息的任何其他收件人。被发送的包括所有以前的消息信息的回复有时称作“带历史的回复”。原始发件人或回复消息的任何其他收件人然后可类似地生成另一个回复。
[0005] 一系列的直接或间接回复原始“根”消息的所接收消息可称作消息“线索”。线索中的回复消息可被认为是原始根消息下的子消息。除回复消息外,线索可被认为或不被认为也包括原始根消息。在电子邮件系统中,线索可由多个相关的存储在用户的收件箱或由电子邮件系统提供的另一个邮箱结构中的接收消息组成。
[0006] 某些现有的电子邮件系统试图通过使用所谓的“聚集的”线索视图以用户友好的方式显示消息线索。例如,在一种类型的聚集的线索视图中,在用户的收件箱中使用单个消息条目表示属于线索的接收消息。然而,不是所有的电子邮件用户都有这样一个视图可用,或更喜欢这样的视图,因此“非集中的”视图仍是常见的。
[0007] 现有的电子邮件系统的一个问题在用户访问文档附件的不同版本时发生,如可在附件在消息线索内被修改时发生的那样。电子邮件线索常常用于在多个用户之间共享文档附件,例如在说明书文档的审阅期间。这样的过程可包括几个反复,其中带有不同修改的该被审阅的文档被来回发送。在现有的系统中,当使用不通过聚集的线索视图收集线索的收件箱或文件夹视图时,会难以找到该线索中最近发送或接收的消息,且更难以找到在该线索内被来回发送的附加文档的最近的版本。例如,如果用户简单地打开电子邮件消息而不知道该消息是否是线索中最后的消息,则该用户或许不能简单地确定该消息的附加文档相对于该线索内的所做的修改是否是该文档的最近的版本。这种情形涉及这样的事实,即许多现有的电子邮件系统通过在消息内携带文档来将文档附加到消息,并允许更改消息内的文档附件。
[0008] 由于这些及其他原因,希望有新的处理电子邮件消息的系统,这种系统使得用户能打开电子邮件消息线索中的任何消息,并方便地获得消息的任何附加文档的最近的版本。该系统应可操作以提供附加文档的最近的版本,而不管用户已经打开线索内的哪个消息,包括打开的消息不是线索中最近的消息的情况。而且,该新系统应使得用户能够可选地打开该打开的消息的最初附加的文档版本,即使该版本不是该文档的最近的版本。

发明内容

[0009] 为解决以前系统的上述的和其他缺点,公开了一种用于为电子邮件消息的附加文档提供版本控制的方法和系统。在本发明的系统中,使用用户的个人文档库来存储该用户发送和/或接收的电子邮件消息的附加文档。每次附加文档在消息线索内被传送或接收时,该文档的不同版本被创建和存储在个人文档库中。创建的多个文档版本允许本发明的系统向用户提供打开附加文档的最近的版本和/或打开与特定的打开的消息关联的附加文档版本的选项。
[0010] 在一个实施例中,由个人文档库提供的API(应用编程接口)使得用户能请求文档的最近的版本,或该文档的另一特定的版本可被指示打开。本发明的系统可被实现为通过使用存储在消息内的URL(统一资源定位符)来表示电子邮件消息内的附加文档,其中该存储的URL指向存储在个人文档库中的、该消息的附加文档的版本。
[0011] 在本发明的系统中,向用户的客户电子邮件应用提供对用户的个人文档库的访问。个人文档库可被本地存储在用户的客户计算机系统内,和/或复制到服务器计算机系统上。在该个人文档库被复制到服务器计算机系统上的情况下,用户可采用通过Web浏览器提供的电子邮件客户端且仍获得本系统的好处。
[0012] 因而公开了一种用于处理电子邮件消息的新系统,该系统使得用户能打开电子邮件消息线索内的任何消息且方便地获得消息的任何附加文档的最近的版本。本发明的系统可操作以提供附加文档的最近的版本,而不管用户已打开线索内的哪个消息,包括该打开的消息不是线索中最近的消息的情况。本发明的系统也使得用户能可选地打开该打开的消息的最初附加的文档版本,即使该版本不是该文档的最近的版本。

附图说明

[0013] 为了帮助更完整地理解本发明,现在参照附图。这些附图不应被解释[0014] 限于本发明,而是仅旨在作为示例。
[0015] 图1是示出提供本发明的系统的示意性实施例的硬件和软件部件的框图;
[0016] 图2是示出在本发明的系统的示意性实施例中执行的处理电子邮件消息的附件的步骤的流程图;
[0017] 图3是示出在本发明的系统的示意性实施例中执行的处理用户打开电子邮件消息的附件的请求的步骤的流程图;
[0018] 图4是示出由本发明的系统的示意性实施例提供的、允许用户指示电子邮件消息和/或其附件的接收消息用户界面的至少一部分的简化屏幕截图;
[0019] 图5是示出由本发明的系统的示意性实施例提供的、允许用户指示消息的附件和请求打开该附件的消息用户界面的至少一部分的简化屏幕截图;以及
[0020] 图6是示出由本发明的系统的示意性实施例提供的、允许用户指示将打开附加文档的哪个版本的文档打开用户界面的至少一部分的简化屏幕截图。

具体实施方式

[0021] 如图1所示,本发明的系统的示意性实施例使用在多个计算机系统上执行的多个软件部件操作,为了示例,这些计算机系统被示为客户计算机系统10、其他客户计算机系统38、和电子邮件应用服务器计算机系统36。进一步为了示例,其他客户计算机系统38被示为包括客户计算机系统38a、38b、38c、38d、38e等,而电子邮件应用服务器计算机系统36被示为包括服务器计算机系统36a、36b、36c、36d、36e等。客户计算机系统10、其他客户计算机系统38、和电子邮件应用服务器计算机系统36每个例如可以包括至少一个处理器、诸如内存的用于在该处理器上存储可执行的程序代码的程序存储器、和一个或多个输入/输出设备和/或接口,例如数据通信和/或外围设备和/或接口。客户计算机系统10、其他客户计算机系统38、和电子邮件应用服务器计算机系统36由诸如局域网(LAN)、因特网等的通信网络35通信地连接。客户计算机系统10、其他客户计算机系统38、和电子邮件应用服务器计算机系统36每个可进一步包括适当的操作系统软件,如图1所示的客户计算机系通
10中的操作系统14。
[0022] 在客户计算机系统10上执行的电子邮件应用12代表本地用户20操作以发送和接收电子邮件消息,并向本地用户20提供被示为用户界面18的图形用户界面。电子邮件应用12例如可以是这样的客户程序,该客户程序使用基于诸如简单邮件传输协议(SMTP)的协议的消息传递系统通过电子邮件应用服务器36向其他客户计算机系统38发送并从其接收电子邮件消息。
[0023] 在电子邮件应用12的操作期间,接口程序逻辑17通过使用个人文档库16操作以存储和检索电子邮件消息13的附加文档。在这方面,接口程序逻辑17通过应用编程接口18发送命令19给个人文档库16。个人文档库16处理命令19并对接口程序逻辑17产生响应21。个人文档库16是与用户20关联的文档数据库或文件系统,且支持存储和检索文档的多个版本。
[0024] 在本发明的系统的一个实施例中,存储在个人文档库16中的每个文档和/或文档的版本可与电子邮件消息线索的唯一标识符相关联地、和/或与特定电子邮件消息的标识符相关联地存储。在图1的示例性个人文档库16中,示出文档A的多个版本与相应的消息线索标识符和消息标识符关联。例如,文档A版本1.022示出与消息线索标识符23和消息标识符24关联,文档A版本1.125示出与消息线索标识符26和消息标识符27关联,文档A版本1.1.1示出与消息线索标识符29和消息标识符30关联,并且文档A版本1.1.231示出与消息线索标识符32和消息标识符33关联。这样,存储在个人文档库中的每个文档的每个版本可与电子邮件消息线索和电子邮件消息相关联地存储和检索。
[0025] 个人文档库16使得电子邮件应用程序12能够存储文档附件以便其可以基于该文档附件所附属的消息被检索。个人文档库16进一步使得电子邮件应用程序12能够确定相对于给定的消息线索的文档的最近的版本。例如,在一个实施例中,消息线索中具有最高版本号的文档版本可被认为是该线索中该文档的最近的版本。
[0026] 图2是示出在本发明的系统的示意性实施例中执行的处理电子邮件消息的附件的步骤的流程图。图2的步骤被电子邮件应用自动地执行。在步骤40,本发明的系统检测至少有一个附加文档的电子邮件消息。在步骤40检测的消息可属于包括一个或多个现有消息的消息线索,或是随后将一个或多个其他消息添加到其中的消息线索中的第一个消息。在步骤40检测到的消息可作为这样的消息操作的结果被检测,该消息操作导致该消息被存储在消息文件夹中,例如收件箱、已发送项、或其他特定文件夹、或另一种类型的消息存储结构内。导致在步骤40的检测的消息操作可包括发送消息、接收消息、或一些其他消息操作。
[0027] 在步骤42,本发明的系统确定在步骤40检测的消息的附加文档是否已经先前存储在用户的个人文档库中。在步骤42的确定可基于附加文档的文件名、和/或与该附加文档有关联的其他元数据、以及个人文档库的当前内容。例如,如果文件名为Draft_Business_Plan.txt的附加文档在步骤42被处理,则电子邮件应用可向个人文档库发出命令以确定具有该名称的文档的任何版本是否已经先前存储在该个人文档库中。在步骤42的确定可进一步是特定于消息线索的,因为如果文档的版本先前没有与在步骤40检测的消息的所属消息线索相关联地存储,则该文档可被认为先前没有存储在个人文档库中。
[0028] 如果本发明的系统在步骤42确定在步骤40检测的消息的附加文档先前没有存储在个人文档库中,那么在步骤44将该文档与在步骤40检测的消息相关联地以及与在步骤40检测的消息所属的消息线索相关联地存储在个人文档库中。例如,文档可以和标识在步骤40检测的消息的消息标识符、以及标识该消息所属的消息线索的线索标识符一起被存储个人文档库中。否则,如果在步骤40检测的消息的附加文档已经先前存储在个人文档库中,那么在步骤46本发明的系统确定自从步骤40检测的消息的附加文档上次被存储在个人文档库中之后其是否已经被修改。
[0029] 可多种特定的方式完成步骤46的确定。例如,在一个实施例中,电子邮件应用程序可在每个带有附件的电子邮件消息内包括附加的MIME(多用途因特网邮件扩展)报头。所述附加的MIME报头包含当确定文档自从上次被存储后是否已经被修改时可能有用的、附加文档的元数据。包含在带有附加文档的电子邮件消息中的这种元数据例如可以包括这样的信息,即当文档第一次被本地用户创建并被存储在个人文档库中时的该文档的原始版本号,创建时间和日期,和/或最近的修改时间和日期,或其他信息。类似的元数据可与存储在个人文档库中的每一个文档版本相关联地存储,并且所接收消息的附加文档的元数据与存储的文档的版本的相关联的元数据的比较可使得能够确定所接收消息的附加文档自从上次被存储在个人文档库中后是否已经被修改。
[0030] 如果本发明的系统在步骤46确定步骤40检测的消息的附加文档自从上次被存储在个人文档库中后没有被修改,那么没有必要创建该文档的新版本。因此,在步骤48本发明的系统使以前存储的、在步骤40检测的消息的附加文档的版本关联于在步骤40检测的消息、以及在步骤40检测的消息所属的消息线索。如果本发明的系统在步骤46确定步骤40检测的消息的附加文档自从上次被存储在个人文档库中后已经被修改,那么在步骤50该文档的新版本在个人文档库中被创建,并用于存储在步骤40检测的消息的修改的附加文档。使该文档的新版本与在步骤40检测的消息和在步骤40检测的消息所属的消息线索相关联。
[0031] 尽管在步骤44、48、和50执行的存储的文档与消息和消息线索的关联在以上被描述为基于在个人文档库中与文档相关联地存储的消息线索和消息标识符,本发明的系统不受限于这样的方法。作为另一种选择,在存储在个人文档库中的文档与这些文档所附属的电子邮件消息之间的关联、以及与这些消息所属的消息线索之间的关联可在电子邮件应用程序内维护。例如,在一个这样可选的实施例中,电子邮件应用程序可通过将文档从其所附属的电子邮件消息中分离进行操作,并在该消息中存储允许从个人文档库中检索该文档的、指针或该文档的其他标识符。这样的指针例如可包括指向存储在个人文档库内的文档的统一资源定位符(URL)等。
[0032] 图3是示出在本发明的系统的示意性实施例中执行的处理用户打开电子邮件消息附件的请求的步骤的流程图。在步骤52,本发明的系统检测用户选择带有文档附件的消息。例如,该用户可通过单击由电子邮件应用程序提供的示出多个被组织到一个或多个逻辑文件夹中的电子邮件消息的用户界面内的消息选择该消息。在步骤52选择的消息关联于一消息线索,该消息线索包括相对于该线索的原始根消息的诸如回复等的子消息。在步骤54,本发明的系统检测到用户选择在步骤52选择的消息的文档附件,例如通过单击该附加文档的直观表示。响应于在步骤52用户对消息的选择和或在步骤54用户对文档附件的选择,在步骤56本发明的系统提供这样的用户界面,该用户界面提供给用户关于打开附加文档的多个选项。这些用于打开附加文档的选项包括(1)打开以前存储的与在步骤52选择的消息相关联的文档的版本;(2)打开最近存储的文档的版本;及(3)设置以前存储的与在步骤52选择的消息相关联的文档的版本为文档的最近的版本。例如可通过使用在步骤52选择的消息的唯一消息标识符搜索个人文档库,在个人文档库中识别以前存储的与在步骤52选择的消息相关联的文档的版本。可通过搜索与包含在步骤52选择的消息的消息线索相关联的文档的各版本,然后选择结果中编号最高的版本,来在个人文档库中识别最近存储的文档的版本。最后,可通过基于在步骤52选择的消息的唯一标识符搜索个人文档库,然后设置匹配文档的版本号为用于包含在步骤52检测的消息的线索的、该文档的新的最高的版本号,来设置以前存储的与在步骤52选择的消息相关联的文档的版本为文档的最近的版本。
[0033] 图4是示出由本发明的系统的示意性实施例提供的允许用户指示电子邮件消息和/或其附件的接收消息用户界面的至少一部分的简化屏幕截图。如图4所示,本地用户Anna Albert的电子邮件收件箱用户界面60包括多个提供相应功能的动作按钮62。消息列表64包括当前存储在用户AnnaAlbert的收件箱内的接收消息。在图4的示例中,消息64包括接收的消息列表元素66,其对应于接收自远程用户Ronald Lopez、主题为“回复:说明书审阅”、并在2005年10月1日接收的消息。在图4的示例中,对应于消息列表元素66的消息是对以前被本地用户Anna Albert传送给远程用户Ronald Lopez和Bob Johnston的主题为“说明书审阅”的消息的响应。
[0034] 接收的消息列表元素66包括消息有一个或多个附件的指示68。该列表元素66是可单击的区域,因为当用户在列表元素66上单击时,本发明的系统呈现出显示关于相应的电子邮件消息的内容和其他信息的消息用户界面。在一个可能的实施例中,也可单击附件指示68以使得本发明的系统直接从收件箱界面60提供附加文档打开界面。尽管为了示例图4中的指示68被示为“#”号,本领域中的那些技术人员将认识到各种其他特定的指示可以作为另一种选择在电子邮件系统邮箱界面中使用以指示给定的消息包括一个或多个附件。
[0035] 图5是示出由本发明的系统的示意性实施例提供的允许用户指示消息附件和请求打开该附件的消息用户界面的至少一部分的简化屏幕截图。图5中示出了电子邮件消息界面70,该界面可由本发明的系统响应于用户在图4所示的消息列表条目66上的单击而提供。消息界面70可包括多个动作按钮72,这些动作按钮使得用户能执行关于由消息界面70所表示的相应的电子邮件消息的某些相关的动作。多个消息信息字段74显示关于相应的消息的信息,例如消息的发件人、消息的接收日期、消息所发送给的用户、消息的主题等。附件字段76显示消息的一个或多个附加文档名。在图5的示意性的示例中,附件字段76显示文档名“Project-Specification.txt”,该文档名是消息的文件附件的名称。文档名“Project-Specification.txt”是附件指示78的一示例。本领域的那些技术人员将认识到在其他可选实施例中可提供各种其他附件指示。附件指示78是可单击的,以致当用户单击它时,显示另一个用户界面,该用户界面提供给用户关于打开名称为“Project-Specification.txt”的文档的各版本的多个选项。
[0036] 消息界面70进一步显示原始消息80的文本,由图5的消息界面70表示的接收消息是对该原始消息的响应。新文本82是用户Ronald Lopez响应于原始消息80输入的文本。来自Ronald Lopez的由图5的消息界面70表示的接收消息可被认为是原始消息80的子消息。因而来自RonaldLopez的由图5的消息界面70表示的接收消息和其所回复的原始消息80组成一部分消息线索的示例。而且,进一步为了说明,附加文档“Project-Specification.txt”从其作为原始消息80的附件被发送时的样子被修改。因此,当由图5中的消息界面70所表示的接收消息最初被检测时,本发明的系统将操作以存储附属于接收消息的修改的“Project-Specification.txt”,作为该文档的新版本。
[0037] 图6是示出由本发明的系统的示意性实施例提供的允许用户指示将打开附加文档的哪个版本的文档打开用户界面的至少一部分的简化屏幕截图。如图6所示,响应于用户请求打开电子邮件消息的附加文档,提供文档附件打开用户界面90。例如可响应于用户在图5的附件指示78上单击或悬停光标,或在另一个可选的实施例中响应于用户在图4的指示68上单击或悬停光标,呈现用户界面90。示出的用户界面90包括多个按钮图形对象,这些对象提供给用户关于打开电子邮件消息的附加文档的多个选项。尽管图6的示意性实施例包括允许用户通过单击适当的按钮在这些选项中选择的多个按钮图形对象,本领域的技术人员将认识到本发明不受限于这样的实施例。作为其他选择,可使用任何适当的允许同时呈现多个可选的用户选项的用户界面装置。这样的装置包括但不受限于下拉菜单、复选框、单选按钮等。
[0038] 第一个按钮92使得用户能打开作为当前消息的附件接收的文档的版本。例如,在图6的示例中的当前消息是由图5的消息界面70和/或图5的消息列表条目66所表示的来自Ronald Lopez的消息。按钮94使得用户能打开该文档的最近的版本。例如,附加文档的最近的版本将是附属在当前消息之后接收且处于同一消息线索内的消息的附加文档的另一修改,且因此已被标上更高的版本号。按钮96使得用户能分离接收的当前消息的附加文档的版本。按钮98使得用户能分离文档的最近的版本。按钮100使得用户能设置当前消息的附加文档的版本作为文档的最近的版本,例如通过分配新的最高的版本号给当前消息的附加文档的版本。而按钮102使得用户能访问例如在单独的用户界面窗口等中提供的显示列表内或其他直观的结构内的、消息线索内的附加文档的所有版本。
[0039] 一般来说,虽然以上描述谈到具有特定排列的特定类型的诸如按钮、字段、特定的布局、格式等的用户界面部件的本发明的系统的实施例,但本发明不受这样的限制。因此,本领域的那些技术人员将认识到,可选的实施例可使用各种其他特定类型的用户界面部件,和/或各种其他排列的这样的部件,以便向用户呈现信息并从其接收信息。可选的实施例可使用任何适当类型的、可由用户使用鼠标用户界面设备、键盘、或其他等效设备选择的用户界面部件,包括但不受限于下拉菜单、复选框、和/或其他类型的用户界面部件。
[0040] 类似地,尽管为了简要说明,图3-6示出由本发明的系统的实施例提供的用户界面的有关部分的简化和/或抽象化的描述,但本领域的技术人员将认识到本发明不受这样的限制。本发明的系统的实施例中的用户界面可因此包括可适合于特定的实施例的比图3-6的示例中所示的更多或更少的图形部件。
[0041] 图1-3是根据本发明的实施例的方法、装置和计算机程序产品的框图和流程图说明。将理解图1-3的每个框和这些框的组合可被计算机程序指令实现。这些计算机程序指令可被载入计算机或其他可编程的数据处理装置中以产生一机器,从而在该计算机或其他可编程的数据处理装置上执行的这些指令创建用于实现某个框或某些框中所指定的功能。这些计算机程序指令也可以存储在能指导计算机或其他可编程的数据处理装置以某种特殊的方式运行的计算机可读存储器中,从而存储在该计算机可读存储器中的指令产生一种包括实现某个框或某些框中指定的功能的指令装置的产品。这些计算机程序指令也可被载入计算机或其他可编程的数据处理装置中以使得将在该计算机或其他可编程的装置上执行的一系列操作步骤产生计算机实现的过程,从而在该计算机或其他可编程的装置上执行的这些指令提供用于实现某个框或某些框中所指定的功能的步骤。
[0042] 本领域中的那些技术人员应当容易理解定义本发明的功能的程序可以许多形式被传送给计算机,这些形式包括但不受限于:(a)持久存储在不可写的存储介质(例如计算机内的诸如ROM或CD-ROM盘的可由计算机I/O附件读取的只读存储器设备)上的信息;(b)可改变地存储在可写的存储介质(例如软盘和硬盘)上的信息;或(c)通过通信介质例如通过使用无线、包括载波信令技术的基带信令或宽带信令技术例如经由调制解调器通过计算机或电话网络被传递给计算机的信息。
[0043] 尽管通过以上示例性实施例描述了本发明,但本领域中的那些技术普通人员将理解可对所示出的实施例做出修改和改变而不偏离此处公开的本发明的概念。而且,尽管联系各种示例性的程序命令结构描述了优选的实施例,本领域的技术人员将认识到可以使用多种特定的命令结构具体实施这些实施例。