描述用户对于资源的活动的信息的呈现的制作方法

文档序号:6360373阅读:165来源:国知局
专利名称:描述用户对于资源的活动的信息的呈现的制作方法
描述用户对于资源的活动的信息的呈现 背景在当今的工作场所,人们频繁地创建其他人对其执行各种活动的资源。例如,一个人可以创建网页,另一个人可以下载该网页,打印该网页,从所述网页中复制信息,或对于该网页执行其他类型的活动。在另一示例中,一个人可以向另一用户发送电子邮件消息。在此示例中,其他用户可以阅读电子邮件消息,回复该电子邮件消息,转发该电子邮件消息,或对于该电子邮件消息执行某种其他类型的活动。在许多情况下,知道人们对于资源执行了什么活动以及谁执行这些活动是有帮助的。例如,用户向一组同事发出重要的电子邮件消息。在此示例中,用户知道用户的同事中的哪一些已经阅读了该电子邮件消息是有帮助的。在另一示例中,一个人要求他的主管审阅文档。在此示例中,用户知道主管是否已经查看了该文档是有帮助的。概述为帮助用户知道其他人对于资源执行了什么活动,在资源中检测资源引用。资源引用引用诸如其他网页或其他电子邮件消息之类的目标资源。然后,标识资源引用的适当的基于活动的资源类型。然后,资源引用链接到基于活动的资源,以便当显示基资源并且用户与资源引用进行交互时,向用户显示基于活动的资源。基于活动的资源包括计算出的字段,这些计算出的字段具有指示一个或多个用户如何与一个或多个资源进行交互的值。计算出的字段的值是使用指示用户如何与资源进行交互的活动数据计算出的。活动数据在不接收来自用户的活动数据的输入的情况下生成。提供本概述是为了介绍一些概念。这些概念在以下详细描述中进一步描述。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。附图
简述图I是示出了示例系统的框图。图2是示出了示例替换系统的框图。图3是示出了由客户端系统所执行的示例操作的流程图。图4是示出了由服务器系统所执行的示例操作的流程图。图5是示出了将基资源中的资源引用链接到基于活动的资源的示例操作的流程图。图6是示出了由服务器系统基于活动数据生成资源数据所执行的示例操作的流程图。图7是包含基于活动的资源的示例邮箱界面。图8是包含基于活动的资源的另一示例用户界面。图9是示出了示例计算设备的框图。详细描述图I是示出了示例系统100的框图。系统100包括服务器系统102、客户端系统104,以及网络106。应该理解,系统100还可以包含除图I的示例中所示出的那些组件之外的组件。为了清楚起见,图I中省略了这样的额外的组件。服务器系统102是包括一台或多台计算设备的系统。如此处所使用的,计算设备是处理信息的物理的、有形的设备。在各实施例中,服务器系统102包括各种类型的计算设备。例如,服务器系统102可以包括一台或多台台式计算机、膝上型计算机、上网本计算机、手持式计算设备、智能电话、独立服务器设备、刀片式服务器设备、大型计算机、巨型计算机、和/或其他类型的计算设备。在服务器系统102包括一台以上的计算设备的各实施例中,服务器系统102中的计算设备可以跨各种位置分布,并通过诸如因特网或局域网之类的通信网络进行通信。客户端系统104还是包括一台或多台计算设备的系统。在各实施例中,客户端系统104包括各种类型的计算设备。例如,客户端系统104可以包括上面对于服务器系统102所列的各种类型的计算设备中的任何一种。网络106是包括计算设备和促进服务器系统102和客户端系统104之间的通信的链路的集合的通信网络。在各实施例中,网络106包括各种类型的计算设备。例如,网络106 可包括路由器、交换机、移动接入点、桥接器、集线器、入侵检测设备、存储设备、独立服务器设备、刀片式服务器设备、传感器、台式计算机、防火墙设备、膝上型计算机、手持式计算机、移动电话、及其他类型的计算设备。在各实施例中,网络106包括各种类型的链路。例如,网络106可包括有线和/或无线链路。此外,在各实施例中,网络106还以各种规模来实现。例如,网络106可被实现为一个或多个局域网(LAN)、城域网、子网、广域网(诸如因特网),或者也可以以另一规模来实现。服务器系统102中的一个或多个数据存储系统存储计算机可读指令,所述计算机可读指令,在由服务器系统102中的一个或多个处理单元执行时,导致服务器系统102提供服务器活动系统108和资源服务器110。另外,服务器系统102中的一个或多个数据存储系统还存储活动数据库118。数据存储系统是包括一个或多个计算机可读取的数据存储介质的系统。计算机可读取的数据存储介质是能够以易失性或非易失性方式存储数据的物理设备或制品。在某些实施例中,数据存储系统包括一个或多个非瞬时的计算机可读取的数据存储介质。计算机可读取的数据存储介质的示例类型包括随机存取存储器(RAM)、只读存储器(ROM)、光盘(例如,⑶-R0M、DVD、BluRay光盘、HDDVD光盘等等)、磁盘(例如,硬盘驱动器、软盘等等)、固态存储器设备(例如,闪存驱动器),EEPR0M、现场可编程门阵列等等。在服务器系统102中的一个或多个数据存储系统包括一个以上的计算机可读取的数据存储介质的某些实施例中,计算机可读的数据存储介质跨各种地理位置分布。在服务器系统102中的数据存储系统包括一个以上的计算机可读取的数据存储介质的某些实施例中,与服务器活动系统108和资源服务器110相关联的计算机可读的指令可以跨两个或更多计算机可读数据存储介质地分布。同样,在服务器系统102中的数据存储系统包括一个以上的计算机可读取的数据存储介质的某些实施例中,活动数据库118可以跨两个或更多计算机可读数据存储介质地分布。应该理解,在其他实施例中,服务器系统102提供比图I的示例中所示出的多一些或少一些组件。此外,还应该理解,为便于理解,图I以简化形式示出了服务器系统102。活动数据库118是存储活动数据的数据库。在各实施例中,活动数据库118是以各种方式实现的。例如,在某些实施例中,活动数据库118被实现为关系数据库。在其他实施例中,活动数据库118被实现为一个或多个平面文件。在又一些其他实施例中,活动数据库118被实现为目录。客户端系统104中的一个或多个数据存储系统存储计算机可读指令,所述计算机可读指令,在由客户端系统104中的一个或多个处理单元执行时,导致客户端系统104提供客户端活动系统112和客户端应用114。在客户端系统104中的数据存储系统包括一个以上的计算机可读取的数据存储介质的某些实施例中,与客户端活动系统112和客户端应用114相关联的计算机可读的指令跨两个或更多计算机可读数据存储介质地分布。在客户端系统104中的数据存储系统包括一个以上的计算机可读取的数据存储介质的其他实施例中,与客户端活动系统112和客户端应用114相关联的计算机可读的指令只存储在一个计算机可读的数据存储介质中。应该理解,在其他实施例中,客户端系统104包括比图I的示例中所示出的多一些或少一些组件。此外,还应该理解,为便于理解,图I以简化形式示出了客户端系统104。在各实施例中,客户端应用114可以各种类型的应用。例如,客户端应用114可以是诸如MICROSOFT INTERNET EXPLORER web 浏览器、GOOGLE CHROME web 浏览器,或MOZILLA FIREF0X web浏览器之类的web浏览器应用。在其他实施例中,客户端应用114可以是诸如MICROSOFT OUTLOOK 电子邮件客户端之类的电子邮件客户端。在又一些其他实施例中,客户端应用114可以是其他类型的应用,如字处理应用、电子表格应用、数据库应用、文档管理服务客户端,及其他类型的客户端应用。用户116使用由客户端系统104所提供的客户端应用114来访问资源。在某些实施例中,资源是由服务器系统102所提供的资源服务器110托管的。在各实施例中,资源服务器110可以是各种类型的服务器。例如,在某些实施例中,资源服务器110可以是MICROSOFT SHAREP0INT服务器、MICROSOFT 因特网信息服务服务器或另一种类型的服务器。如在本文档中所使用的,资源是可识别的东西。资源的示例类型包括,但不仅限于,静态或动态地生成的网页、文字处理文档、电子表格文档、数据库、数据库条目、电子邮件消息、电子日历约会、电子任务列表任务、PDF文档、视频文件和流、音频文件和流,基于活动的资源、人、位置、建筑物,及其他类型的可识别的东西。为请求由资源服务器110所托管的资源,客户端应用114通过网络106将资源请求发送到资源服务器110。响应于来自客户端应用114的资源请求,资源服务器110通过网络106将资源数据发送到客户端应用114。资源数据表示被请求的资源。在某些情况下,资源服务器110动态地生成资源数据。换言之,资源服务器110响应于接收到对于资源的资源请求,来创建表示资源的资源数据。客户端应用114处理从资源服务器110接收到的资源数据,以向用户116呈现被请求的资源。客户端活动系统112生成客户端活动数据。客户端活动数据指示用户116如何与资源进行交互。例如,客户端活动系统112可以生成客户端活动数据,这些数据指示包含资源的窗口位于向用户116显示的用户界面的前台中的时间长度,用户116对于窗口中的资源积极地提供鼠标和/或键盘输入的时间长度,用户116将包含资源的窗口带到向用户116显示的用户界面的前台的次数,用户116打印资源的次数,用户116复制和粘贴资源中的信息的次数,用户116是否编辑了资源,用户116是否将资源转发到另一用户,及可从客户端系统104检测到的其他类型的用户活动。此外,在某些实施例中,客户端活动数据还可以指示用户116和资源之间的交互的各种组合的出现。例如,当客户端活动系统112检测到用户116打开了文档、滚动浏览了文档、以及向文档中添加了评论时,客户端活动系统112可以生成指示用户116审阅了该文档的客户端活动数据。客户端活动系统112自动地生成客户端活动数据。换言之,客户端活动系统112生成客户端活动数据,而无需从用户116那里接收到客户端活动数据的输入。例如,用户116不需要指示客户端活动系统112生成关于用户116如何与单个资源进行交互的单个数据片段。客户端活动系统112通过网络106将客户端活动数据发送到服务器活动系统108。当服务器活动系统108从客户端活动系统112接收到客户端活动数据时,服务器活动系统108将客户端活动数据添加到存储在活动数据库118中的活动数据中。当服务器活动系统108将客户端活动数据添加到存储在活动数据库118中的活动数据中时,客户端活动数据 中的至少某些保持与用户116相关联。换言之,服务器活动系统108存储客户端活动数据中的至少某些,以便有可能确定用户116作为个人如何与各种资源进行交互。即,客户端活动数据中的至少某些不与涉及其他用户的活动数据聚合或不使其匿名。服务器活动系统108还接收指示群体中的其他用户如何与由资源服务器110所托管的资源进行交互的客户端活动数据。群体包括用户116。在各实施例中,群体是以各种方式定义的。例如,服务器活动系统108可以从安装在由一个企业中的某些或所有雇员所使用的客户端系统中的客户端活动系统接收数据。在另一示例中,服务器活动系统108可以从安装在注册了一个服务或以其他方式自愿地加入社区的人所使用的客户端系统中的客户端活动系统接收客户端活动数据。类似于涉及用户116的客户端活动数据,服务器活动系统108将涉及其他用户的客户端活动数据添加到活动数据库118中的活动数据中。当服务器活动系统108将客户端活动数据添加到存储在活动数据库118中的活动数据中时,涉及其他用户的客户端活动数据中的至少某些保持与其他用户相关联。换言之,涉及其他用户的客户端活动数据中的至少某些不被聚合或使其匿名。此外,在某些实施例中,服务器活动系统108还生成服务器活动数据。服务器活动数据指示用户如何与由资源服务器110所托管的资源进行交互。例如,服务器活动系统108可以生成指示下列各项的服务器活动数据用户116请求资源的次数、用户116是否修改了资源、在接收到包含资源的搜索结果网页之后,用户116是否执行了另一搜索、或执行了可从服务器系统102检测到的其他类型的用户活动。服务器活动系统108将服务器活动数据添加到活动数据库118中的活动数据中。当服务器活动系统108将与用户相关的服务器活动数据添加到活动数据库118中时,服务器活动数据中的至少某些保持与用户相关联。因此,服务器活动数据稍后可以被用来确定用户如何与各种资源进行交互。应该理解,在某些实施例中,客户端系统104不包括客户端活动系统112。在这样的实施例中,服务器活动系统108生成存储在活动数据库118中的全部活动数据,而不从客户端系统接收活动数据。基于活动的资源是显示有关一个或多个用户如何与一个或多个资源进行交互的信息的资源。有关一个或多个用户如何与一个或多个资源进行交互的信息是使用活动数据库中的活动数据生成的。如在本文中别处所详细描述的,基于活动的资源可以显示各种不同类型的有关用户如何与资源进行交互的信息。例如,基于活动的资源可以显示打印了另一资源的用户的列表以及从资源中复制并粘贴了信息的用户的列表。在另一示例中,基于活动的资源可以显示有关用户的个人信息以及用户上周编辑的文档的列表。在再一个示例中,基于活动的资源可以显示有关哪些用户阅读了特定电子邮件消息的信息。在某些实施例中,基于活动的资源可以显示从客户端或服务器活动数据聚合的数据。此外,在某些实施例中,基于活动的资源还可以基于客户端或服务器活动数据来显示匿名信息。资源引用是引用另一资源的数据。目标资源是资源引用所引用的资源。各实施例支持各种类型的资源引用。例如,在某些实施例中,超链接是被支持的资源引用类型。在另一示例中,在某些实施例中,引用另一资源的图形用户界面元素(例如,图标或控件)是被支持的资源引用类型。在再一个示例中,在某些实施例中,引用其他资源的文本或图像也是被支持的资源引用类型。资源引用可以引用各种不同类型的目标引用。目标引用的示例类型包括网页、文字处理文档、电子表格文档、数据库、个人联系人信息、任务项、日历约会、图形文档、笔记文档、用户、及其他类型的资源。此外,在某些实施例中,基资源可以包含引用该基资源的资源引用。系统100的一个或多个组件操作以检测基资源中的资源引用。基资源是可以向用 户显示的任何类型的资源。在检测到基资源中的资源引用之后,组件标识用于该资源引用的适当的资源类型。组件至少部分地基于基资源的类型以及资源引用的目标资源的类型来标识适当的资源类型。在标识用于该资源引用的适当的基于活动的资源类型之后,组件自动地将资源引用链接到属于该适当的基于活动的资源类型的基于活动的资源。作为将基资源中的资源引用链接到基于活动的资源的结果,客户端应用114可以向用户116显示该基于活动的资源。在某些实施例中,客户端应用114自动地向用户116显示该基于活动的资源。例如,在这样的实施例中,客户端应用114可以作为半透明弹出式窗口区域向用户116显示该基于活动的资源。在其他实施例中,客户端应用114响应于由用户116对于该资源引用所执行的动作,向用户116显示该基于活动的资源。例如,客户端应用114就像冒泡式提示(tool tip)那样显示基于活动的资源。换言之,在此示例中,当用户116将光标置于该资源引用的上方达某一时间长度时,客户端应用114显示该基于活动的资源,而当用户116将光标离开该资源引用时,隐藏该基于活动的资源。在另一示例中,当用户116将光标置于该资源引用的上方达某一时间长度时,客户端应用114显示该基于活动的资源,但是当用户116将光标离开该资源引用时,不隐藏该基于活动的资源。在此示例中,用户116可以使用光标来选择该基于活动的资源中的数据。在再一个示例中,当用户点击该资源引用时,客户端应用114可以显示该基于活动的资源。在再一个示例中,当该资源引用被选中的同时用户输入一种击键组合时,客户端应用114可以显示该基于活动的资源。在再一个示例中,客户端应用114可以在用户说出一语音命令时显示该基于活动的资源。此外,在某些实施例中,当用户116选择该资源引用时,客户端应用114显示该目标资源。在某些实施例中,当一基于活动的资源与一资源引用相关联时,该资源引用具有不同的外观。例如,当没有基于活动的资源与一资源引用相关联时,该资源引用可以具有一种颜色,而当基于活动的资源与该资源引用相关联时,该资源引用具有另一种颜色。如在本文中别处所描述的,系统100的各种组件可以操作,以自动地将基资源中的资源引用链接到基于活动的资源。例如,在某些实施例中,资源服务器110操作以自动地将基资源中的资源引用链接到基于活动的资源。在其他实施例中,客户端应用114操作以自动地将基资源中的资源引用链接到基于活动的资源。图2是示出了系统100的替换实施例的框图。如图2的示例所示,服务器系统102包括如上文参考图I的示例所描述的服务器活动系统108和活动数据库118。此外,在图2的示例中,客户端系统104还包括如上文参考图I的示例所描述的客户端活动系统112和客户端应用114。另外,客户端系统104处的一个或多个数据存储系统还存储表示资源服务器110的计算机可读指令。该计算机可读指令,当由客户端系统104中的一个或多个处理单元执行时,导致客户端系统104提供资源服务器110。在某些实施例中,资源服务器110是客户端应用114的一部分。资源服务器110的操作非常像参考图I的示例所描述的资源服务器110。客户端应用114能够将资源请求发送到资源服务器110。响应于资源请求,资源服务器110将表示 被请求的资源的资源数据发送到客户端应用114。为在生成表示基于活动的资源的资源数据时检索相关活动数据,资源服务器110通过网络106将查询发送到活动数据库118。响应于查询,活动数据库118通过网络106将相关活动数据发送到资源服务器110。然后,资源服务器110使用该相关活动数据来生成表示基于活动的资源的资源数据。图3是示出了由客户端系统104所执行的示例操作300的流程图。虽然是参考客户端系统104来描述操作300的,但是,应该理解,多个客户端系统可以执行操作300,以便从服务器系统102检索资源,并将活动数据发送到服务器系统102。如图3的示例所示,当客户端应用114向用户116呈现资源时(302)操作300开始。在各实施例中,客户端应用114向用户116呈现各种类型的资源。例如,客户端应用114可以向用户116呈现网页、文字处理文档、电子表格文档、电子邮件消息、任务项、视频流、日历约会、音频文件、图形用户界面、及其他类型的资源。在某些实施例中,可以动态地生成资源。在某些实施例中,资源由资源服务器110来托管。在这样的实施例中,客户端应用114可以将资源请求发送到资源服务器110。“资源请求”请求资源。在其他实施例中,资源存储在客户端系统104处或在客户端系统104处动态地生成。在客户端应用114呈现至少某些资源之后,客户端活动系统112检测与资源相关的用户活动(304)。例如,客户端活动系统112可以检测来自用户116的将包含资源的窗口带到用户界面的前台的输入。在另一示例中,客户端活动系统112可以检测来自用户116的复制资源中的数据的输入。在再一个示例中,在资源是电子邮件消息的情况下,客户端活动系统112可以检测来自用户116的转发或回复电子邮件消息的输入。当客户端活动系统112检测到与资源相关的用户活动时,客户端活动系统112生成与资源相关的客户端活动数据(306)。客户端活动数据指示用户116如何与资源进行交互。当用户116持续与该资源进行交互时,客户端活动系统112持续生成与该资源相关的客户端活动数据。当客户端活动系统112生成客户端活动数据时,客户端活动系统112存储客户端活动数据(308)。在各实施例中,客户端活动系统112以各种方式来存储客户端活动数据。例如,在某些实施例中,客户端活动系统112将客户端活动数据存储在关系数据库中。在其他实施例中,客户端活动系统112将客户端活动数据存储在日志文件中。随后,客户端活动系统112将客户端活动数据发送到服务器活动系统108 (310)。在各实施例中,客户端活动系统112以各种方式将客户端活动数据发送到服务器活动系统108。例如,在某些实施例中,客户端活动系统112生成指示在给定时段内发生的用户活动的客户端活动数据,然后将该客户端活动数据成批地发送到服务器活动系统108。例如,客户端活动系统112生成指示在一天、一个小时、一周、或另一种时段内发生的用户活动的客户端活动数据,然后,将该客户端活动数据发送到服务器活动系统108。在其他实施例中,客户端活动系统112在客户端活动系统112生成客户端活动数据时连续地将客户端活动数据发送到服务器活动系统108。图4是示出了由服务器活动系统108所执行的示例操作400的流程图。虽然是利用服务器活动系统108与客户端系统104和用户116进行交互来描述操作400的,但是,应该理解,服务器活动系统108及其他用户可以以相同或类似的方式与其他参与的客户端系统和用户进行交互。例如,服务器活动系统108可以以与客户端系统104同样的方式与一·个企业中的某些或所有客户端系统进行交互。如图4的示例所示,服务器活动系统108生成服务器活动数据(402)。服务器活动数据指示用户116如何与各种资源进行交互。在各实施例中,服务器活动系统108生成各种类型的服务器活动数据。例如,服务器活动系统108可以首先生成指示用户116请求了由资源服务器110所托管的给定资源的服务器活动数据。在另一示例中,服务器活动系统108可以生成指示用户116更新了由资源服务器110所托管的诸如用户简档页面之类的资源的服务器活动数据。在再一个示例中,服务器活动系统108可以生成指示用户116使用了由资源服务器110所提供的微博服务来向跟随用户116的用户发送消息的服务器活动数据。此外,在各实施例中,服务器活动系统108还可以以各种方式来生成服务器活动数据。例如,在某些实施例中,服务器活动系统108使用由资源服务器110所生成的日志文件来生成服务器活动数据。在其他实施例中,服务器活动系统108使用由资源服务器110或其他服务器提供到服务器活动系统108的数据。服务器活动系统108将服务器活动数据添加到活动数据库118中(404)。服务器活动系统108将服务器活动数据存储在活动数据库118中,使得至少某些服务器活动数据保持与用户116相关联。换言之,服务器活动系统108不使所有服务器活动数据匿名。服务器活动系统108还从客户端活动系统112接收客户端活动数据(406)。客户端活动数据指示用户116如何与一个或多个资源进行交互。在各实施例中,客户端活动数据以各种方式来格式化。例如,在某些实施例中,客户端活动数据被格式化为一个或多个HTTP请求、一个或多个WEBDAV请求、一个或多个RPC请求、一个或多个SOAP over HTTP请求等等。此外,在各实施例中,服务器活动系统108还可以接收与用户与其进行交互的各种类型的资源相关的客户端活动数据。例如,服务器活动系统108可以接收指示用户如何与由资源服务器110所托管的资源和/或由资源服务器110之外的服务器所托管的资源进行交互的客户端活动数据。在另一示例中,服务器活动系统108可以接收指示用户如何与在客户端系统处生成的和/或存储的资源进行交互的客户端活动数据。另外,在各实施例中,服务器活动系统108还在各种时间接收客户端活动数据。例如,在某些实施例中,服务器活动系统108周期性地从客户端活动系统112接收客户端活动数据。在其他实施例中,服务器活动系统108在客户端活动系统112生成客户端活动数据时连续地从客户端活动系统112接收客户端活动数据。在服务器活动系统108接收到客户端活动数据之后,服务器活动系统108将客户端活动数据添加到活动数据库118中(408)。服务器活动系统108将从客户端活动系统112接收到的客户端活动数据添加到活动数据库118中,使得至少某些客户端活动数据保持与用户116相关联。换言之,客户端活动系统108不使所有客户端活动数据匿名。在某些实施例中,当服务器活动系统108将客户端活动数据添加到活动数据库118中时,服务器活动系统108将客户端活动数据与关于相同资源的其他客户端活动数据和/或服务器活动数据相关。例如,客户端活动数据可以指示用户116阅读了给定博客贴子。在此示例中,服务器活动系统108可以将此客户端活动数据与描述该用户和该给定博客贴子之间的交互的其他客户端活动数据和/或服务器活动数据相关。 图5是示出了将基资源中的资源引用链接到基于活动的资源的示例操作500的流程图。为便于说明,操作500的步骤被描述为由资源服务器110执行。然而,应该理解,在各实施例中,系统100的各种组件执行操作500。例如,在某些实施例中,资源服务器110执行操作500。在其他实施例中,客户端应用114执行操作500。在又一些其他实施例中,另一计算系统执行操作500。在各实施例中,系统100的各种组件在各种时间执行操作500。例如,当资源服务器Iio接收到请求基资源的资源请求时,资源服务器110可以执行操作500。在另一示例中,当基资源存储在服务器系统102处或在服务器系统102处被索引时,资源服务器110可以执行操作500。在再一个示例中,客户端应用114可以在生成图形用户界面的过程中执行操作500。在再一个示例中,在客户端应用114从资源服务器110或另一资源服务器接收到表示基资源的资源数据之后,客户端应用114可以执行操作500。一开始,资源服务器110检测基资源中的资源引用(502)。资源引用引用目标资源。基资源可以是各种不同类型的资源。例如,被请求的资源可以是包含到满足搜索查询的资源的链接的搜索结果界面。在此示例中,目标资源是满足搜索查询的资源中的一个。在另一示例中,基资源可以是包含人的列表的网页。在再一个示例中,基资源可以是包含允许用户查看电子邮件消息的邮箱界面的网页。在再一个示例中,基资源可以是电子邮件消息。在再一个示例中,基资源可以是文字处理文档。在再一个示例中,基资源可以是电子表格文档。在各实施例中,资源服务器110以各种方式检测基资源中的资源引用。例如,在某些实施例中,超文本标记语言(HTML)文档表示基资源。在此示例中,资源服务器110扫描HTML文档,查找超链接。在此示例中,当资源服务器110找到引用活动数据库118为其存储了活动数据的资源的超链接时,资源服务器110检测到资源引用。在另一示例中,电子邮件消息是基资源。在此示例中,当活动数据库118存储涉及电子邮件消息的发件人或收件人时,资源服务器110扫描电子邮件消息,并检测资源引用。在再一个示例中,文本文档是基资源。在此示例中,当文本文档中的一短语引用活动数据库118为其存储了活动数据的资源时,资源服务器110扫描文本文档中的短语并检测资源引用。当资源服务器110检测到被请求的资源中的资源引用时,资源服务器110从多个基于活动的资源类型中标识用于该资源引用的适当的基于活动的资源类型(504)。资源服务器110至少部分地基于被请求的资源的类型和目标资源的类型,标识用于该资源引用的适当的基于活动的资源类型。
在各实施例中,资源服务器110以各种方式标识用于该资源引用的适当的基于活动的资源类型。例如,在某些实施例中,资源服务器110使用一组规则来从多个基于活动的资源类型中标识资源引用的适当的资源类型。该组规则中的每一规则都指定基资源-目标资源组合和基于活动的资源类型之间的映射。基资源-目标资源组合是基资源类型和目标资源类型的组合。例如,电子邮件消息是基资源,而文字处理文档是目标资源。在此示例中,规则将此基资源-目标资源组合映射到显示有关文字处理文档的作者以及作者如何与文字处理文档进行交互的信息的基于活动的资源的类型。在另一示例中,包含电子邮件消息描述符的图形用户界面是基资源,而电子邮件消息是目标资源。在此示例中,规则可以将此基资源-目标资源组合映射到显示有关电子邮件消息的收件人是否已经阅读该电子邮件消息的信息的基于活动的资源的类型。在再一个示例中,搜索结果网页是基资源,而网页是目标资源。在此示例中,规则可以将此基资源-目标资源组合映射到显示指示单个用户如何与网页进行交互以及这些单个用户如何与请求了搜索结果网页的用户相关的信息的基于活动的资源类型。在各实施例中,该组规则是以各种方式存储的。例如,在某些实施例中,该组规则被存储在资源服务器110中。在某些实施例中,该组规则是用户可配置的。在其他实施例中,基资源包含指示用于不同类型的目标资源的基于活动的资源的适当的类型的元数据。在又一些其他实施例中,资源服务器110包括以编程方式将各种基资源-目标资源组合与各种类型的基于活动的资源相关联的软件代码。在这样的实施例中,资源服务器110可以以类似于上文所描述的基于规则的各实施例的方式进行操作,只是规则被硬编码到资源服务器110中。在标识用于该资源引用的适当的基于活动的资源类型之后,资源服务器110将该资源引用链接到基于活动的资源(506)。基于活动的资源属于资源引用的适当的基于活动的资源类型。在各实施例中,资源服务器110以各种方式将该资源引用链接到该基于活动的资源。例如,在某些实施例中,资源服务器110通过修改表示基资源的资源数据来将该资源引用链接到该基于活动的资源,使得每当用户将光标置于该资源引用上方时,客户端应用114都发送对该基于活动的资源的资源请求。在此示例中,资源请求可以包括指示适当的基于活动的资源类型的URL。另外,该URL还可以标识基资源的类型、目标资源的类型、以及用户116。在另一示例中,在某些实施例中,资源服务器110修改表示基资源的资源数据,以并入表示该基于活动的资源的资源数据。在此示例中,资源服务器110还修改表示该基资源的资源数据,以包括诸如Javascript脚本之类的脚本,当用户116将光标置于该资源引用的上方时或以其他方式与该资源引用进行交互时,该脚本导致客户端应用114示出该基于活动的资源。图6是示出了由服务器系统102生成表示基于活动的资源的资源数据所执行的示例操作600的流程图。
各种计算系统可以在各种时间执行操作600。例如,在某些实施例中,资源服务器110从客户端应用114接收对于基于活动的资源的资源请求。在此示例中,资源服务器110作为生成表示基于活动的资源的资源数据的过程的一部分来执行操作600。在另一示例中,资源服务器110从客户端应用114接收对于基资源的资源请求。在此示例中,资源服务器110作为生成表示基资源的资源数据的过程的一部分来执行操作600。在此示例中,资源服务器110在表示基资源的资源数据中包括表示基于活动的资源的资源数据。在再一个示例中,客户端应用114可以作为生成图形用户界面的过程的一部分来执行操作600。基于活动的资源包括一组固定字段以及一组计算出的字段。属于给定基于活动的资源类型的每一基于活动的资源都具有相同固定字段组以及相同计算出的字段组。属于给定基于活动的资源类型的每一基于活动的资源都在它们的固定字段中具有相同值。例如,属于给定基于活动的资源类型的每一基于活动的资源都可包括相同标题。属于给定基于活动的资源类型的不同的基于活动的资源可以在它们的计算出的字段中具有不同的值。某些计算出的字段的值指示一个或多个用户如何与一个或多个资源进行交互。例如,基于活动的资源可以包括包含编辑了特定文档的用户的名称的计算出的字段。在另一 示例中,基于活动的资源可以包括指示特定用户编辑特定资源的次数的计算出的字段。在再一个示例中,基于活动的资源可以包括列出从特定资源中复制了信息的用户的计算出的字段。在再一个示例中,基于活动的资源可以包括一个或多个计算出的字段,它们提供有关除资源引用的基资源或目标资源以外的资源的信息。例如,基于活动的资源可以包括指示阅读了目标引用的用户创作的文档的列表的计算出的字段。操作600的下列步骤被描述为是由资源服务器110执行的。然而,应该理解,在某些实施例中,系统100的诸如客户端应用114之类的其他组件可以执行操作600的步骤。为生成表示基于活动的资源的资源数据,资源服务器110参考指示用户如何与资源进行交互的基于活动的资源中的每一计算出的字段来执行操作600。一开始,资源服务器110检索计算出的字段的相关活动数据(602)。计算出的字段的相关活动数据是存储在活动数据库118中的与对计算出的字段的值的计算相关的活动数据的子集。在各实施例中,资源服务器110执行各种动作,以检索计算出的字段的相关活动数据。例如,在某些实施例中,当资源服务器110接收到对于基于活动的资源的资源请求时,资源服务器110解释与基于活动的资源相关联的脚本。脚本向资源服务器110指示如何查询活动数据库118以获得相关资源数据。在此示例中,服务器活动系统108响应于一个或多个搜索查询,处理来自资源服务器110的搜索查询,并返回计算出的字段的相关活动数据。在另一示例中,资源服务器110检索与基于活动的资源相关联的模板文档。模板文档包含指示如何检索计算出的字段的相关活动数据的数据。在检索到计算出的字段的至少某些相关活动数据之后,资源服务器110使用计算出的字段的相关活动数据来生成计算出的字段的值(604)。资源服务器110可以执行各种活动,以生成计算出的字段的值。例如,资源服务器110可以通过计数指示特定用户访问了特定资源的相关活动数据的次数来生成计算出的字段的值。在另一示例中,计算出的字段指示特定用户编辑特定资源的最后的时间。在此示例中,资源服务器110可以通过扫描相关活动数据以标识特定用户编辑目标资源的最后的时间来生成计算出的字段的值。在再一个示例中,计算出的字段指示特定用户阅读特定文档所花的时间的平均长度。在此示例中,资源服务器110通过使用相关活动数据来标识特定用户阅读特定文档所花的时间长度、将这些时间长度相加、然后将该总和除以特定用户阅读特定资源的次数,来生成计算出的字段的值。在某些实施例中,计算出的字段的值取决于用户116如何与一个群体中的其他用户相关。因此,计算出的字段的值对于该群体中的不同的用户可以不同。例如,基资源包括搜索结果界面,目标资源是满足搜索查询的资源。在此示例中,资源服务器110生成计算出的字段的值,以便计算出的字段的值指示用户116的一个或多个对等体(peer)如何与目标资源进行交互。当第一用户和第二用户直接向同一个人报告时,第一用户是第二用户的对等体。在另一示例中,计算出的字段的值指示阅读了目标资源以及通过社交网络链接连接到用户116的用户。在再一个示例中,群体包括一组在目标资源中所讨论的特定主题方面的专家。在此示例中,计算出的字段的值取决于专家中的一个或多个如何与目标资源进行交互。
然后,资源服务器110将表示计算出的字段的值的数据添加到表示基于活动的资源的资源数据中(606)。在各实施例中,资源服务器110以各种方式将表示计算出的字段的值的数据添加到表示基于活动的资源的资源数据中。例如,在某些实施例中,表示基于活动的资源的资源数据是可扩展标记语言(XML)文档。在此示例中,资源服务器110通过将XML元素添加到XML文档中来添加表示计算出的字段的值的数据。该XML元素指定计算出的字段的值。可另选地,资源服务器110通过将计算出的字段的值插入到XML文档中的一个或多个现有XML元素中,来添加表示计算出的字段的值的数据。在另一示例中,资源数据是HTML文档。在此示例中,资源服务器110通过将一个或多个HTML元素添加到HTML文档中或通过将计算出的字段的值插入到HTML文档中的一个或多个现有HTML元素中,来添加表示计算出的字段的值的数据。在将表示计算出的字段的值的数据添加到表示基于活动的资源的资源数据中之后,资源服务器110可以对于基于活动的资源中的另一计算出的字段,重复步骤602、604、以及606。资源服务器110对于基于活动的资源中的不同的计算出的字段,持续重复步骤602,604以及606,直到资源数据表示基于活动的资源的完整的版本。图7是包含基于活动的资源702的示例邮箱界面700。客户端应用114向用户116显示邮箱界面700。邮箱界面700是使用户116能查看电子邮件消息的图形用户界面。如图7的示例所示,邮箱界面700包含电子邮件消息描述符704A-704F (统称为“电子邮件消息描述符704”)。电子邮件消息描述符704中的每一个都描述不同的电子邮件消息。电子邮件消息描述符704中的每一个都是资源引用。邮箱界面700还包含预览窗格706。预览窗格706显示选定的电子邮件消息。在图6的示例中,选择了由电子邮件描述符704B所描述的电子邮件消息。因此,预览窗格706显示由电子邮件消息描述符704B所描述的电子邮件消息。此外,用户116还将光标708置于电子邮件消息描述符704E上方。当用户116将光标708置于电子邮件消息描述符上方时,客户端应用114向用户116显示基于活动的资源702。在某些实施例中,当用户116将光标708离开电子邮件消息描述符704E时,客户端应用114可以隐藏基于活动的资源702。在图7的示例中,客户端应用114在邮箱界面700 (即,基资源)顶上显示基于活动的资源702。在其他实施例中,客户端应用114可以以其他方式显示基于活动的资源。例如,在某些实施例中,客户端应用114可以在基资源旁边的面板中显示基于活动的资源,以便基于活动的资源和基资源两者同时可见。在另一示例中,在某些实施例中,客户端应用114可以在与基资源不同的窗口中显示基于活动的资源。如图7的示例所示,基于活动的资源702包括已读字段710和未读字段712。已读字段710和未读字段712是基于活动的资源的计算出的字段。已读字段710的值列出已经阅读了由电子邮件消息描述符704E所描述的电子邮件消息的用户。已读字段710的值还列出这些用户阅读由电子邮件消息描述符704E所描述的电子邮件消息时的日期和时间。未读字段712的值列出已经接收到由电子邮件消息描述符704E所描述的电子邮件消息但是还没有阅读此电子邮件消息的用户。图8是包含基于活动的资源802的另一示例用户界面800。客户端应用114向用 户116显示用户界面800。如图8的示例所示,用户界面800包含来自用户“John D”的电子邮件消息804。电子邮件消息804包括超链接806。超链接806是资源引用。当用户116将光标808置于超链接806上方时,客户端应用114在用户界面800中向用户116呈现基于活动的资源802。如图8的示例所示,基于活动的资源802包括标签字段810。标签字段810指示基于活动的资源802包含有关用户“John D”的信息,并包含用户“John D”的职务。在图8的示例中,由于种种原因,基于活动的资源802可以包含有关用户“JohnD”的信息。例如,基于活动的资源802可以包含有关用户“John D”的信息,因为超链接806引用了由用户“John D”创作的文档。标签字段810中的值不一定是使用存储在活动数据库118中的活动数据生成的。基于活动的资源802还包括与用户“John D”对于由超链接806引用的文档的最近的活动相关的一组字段812。字段组812中的字段是计算出的字段。字段组812包括指示用户“John D”打开由超链接806引用的文档的次数的字段、指示用户“John D”编辑由超链接806引用的文档的次数的字段以及提及了由超链接806引用的文档的由用户“JohnD”所发送的电子邮件的数量。基于活动的资源802还包括涉及用户“John D”如何与用户116相关联的一组字段814。字段组814包括指示用户“John D”和用户116的共同的经理的字段。字段组814还包括指示包括用户“John D”和用户116两者的电子邮件分发列表的数量的字段。此外,基于活动的资源802还包括指向进一步信息的链接816。如图8的示例所示,链接816包括指向“有关John的更多信息”的链接和指向“看看其他相关的人”的链接。图9是示出了示例计算设备900的框图。在某些实施例中,服务器系统102和/或客户端系统104使用诸如计算设备900之类的一台或多台计算设备来实现。应该理解,在其他实施例中,服务器系统102和/或客户端系统104使用具有不同于图9的示例中所示出的那些硬件组件的硬件组件的计算设备来实现。在不同的实施例中,计算设备是以不同的方式实现的。例如,在图9的示例中,计算设备900包括存储器902、处理系统904、辅助存储设备906、网络接口卡908、视频接口910、显示设备912、外部组件接口 914、外部存储设备916、输入设备918、打印机920、以及通信介质922。在其他实施例中,计算设备是使用多一些或少一些的硬件组件来实现的。例如,在另一示例实施例中,计算设备不包括视频接口、显示设备、外部存储设备或输入设备。
存储器902包括能够存储数据和/或指令的一个或多个计算机可读数据存储介质。如在本文档中所使用的,计算机可读数据存储介质是一种存储计算设备可读的数据和/或软件指令的设备或制品。在不同的实施例中,存储器902是以不同的方式实现的。例如,在各实施例中,存储器902是使用各种类型的计算机可读数据存储介质来实现的。计算机可读数据存储介质示例类型包括,但不仅限于,动态随机存取存储器(DRAM)、双倍数据速率同步动态随机存取存储器(DDR SDRAM)、延迟缩短的DRAM、DDR2SDRAM、DDR3SDRAM、RambusRAM、固态存储器、闪存、只读存储器(ROM)、电可擦可编程只读存储器,及其他类型的存储数据的设备和/或制品。处理系统904包括有选择地执行软件指令的一个或多个物理集成电路。在各实施例中,处理系统904是以各种方式实现的。例如,在一个示例实施例中,处理系统904被实现为一个或多个处理核。例如,在此示例实施例中,处理系统904可以被实现为一个或多个Intel Core 2微处理器。在另一示例实施例中,处理系统904被实现为一个或多个单独的微处理器。在再一个示例实施例中,处理系统904被实现为提供专用功能的ASIC。在再一个示例实施例中,处理系统904通过使用ASIC并通过执行软件指令来提供专用功能。 在不同的实施例中,处理系统904执行不同的指令集中的软件指令。例如,在各实施例中,处理系统904执行诸如x86指令集、POWER指令集、RISC指令集、SPARC指令集、IA-64指令集、MIPS指令集之类的指令集和/或其他指令集中的软件指令。辅助存储设备906包括一个或多个计算机可读数据存储介质。辅助存储设备906存储不能被处理系统904直接访问的数据和软件指令。换言之,处理系统904执行输入/输出操作以从辅助存储设备906检索数据和/或软件指令。在各实施例中,辅助存储设备906是通过各种类型的计算机可读数据存储介质来实现的。例如,辅助存储器设备906可以通过一个或多个磁盘、磁带驱动器、⑶-ROM光盘、DVD-ROM光盘、蓝光光盘、固态存储设备、Bernoulli盒式磁带,和/或其他类型的计算机可读取的数据存储介质来实现。网络接口卡908使计算设备900能从计算机通信网络接收数据并向其发送数据。在不同的实施例中,网络接口卡908是以不同的方式实现的。例如,在各实施例中,网络接口卡908被实现为以太网接口、令牌环网络接口、光纤网络接口、无线网络接口(例如,WiFi、WiMax等等),或另一种类型的网络接口。视频接口 910使计算设备900能向显示设备912输出视频信息。在不同的实施例中,视频接口 910是以不同的方式实现的。例如,在一个示例实施例中,视频接口 910被集成到计算设备900的主板中。在另一示例实施例中,视频接口 910是视频扩展卡。视频扩展卡的示例类型包括AdvancedMicro Devices有限公司(位于加利福尼亚州的Sunnyvale市)所制造的Radeon图形卡,由Nvidia公司(位于加利福尼亚州的Santa Clara市)所制造的Geforce图形卡,及其他类型的图形卡。在各实施例中,显示设备912被实现为各种类型的显示设备。显示设备的示例类型包括,但不仅限于,阴极射线管显示器、LCD显示面板、等离子屏幕显示面板、触敏显示面板、LED屏幕、投影仪,及其他类型的显示设备。在各实施例中,视频接口 910以各种方式与显示设备912通信。例如,在各实施例中,视频接口 910通过通用串行总线(USB)连接器、VGA连接器、数字可视接口(DVI)连接器、S-Video (S视频)连接器、高清晰度多媒体接口(HDMI)接口、DisplayPort (显示端口)连接器,或其他类型的连接器来与显示设备912进行通信。外部组件接口 914使计算设备900能与外部设备进行通信。在各实施例中,外部组件接口 914是以不同的方式实现的。例如,在一个示例实施例中,外部组件接口 914是USB接口。在其他示例实施例中,计算设备900是FireWire (火线)接口、串行端口接口、并行端口接口、PS/2接口,和/或使计算设备900能与外部组件进行通信的另一种类型的接口。在不同的实施例中,外部组件接口 914使计算组件900能与不同的外部组件进行通信。例如,在图9的示例中,外部组件接口 914使计算设备900能与外部存储设备916、输入设备918,以及打印机920进行通信。在其他实施例中,外部组件接口 914使计算组件900能与多一些或少一些的外部组件进行通信。外部组件的其他示例类型包括,但不仅限于,扬声器、电话充电插孔、调制解调器、媒体播放器对接器,其他计算设备、扫描仪、数码相机、指纹读取器、及其他可以连接到计算设备900的设备。
外部存储设备916是包括一个或多个计算机可读数据存储介质的外部组件。计算设备900的不同的实现与不同类型的外部存储设备进行连接。外部存储设备的示例类型包括,但不仅限于,磁带驱动器、闪存模块、磁盘驱动器、光盘驱动器、闪存单元、zip磁盘驱动器、光学点播机、及其他类型的包括一个或多个计算机可读数据存储介质的设备。输入设备918是向计算设备900的提供用户输入的外部组件。计算设备900的不同的实现与不同类型的输入设备进行连接。输入设备的示例类型包括,但不仅限于,键盘、鼠标、轨迹球、指示笔输入设备、键盘、话筒、游戏杆、触敏显示屏幕,及其他类型的向计算设备900提供用户输入的设备。打印机920是向纸张打印数据的外部设备。计算设备900的不同的实现与不同类型的打印机进行连接。打印机的示例类型包括,但不仅限于,激光打印机、喷墨打印机、照片打印机、复印机、传真机、收据打印机、点阵打印机,或其他类型的向纸张打印数据的设备。通信介质922促进计算设备900的硬件组件之间的通信。在不同的实施例中,通信介质922促进计算设备900的不同的组件之间的通信。例如,在图9的示例中,通信介质922促进存储器902、处理系统904、辅助存储设备906、网络接口卡908、视频接口 910,以及外部组件接口 914之间的通信。在计算设备900的不同的实现中,通信介质922是以不同的方式实现的。例如,在计算设备900的不同的实现中,通信介质922可以被实现为PCI总线、PCI Express总线、加速图形端口(AGP)总线、Infiniband互连、串行高级技术附接(ATA)互连、并行ATA互连、光纤信道互连、USB总线,小型计算系统接口(SCSI)接口,或另一种类型的通信介质。存储器902存储各种类型的数据和/或软件指令。例如,在图9的示例中,存储器902存储基本输入/输出系统(BI0S)924、操作系统926、应用软件928,以及程序数据930。BIOS 924包括一组软件指令,这些软件指令,在由处理系统904执行时,导致计算设备900启动。操作系统926包括一组软件指令,这些软件指令,在由处理系统904执行时,导致计算设备900提供协调计算设备900的活动和资源共享的操作系统。操作系统的示例类型包括,但不仅限于,Microsoft Windows' 、Linux、Unix、Apple OS X、Apple OS X iPhone、Palm web0S>Palm 0S>Google Chrome OS>GoogleAndroid OS,等等。应用软件 928 包括一组软件指令,这些软件指令,在由处理系统904执行时,导致计算设备900向计算设备900的用户提供应用。程序数据930是由应用软件928所生成的和/或使用的数据。
上文所描述的各实施例是只作为说明来提供的,并且不应该被解释为限制。本领域的技术人员将轻松地认识到,在不遵循此处所示出和描述的示例实施例和应用的情况下 可以进行各种修改和更改。例如,图形所示出的操作只是示例。在各实施例中,类似的操作可包括比图形中所示出的那些多一些或少一些的步骤。此外,在其他实施例中,类似的操作可包括图形中所示出的操作的不同的顺序的步骤。
权利要求
1.一种方法,包括 由计算系统检测基资源中的资源引用,所述资源引用引用目标资源; 在检测到所述资源引用之后,由所述计算系统为所述资源引用标识适当的基于活动的资源类型;以及 在标识所述适当的基于活动的资源类型之后,由所述计算系统将所述资源引用链接到基于活动的资源,使得当显示所述基资源并且用户与所述资源引用进行交互时,向所述用户显示所述基于活动的资源,所述基于活动的资源属于所述适当的基于活动的资源类型,所述基于活动的资源显示有关一个或多个用户如何与一个或多个资源进行交互的信息,有关所述用户如何与所述资源进行交互的信息是使用指示所述用户如何与所述资源进行交互的活动数据生成的,所述活动数据在不从所述用户接收活动数据的输入的情况下生成。
2.如权利要求I所述的方法,其特征在于,检测所述基资源中的所述资源引用包括检测所述基资源中的超链接。
3.如权利要求I所述的方法,其特征在于,标识所述适当的基于活动的资源类型包括使用一组规则来从多个基于活动的资源类型中标识所述适当的基于活动的资源类型,所述规则将基资源-目标资源组合映射到所述多个基于活动的资源类型中的基于活动的资源类型。
4.如权利要求I所述的方法,其特征在于,所述方法还包括生成表示所述基于活动的资源的资源数据。
5.如权利要求4所述的方法,其特征在于,生成表示所述基于活动的资源的所述资源数据包括 从存储所述活动数据的活动数据库中检索相关活动数据; 使用所述相关活动数据来生成所述基于活动的资源中的计算出的字段的值;以及 将表示所述计算出的字段的所述值的数据添加到表示所述基于活动的资源的所述资源数据中。
6.如权利要求I所述的方法,其特征在于,还包括在检测所述资源引用之前执行下列动作 由所述计算系统通过网络将资源请求发送到资源服务器,所述资源请求请求所述基资源;以及 由所述计算系统接收表示所述基资源的资源数据。
7.一种计算系统,包括 包括一个或多个处理单元的的处理系统;以及 存储计算机可读指令的数据存储系统,所述计算机可读指令在由所述处理单元中的一个或多个执行时,导致所述计算系统 检测基资源中的资源引用,所述资源引用引用目标资源; 至少部分基于所述基资源的类型以及所述目标资源的类型来为所述资源引用标识适当的基于活动的资源类型;以及 将所述资源引用链接到基于活动的资源,使得当显示所述基资源并且用户与所述资源引用进行交互时,向所述用户显示所述基于活动的资源,所述基于活动的资源属于所述适当的基于活动的资源类型,所述基于活动的资源包括计算出的字段,所述计算出的字段的值指示一个或多个用户如何与一个或多个资源进行交互,所述计算出的字段的值是使用指示用户如何与所述资源进行交互的活动数据计算出的。所述活动数据在不从所述用户接收活动数据的输入的情况下生成。
8.如权利要求7所述的计算系统,其特征在于,所述计算机可读指令,在由所述处理单元中的一个或多个执行时,导致所述计算系统生成表示所述基于活动的资源的资源数据。
9.如权利要求8所述的计算系统,其特征在于, 其中,所述计算机可读指令,在由所述处理单元中的一个或多个执行时,导致所述计算系统提供响应于接收到来自客户端应用的资源请求而生成表示所述基于活动的资源的资源数据的资源服务器,所述资源请求请求所述基于活动的资源;以及 其中,所述计算机可读指令,在由所述处理单元中的一个或多个执行时,导致所述计算系统将所述资源引用链接到所述基于活动的资源,使得当所述用户与所述资源引用进行交互时,所述客户端应用将所述资源请求发送到所述资源服务器。
10.如权利要求8所述的计算系统,其特征在于, 其中,所述计算机可读指令,在由所述处理单元中的一个或多个执行时,导致所述计算系统提供响应于从客户端应用接收到请求所述基资源的资源请求而执行下列动作的资源服务器 生成表示所述基于活动的资源的所述资源数据;以及 将表示所述基于活动的资源的所述资源数据包括到表示所述基资源的资源数据中;以及 其中,所述计算机可读指令,在由所述处理单元中的一个或多个执行时,导致所述计算系统将所述资源引用链接到所述基于活动的资源,使得当所述用户与所述资源引用进行交互时,所述客户端应用使用表示所述基于活动的资源的所述资源数据来显示所述基于活动的资源。
11.如权利要求7所述的计算系统,其特征在于,所述计算机可读指令,在由所述处理单元中的一个或多个执行时,导致所述计算系统 在不从所述用户接收客户端活动数据的情况下生成所述客户端活动数据,所述客户端活动数据指示所述用户如何与向所述用户呈现的给定资源进行交互;以及 将所述客户端活动数据发送到服务器活动系统,所述服务器活动系统将所述客户端活动数据添加到所述活动数据中,所述客户端活动数据保持与所述用户相关联。
12.如权利要求7所述的计算系统,其特征在于,所述计算机可读指令,在由所述处理单元中的一个或多个执行时,导致所述计算系统 生成指示所述用户如何与由资源服务器所托管的资源进行交互的服务器活动数据;以及 将所述服务器活动数据添加到所述活动数据中,使得所述服务器活动数据保持与所述用户相关联。
13.如权利要求7所述的计算系统,其特征在于,所述基资源包括搜索结果界面,而所述目标资源是满足搜索查询的资源,其中所述计算出的字段的值指示所述用户的对等体如何与所述目标资源进行交互。
14.如权利要求7所述的计算系统,其特征在于,其中,所述基资源是邮箱界面,所述资源引用是电子邮件描述符,而所述目标资源是电子邮件消息;以及 其中,所述计算出的字段指示所述电子邮件消息的哪些收件人已经阅读了所述电子邮件消息。
15.在其上存储了计算机可读指令的计算机可读的数据存储介质,所述计算机可读指令,在由计算系统的一个或多个处理单元执行时,导致所述计算系统 生成指示多个用户中的用户如何与多个资源中的资源进行交互的服务器活动数据,其中,所述服务器活动数据是在不从所述用户接收所述服务器活动数据的输入的情况下生成的;以及 将所述服务器活动数据添加到活动数据库中的活动数据中,使得所述服务器活动数据保持与所述用户相关联; 从所述用户所使用的客户端设备接收客户端活动数据,所述客户端活动数据指示所述用户如何与所述资源进行交互,其中,所述客户端活动数据是在不从所述用户接收所述客户端活动数据的输入的情况下生成的; 将所述客户端活动数据添加到所述活动数据库中的所述活动数据中,使得所述客户端活动数据保持与所述用户相关联; 检测基资源中的资源引用,所述资源引用引用目标资源; 至少部分基于所述基资源的类型和所述目标资源的类型,从多个基于活动的资源类型中为所述资源引用标识适当的基于活动的资源类型; 生成表示属于所述适当的基于活动的资源类型的基于活动的资源的资源数据,其中,生成表示所述基于活动的资源的所述资源数据包括 从所述活动数据库中检索相关活动数据; 使用所述相关活动数据来生成所述基于活动的资源中的计算出的字段的值,所述计算出的字段的值指示所述用户中的一个或多个如何与所述目标资源进行交互;以及 将表示所述计算出的字段的所述值的数据添加到表示所述基于活动的资源的所述资源数据中; 将所述资源引用链接到所述基于活动的资源,使得当所述基资源被显示并且用户将光标置于所述资源引用的上方时,向所述用户显示所述基于活动的资源; 从客户端应用接收请求所述基资源的资源请求;以及 将表示所述基资源的资源数据发送到所述客户端应用。
全文摘要
检测诸如网页或电子邮件消息之类的基资源中的资源引用。资源引用引用诸如另一网页或另一电子邮件消息之类的目标资源。然后,标识资源引用的适当的基于活动的资源类型。然后,资源引用链接到基于活动的资源,使得当显示基资源并且用户与资源引用进行交互时,向用户显示基于活动的资源。基于活动的资源字段包括具有指示一个或多个用户如何与一个或多个资源进行交互的值的计算出的字段。计算出的字段的值是使用指示用户如何与资源进行交互的活动数据计算出的。活动数据在不接收来自用户的活动数据的输入的情况下生成。
文档编号G06F17/00GK102884519SQ201180022229
公开日2013年1月16日 申请日期2011年4月16日 优先权日2010年5月4日
发明者I·图马诺夫, G·佩朗塔托斯, J·S·瓦纳, B·R·梅耶斯 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1