具体实施方式
以下描述涉及的是标识并呈现与呈现给用户的实体相关联的用户特定服务。呈现给用户的实体可以采用搜索结果或其他实体呈现的形式,其中可包括出版作品、零售店、线上业务以及其他实体的标识。最初,服务供应商可以提供与这类服务有关的信息,包括服务名称,将服务与呈现给用户的实体相关联的操作,与服务相关联的实体的标识,以及可以将用户引导至此的其他信息,作为示例,该服务供应商可以是例如折扣协会(discount association)、功能服务供应商、其他成员组织、共同利益群体等等。随后,用户可以识别与之有联系的那些服务,例如用户具有会员资格或是分担共同利益的服务。可查阅实体集合来确定是否有任何实体与已被用户标识为有联系的服务相关联,以及是否可以用这种关联的标记来呈现具有这种关联的那些实体。
这里描述的技术关注的是借助浏览器来呈现因特网搜索结果,例如无处不在的“web浏览器”。然而,本描述并非意在暗示所描述的技术仅限于搜索结果,此外也并非暗示将所描述的技术局限于网页标识或其他类似的可通过网络访问的内容的集合,更没有将所描述的技术仅限于在web浏览器的上下文内部的这类显示。与此相反,所描述的技术同样适用于识别和呈现与来自任一实体集合的一个或多个实体相关联的服务,无论如何组合,无论是通过搜索还是其他方式,以及无论包含的是可通过网络访问的数据集合的标识还是其他形式。同样,所描述的技术同样适用于在任何用户界面上下文或应用中呈现此类相关联的服务。
以下的描述是在程序模块这类由计算设备运行的计算机可执行指令的一般上下文中进行的,但这并不是必需的。更具体地说,除非另有指示,否则本描述将会参考由一个或多个计算设备或外设执行的行为以及操作的符号表示。同样,应该理解的是,此类行为和操作有时被称为是由计算机运行的,其包含了处理单元对代表结构形式的数据的电子信号的操作。该操作会转换数据或者将其保持在存储器中的位置,以本领域技术人员很好理解的方式来重新配置或以其他方式改变计算设备或外设的操作。用于保持数据的数据结构是具有该数据的格式所定义的特定属性的物理位置。
通常,程序模块包括执行特定任务或是实施特定抽象数据类型的例程、程序、对象、组件、数据结构等等。此外,本领域技术人员将会了解,计算设备不必局限于常规的个人计算机,而是包括其他计算配置,这其中包括手持设备、多处理器***、基于微处理器的或可编程的消费类电子设备,网络PC、小型计算机、大型主机等等。同样,计算设备不必局限于独立计算设备,因为这些机制也可以在分布式计算环境中实现,此时任务是由通过通信网络相连的远端处理设备执行的。在分布式计算环境中,程序模块可以同时位于本地和远端的记忆存储设备中。
参考图1,所示出的是一个例示***100,其包括个人计算设备110、搜索计算设备140、服务通知计算设备120、以及服务供应商计算设备130,所有这些设备都被显示成经由因特网190可通信地相互耦合。如前所述,虽然这里的描述是在因特网和万维网的通用上下文中提供的,但是该上下文只是为了便于呈现这里描述的概念而被提供的,同样,关于因特网、万维网、网页、web链接等等的参考严格意义上都是例示性的,其并不是为了将所描述的机制局限于网际协议,例如传输控制协议(TCP)、网际协议(IP)、超文本传输协议(HTTP)或是其他任何因特网特有技术。如图1的***100所示,个人计算设备110可以运行能向个人计算设备110的用户显示在因特网190上检索到的信息的浏览器111。在一个实施例中,浏览器111可以用于在因特网190上搜索信息,例如通过将搜索项161传送至可托管搜索网站141的搜索计算设备140来进行搜索。搜索计算设备140可以用本领域技术人员熟知的方式来使用搜索数据库145,以便标识出对搜索项161进行响应的响应实体162。
通常,响应实体162将由搜索计算设备140以网页之类的可通过网络访问的数据集合的标识形式(其包含一个或多个搜索项161或者在其他方面被认为是相关的)提供给搜索项161。更具体地说,搜索网站141可以产生能被浏览器111访问并且可包含响应实体162的网页,由此,浏览器111可以随后将其显示给计算设备110的用户。通常,此类网页不但包含了诸如采用web链接的形式的响应实体162的标识,而且还包含了与响应实体162有关的信息,以使用户能够确定是否从该响应实体162获得附加信息。举例来说,除了web链接之外,作为响应实体162的标识的一部分,通常还会提供被标识网页的标题以及该网页的一小部分内容。
在很多情况中,呈现给用户的“实体”并非网页本身,而是该网页包含的东西。例如,可以为搜索电影的用户呈现可供该用户购买电影进行观看的网页的标识。在这种情况下,用户概念化的响应“实体”并不是网页本身,而是该网页包含的电影。在用户的印象中,网页只充当了可供用户通过被标识的网页来观看电影的渠道。因此,这里使用的术语“实体”指的是被用户概念化的事项或事项集合。对于能以web链接的形式呈现给用户的“实体”的示例包括:诸如图书或电影之类的音频/视频内容,电子设备之类的零售物品,诸如商店或餐馆之类的零售店,以及诸如web服务之类的线上业务。
在一个实施例中,能与响应实体162一起被提供给用户的一组信息可以是能被该用户访问并且能与一个或多个响应实体162关联的一个或多个服务的标识。举例来说,回到上文中用户搜索电影进行观看的示例,个人计算设备110的用户还可以是有线电视订户,由此,该用户订购的有线电视服务免费为该用户提供对于某些电影的点播访问,并且作为该用户的有线电视订阅包的一部分。在这样的示例中,提供了这些电影点播访问的用户有线电视订阅包可以是用户能拥有的“服务”。因此,在一个实施例中,除了为用户提供可供用户购买和观看其搜索的电影的网站的标识之外,还可以为用户提供如下通知:被搜索的电影可作为用户点播服务的一部分而被免费观看。
这里使用的术语“服务”指的是提供给作为个体会员资格、利益、协会或其他类似分组的一部分的所选择的指定个体群组的任何优点或信息。对于用户所属的服务来说,其示例包括:诸如企业折扣或团体折扣之类的折扣服务,诸如飞行常客计划或***忠诚计划之类的忠诚计划,诸如音频/视频购买或消费会员资格之类的功能性会员资格,以及诸如慈善和行业协会之类的共同利益服务。
如图1的***100所示,服务供应商计算设备130可以是能被服务供应商用来向服务通知计算设备120提供信息151的任何计算设备。特别地,为了让用户能够指示其可以使用的特定服务,以及为了让服务通知计算设备120能够将服务与特定实体相关联,服务供应商可以使用服务供应商计算设备130来将信息151提供给服务通知计算设备120。在一个实施例中,所提供的信息151可以包括服务的标识,将这样的服务与实体关联的操作,一个或多个关联实体的标识,或是这类服务适用的实体,以及能够供应与一个或多个实体有关的服务的更多信息的“登陆页”或其他数据集合。所提供的名称可以用来允许用户辨认如以下详细描述的服务,同样,该名称可以是该服务的俗称或是用以销售该服务的名称。将服务与实体关联的操作可以基于与实体相对的服务所提供的功能或好处。举例来说,再次回到以上视频点播供应服务的示例,相对于电影之类的实体来说,此类服务可提供的操作可以是“观看”操作。另举一例,基于诸如月租费来为用户提供无限制的音频内容访问的服务可以规定一个“收听”操作。作为又一示例,为用户提供购物常客点数或飞行常客英里数的忠诚服务可以规定“赚取点数”或“赚取英里数”操作,由此指示用户可以以某种方式来使用关联实体赚取英里数。同样,作为示例,为用户提供企业折扣的服务可以规定“获取折扣”操作。
在一个实施例中,用于标识服务与关联实体之间的关联性的操作可以是预定操作集合中的一个操作,例如以上提供的示例。在这样的实施例中,服务供应商可以在一个或多个预先定义的操作中进行选择,以便限定其服务如何与关联实体进行关联。本领域技术人员会认识到,此类实施例可以避免用户在不同服务供应商为概念相似的操作使用不同术语的时候产生困惑。然而,在另一个实施例中,用于标识服务与关联实体之间的关联性的操作可以由服务供应商来定义,并且不必局限于预先定义的操作集合,由此能够不受限制地动态添加新的服务类型。
除了提供服务名称和将该服务与一个或多个关联实体相关联的操作之外,服务供应商提供给服务通知计算设备120的信息151的其他方面还可以包括与服务关联的实体的标识。举例来说,回到上文中视频点播供应界面的示例,与此类服务关联的实体可以是当前可供点播观看的电影。在一个实施例中,此类实体可以通过简单列表来标识,例如当前可供点播观看的电影的列表。在另一个实施例中,此类实体可以通过参考动态更新列表来标识,该列表可以由服务供应商来维护,例如在服务供应商计算设备130上维护。
可被提供给服务通知计算设备120的信息151的另一个方面可以是数据集合标识,例如“登陆页”,如果用户希望得到与服务和相应实体的关联性有关的附加信息,那么可以将用户引导到所述“登陆页”。在一些情况中,登陆页面与初始标识实体的网页可以没有差别。例如,指向购买特定航空公司的机票的网页可被视为一种实体表示,属于该航空公司飞行常客俱乐部的用户可以通过该实体来赚取飞行常客英里数。因此,虽然“赚取英里数”操作可以将该实体关联于飞行常客会员服务,但是为使用户获取如何赚取英里数的附加信息而将其引导至的网页与指向购买特定航空公司的机票的网页可以是相同的网页,因为同一个网页可以同时包含与购买机票相关的信息以及与这种购买或后续飞行如何通过飞行常客会员服务来赚取英里数有关的信息。然而,在其他情况中,登陆页面可以不同于标识实体的网页或其他数据集合。回到以上关于视频点播观看服务的示例,通过该视频点播观看服务可用的电影形式的实体可以用只提供了与该电影相关的一般信息的网页来标识,作为示例,该一般信息可以是电影的制作年份,电影的主要演员,剧情简介以及其他类似信息。此类网页未必能使用户观看该电影,相反,该网页只是一个普通引用资源,就此而论,其可被视为电影实体的概念性表示。取而代之的是,对于通过视频点播观看服务观看该电影的用户来说,有必要将该用户引导到不同的网页或其他数据集合。在这样的示例中,该实体可以用指向某个网页、也就是提供了与电影相关的一般信息的网页的指针来标识,而可将该实体关联于特定服务的“观看”操作则可以将用户引导到另一个不同网页,也就是可供用户访问视频点播观看服务以观看该电影的网页。
虽然以上描述是在网页的上下文中提供的,但是如果用户希望得到与服务有关的进一步信息,那么该用户可被导向的数据集合可以是一个应用,其中包括移动应用、独立应用以及基于脚本的应用。举例来说,使用蜂窝电话计算设备之类的移动计算设备的用户可以拥有一个应用,该应用由服务供应商提供,并且提供了与服务相关的附加信息或者能使用户访问该服务。在这样的示例中,服务供应商可以将该应用指定成用户将被导向的信息集合。举例来说,如果该服务是视频点播服务,那么只能通过专用的视频观看应用程序来访问该服务。在这样的示例中,如果实体是可供用户借助其订购的视频点播服务观看的电影,并且由此是用户特定服务,那么,可与该实体一起呈现的关于用户特定服务的通知会将该用户导向专用应用,并且在一个示例中,该通知会促使该专用应用开始观看该特定电影。
在一个实施例中,搜索或索引服务可以用于收集相关信息,而不是要求服务供应商具体列举与该服务供应商提供的服务相关联的所有实体。特别地,标引了不同数据集合的搜索引擎可能已经收集了标识与特定服务关联的实体所需要的相关信息。例如,用于特定餐馆的网站可包括的网页包含与该餐馆参与的各种餐饮折扣服务有关的信息。因此,如果服务供应商要标识这种餐饮折扣服务,那么搜索引擎构造的索引可能已经包含了用于指示特定实体(也就是网站包含了参与此类活动的标记的餐馆)与这种餐饮折扣服务相关联的信息。这样一来,在一个实施例中,服务供应商无需提供除了服务标识之外的任何信息来使服务通知计算设备120标识与该服务关联的那些实体,而不是提供关于关联实体的显性或间接说明。
本领域技术人员将会认识到,对搜索引擎收集的数据的这种使用可能会要求为该数据编制语义索引。举例来说,可能存在多种不同的方式供零售店之类的实体可以表述其与特定服务的关联性,其示例包括使用不同的术语,使用不同的数据结构,例如弹出式窗口或条幅等等。由此,在一个实施例中,可为搜索引擎收集的数据编制语义索引,从而能够自动确定哪些实体与哪些服务相关联。
服务通知计算设备120可以将信息151这类由不同服务供应商提供的信息保持在服务数据库125中。在一个实施例中,服务通知计算设备120可以托管一个服务通知网站121,通过该网站,诸如个人计算设备110的用户之类的用户可以使用浏览器111来将服务数据库125中存储的一个或多个服务标识成是可被用户访问、用户作为会员、可供用户获取其收益或是在其他方面关联的用户特定服务。然后,服务通知计算设备120可以用该信息向用户标识具有相关联的用户特定服务的实体,例如在向用户呈现实体列表的时候。
作为示例,回到图1的***100所示的具体示例,个人计算设备110的用户可以使用浏览器111来访问搜索计算设备140托管的搜索网站141。响应于用户提供的搜索项161,搜索网站141可以返回响应实体162的列表。如前所述,此类响应实体162通常是以包含了被认为与搜索项161有关的信息的网页的标识的形式提供的。在一个实施例中,此类响应实体162的列表可以借助通信181提供给服务通知计算设备120。作为响应,服务通知计算设备120可以识别被个人计算设备110的用户标识成用户特定服务的任一服务是否关联于借助通信181接收的多个实体中的任一实体,并且可以借助通信182来将这种相关联的用户特定服务返回给浏览器111。由此,浏览器111不但会显示响应实体162,而且还会向用户告知任何相关联的用户特定服务。
在一个实施例、例如图1的例示***100所示的实施例中,服务通知计算设备120可以不同于搜索计算设备140,例如其可以由与提供搜索网站141的实体无关的实体维护。在这样的实施例中,为了利用服务通知计算设备120提供的信息,在产生带有响应实体162的网页时,搜索网站141还可以在该网页内部包含促使浏览器111将响应实体162提供给服务通知计算设备120以及从中接收相关联的用户特定服务182的指令。举例来说,包含响应实体162的列表的网页可以包括对于服务通知计算设备120托管的脚本的调用。浏览器111可以依照搜索网站141产生并且包含了响应实体162的网页的指示来调用该脚本。一旦被调用,则该脚本可以收集响应实体162,并且可以如通信181示出的那样将其提供给服务通知计算设备120。此外,在这样的实施例中,搜索网站141产生的网页可以保留用于显示服务通知计算设备120可返回的相关联的用户特定服务182的空间。在图2中示出了一个例示用户界面,并且在下文中会对其进行更详细的描述。
在另一个实施例中,服务通知计算设备120和搜索计算设备140可以由同一实体维护,并且实际可以是同一个计算设备的一部分。在这样的实施例中,在运行于独立个人计算设备110的浏览器111与服务通知计算设备120之间不必进行通信181和182,相反,所述通信可以在搜索计算设备140与服务通知计算设备120之间进行,并且如所示,所述通信可以是一起运行的,由此,搜索计算设备140向用户供应的响应实体162可以同时包括响应实体162以及相关联的用户特定服务182。在该实施例的一个变体中,在对响应实体162重新进行排序或是以其他方式修改提供给用户的响应实体162的过程中,搜索计算设备140可以使用来自服务通知计算设备120的信息,例如相关联的用户特定服务182。
此外,虽然图1的***100所示的例示实施例是在因特网搜索功能上下文的内部,但是这里描述的机制并不局限于此。取而代之的是,在其他上下文中同样可以为了呈现实体而产生这些操作,其示例包括社交媒体上下文,主页上下文,移动数据上下文等等。
转到图2,该图显示的是一个例示用户界面200,其示出了一种可以向用户告知与呈现给用户的实体相关联的用户特定服务的方法。同样,出于描述和例证目的,该例示用户界面200是在因特网搜索上下文中显示的,然而如前所述,所描述的机制和显示并不局限于此。图2的例示用户界面200被显示成包含了一个能被呈现例示用户界面200的应用呈现的工具栏201,以及一个同样能被该应用呈现的地址栏202,并且其可以提供用于标识正被显示的数据集合的信息。在图2的特定例示界面200中显示了一个网页210,该网页具有一个可供用户输入搜索项的输入机制211。更进一步,该网页210还可以包括搜索结果220,230,250,260,280以及290。
本领域的技术人员将会认识到,搜索结果通常包括被认为对用户搜索具有响应性的数据集合的标题或其他标识符,诸如对被标识网页的链接之类的数据集合标识,以及通常被称为“片段”并且通常是文本的用于为用户提供上下文的数据的选定部分。由此,在图2的例示用户界面200中,搜索结果220可以包括该搜索结果所标识的网页或其他数据集合的标题221,指向该数据集合的链接222或其他指针,已及可为用户提供附加上下文的片段223,例如来自具有链接222的网页、可示出此类网页如何对用户搜索项具有响应性的文本数据摘录。
如前所述,搜索结果220、230、250、260、280以及290中的至少一些搜索结果可被概念化成“实体”,其示例包括用于标识以下各项的搜索结果:电影,歌曲,可供购买的特定商品,诸如商店或餐馆之类的特定零售店,诸如航空公司或汽车租赁公司之类的特定商品或服务供应商,以及其他类似实体。一个或多个搜索结果220、230、250、260、280以及290所标识的一些实体可以关联于供用户接收搜索结果的服务,该服务中用户可作为其会员,用户获得其收益,或者在其他方面与之关联。因此,在一个实施例中,此类用户可被告知与搜索结果标识的实体中相关实体相关联且特定于该用户的任何服务。举例来说,搜索结果230可以标识出可经常为诸如特定公司雇员或是特定餐饮或购物俱乐部会员之类的特定个体提供折扣的实体,例如零售店。如果接收该搜索结果的用户是此类公司雇员,或者是此类餐饮俱乐部会员,那么可以将该服务连同搜索结果230一起告知该用户。作为示例,除了与上文中参考搜索结果220标识的元素类似的元素之外,搜索结果230还可以包括可列出“获取折扣”操作232的操作指示符231。
在一个实施例中,“获取折扣”操作232可以充当弹出式窗口240或其他类似用户界面元素的触发器,当用户对“获取折扣”操作232执行操作、例如将光标悬停于“获取折扣”操作232之上时,该弹出式窗口或其他类似用户界面元素可以显示更进一步的信息。弹出式窗口240可以包括与服务有关的附加信息,所述服务与通过搜索结果230标识以及通过“获取折扣”操作232与之关联的实体相关联。例如,弹出式窗口240可以包括可标识与搜索结果230标识的实体相关联的特定服务的标识区域241,例如企业折扣服务或是餐饮俱乐部,用户可以通过该服务而在搜索结果230标识的零售店里得到折扣。该弹出式窗口240还可以包括能够提供附加信息的附加信息区域242,例如搜索结果230标识的零售店在本示例中提供给企业折扣服务、用餐或购物俱乐部或是其他类似服务的会员的折扣数额。
作为另一示例,举例来说,搜索结果260可以标识与音频关联的实体。例如,搜索结果260可以标识歌曲或是具有有声读物版本的图书。此外,对于被呈现了搜索结果的用户来说,其可以是某项服务的会员,并且该用户可以通过该服务来消费该音频,作为示例,该服务可以是通过月租费支持的线上音频流服务,可供用户接收有声读物的阅读常客俱乐部,或是其他类似的服务。在这样的示例中,可以与搜索结果260一起列出的是操作261中的“收听”操作262。该“收听”操作262能使用户使用其已经签约、作为会员或是在其他方面获得收益的服务来收听搜索结果260标识的音频实体。因此,用户作用于“收听”操作262可触发的弹出式窗口270可以包括可在其中标识该服务的标识区域271,可向用户提供附加信息的信息区域272,以及可选地包括可供用户无需手动访问诸如别的网页之类的别的线上位置即可“联机”消费音频内容的机制或控制器273。
除了上文中列出的示例之外,可与实体关联的服务还可以包括为用户提供用于访问用户所关心的信息的服务。举例来说,可以引导到共同利益服务,以获取与其他网页的开发人员可公开的应用编程接口有关的特定信息或信息方面。由此,举例来说,如搜索结果290所示,相关联的操作291可以包括“获取API”操作292,其能使用户获得由搜索结果290所标识的网页的开发人员可公开的应用编程接口。同样,可以引导到其他共同利益服务以获得来自与这些利益相关的实体的信息。
在一些情况中,举例来说,搜索结果标识的网页有可能会与一个或多个相关联的操作指向的网页相似或等价。作为示例,回到以上搜索结果230是零售店实体的网页的示例,例如通过包含用于指示零售店向特定公司雇员提供折扣的声明,该网页自身可包含与折扣服务相关的信息。在这样的示例中,搜索结果230标识的网页可与用户在选择“获取折扣”操作232的情况下被引导至的网页是相同的。在一个实施例中,用户既可以通过点击“获取折扣”操作232来选择该操作,或者仅仅在悬停时用其他方式将类似的用户界面操作引导至“获取折扣”操作232,或者用其他方式将类似的用户界面操作引导至“获取折扣”操作232可导致呈现弹出式窗口240。
通过对以上示例略做修改,搜索结果230标识的网页可以不必包含与相关联的折扣服务有关的任何信息。因此,选择搜索结果230会将用户引导到如下网页:该网页不会提供与该网页代表的实体以及一个或多个用户特定服务之间的关联性有关的更多信息。取而代之的是,在这个经过修改的示例中,作为示例,与相关联的折扣服务有关的附加信息可以是不同网页的一部分,其可以由该服务维护,由搜索结果230标识的零售店维护,或用其他方式维护。在这种情况下,选择“获取折扣”操作232会将用户引导到能够标识搜索结果230所标识的零售实体的另一个这样的网页,但如今则是使用附加信息来指示例如特定公司雇员的折扣的可用性。作为另一个示例,此类信息可以不是完全独立的网页,相反,该信息可以是一个横幅或其他类似的用户界面元素,其只有在向搜索结果230标识的网页告知该用户是特定服务会员、例如特定公司雇员的时候才会被所述网页呈现。
如前所述,还可能存在如下情况:搜索结果标识的网页有可能不同于用户在选择相关联的用户特定服务时被导向的网页或其他信息集合。举例来说,搜索结果260可能会将用户导向到可供用户例如通过有名的线上图书零售商来购买特定图书的网页。然而,该网页可能未必关联于可供用户获取该图书的有声读物版本的音频的服务。实际上,线上图书零售商可能甚至没有提供这种服务。取而代之的是,如前所述,虽然搜索结果260标识了特定线上图书零售商的特定网页,但是用户可以将搜索结果260概念化成特定实体的标识,作为示例,其在本示例中是可借助所标识的网页购买的图书。因此,与关联于搜索结果260所标识的特定网页相反,为用户提供有声读物版本的用户特定服务可以与搜索结果260代表的实体相关联。此外,与从线上图书零售商的网站供应内容相反,在本示例中,可供用户通过控制器273联机播放的音频内容可以是从与用户特定服务关联的一个或多个服务器计算设备提供的。
虽然在图2的例示用户界面200中没有具体示出,但是一个实体可以与多个用户特定服务相关联。举例来说,搜索结果230标识的实体可以与例如两个不同的用户特定服务相关联,并且这两个用户特定服务都在相关联的实体为用户提供了折扣。在这种情况下,在一个实施例中,所呈现的仍旧是单个“获取折扣”操作232,但在触发该操作时,弹出式窗口240可以提供与所有这两个用户特定服务有关的信息。由此,举例来说,在单个弹出式窗口240内部可以呈现两个不同的标识区域241以及两个不同的附加信息区域242。举例来说,在一个实施例中,在弹出式窗口240中呈现的此类服务可以基于多种因素来进行排序,作为示例,该因素包括:哪一个服务提供更大的折扣,哪一个服务具有更多表明与之关联的用户,用户先前在类似的上下文或类似的实体中选择了哪一个服务,以及其他类似的因素。
作为另一个示例,单个实体可以与多个用户特定服务相关联,并且这些用户特定服务在提供给用户的优点方面存在差异。举例来说,回到先前的示例,可将图书标识成是由特定线上零售商进行销售的搜索结果260还可以将其与在所述线上零售商处为用户提供折扣的用户特定服务相关联。在这样的示例中,如所示,作为搜索结果260的一部分所列出的操作261不但可以包括“收听”操作262,而且还可以包括“获取折扣”操作,例如“获取折扣”操作232,该操作可以与“收听”操作262一起被列出,例如将其列在“收听”操作262的左侧或右侧。
例示用户界面200只是一种可以向用户呈现与呈现给该用户的实体相关联的用户特定服务的机制。在另一个实施例中,相关联的用户特定服务可被独立列出,该用户特定服务与实体是分离或分开呈现的,而不是通过在呈现实体的附近列举的操作来呈现相关联的用户特定服务的标记。举例来说,相关联的用户特定服务可被呈现在其自身的视图或网页中。作为替换,可以为用户呈现以多种机制之一来触发其呈现的选项,由此选择最易于被该特定用户消费的用户界面。
转到图3,在该图中显示了一个流程图300,该流程图示出的是能将用户特定服务与众多实体中的一个或多个实体相关联的例示步骤序列。首先,在步骤310中可获取实体列表以及特定用户的标识,其中该标识先前已被选择并且指示了以该用户为会员、可供用户获得收益或者在其他方面与用户关联的一个或多个服务。如前所述,在一个实施例中,用户可被提供一种机制,例如网站,通过该机制,可以向用户标识各种服务,并且用户可以指示该用户是哪些服务的会员,可以从哪些服务获得收益,或是与哪些服务在其他方面相关联。此类服务的呈现可以基于接收自服务供应商的信息,例如上文中详细描述的信息。随后,在用户标识其自身时,其先前选择的用户特定服务可被确定,并且可以与所获取的实体、例如在步骤310中获取的实体相比较。特别地,在步骤320,基于步骤310中接收的用户标识,可以确定先前选择的用户特定服务。
随后,在步骤330,从步骤310接收的实体中可以选择一个初始实体,并且在步骤340中可以确定用户是否标识了与该实体相关联的服务。如前所述,服务供应商可以标识与该服务相关联的实体,例如,包含如可由服务供应商维护的此类实体的静态列表或动态更新列表。在另一个实施例中,服务供应商可以标识与此类服务相关联的实体的类别。例如,服务供应商可以指示其为最近六个月发行的所有电影都提供了点播观看。因此,在该示例中,在步骤340,在确定任一用户特定服务是否与所选择的实体相关联的过程中,可以先判定哪些电影是在最近六个月发行的。在做出该判定的过程中可以参考“权威”来源,例如提供了适当类别信息来源的知名或信息交易量高的商店。在一个实施例中,在标识实体类别的过程中,服务供应商可以标识该服务供应商在确定哪些实体与服务供应商提供的服务相关联的过程中希望使用的一个或多个此类权威来源。在另一个实施例中,此类权威来源可以动态地由实体服务相关机制来确定。
一旦确定了与服务相关联的实体,那么无论参考其静态或动态列表,还是参考其被标识服务类别的权威来源,随后的确定可以是在步骤340确定与该服务关联的任一实体是否与例如在步骤330中已选择的实体等价。在步骤340,如果确定没有一个用户特定服务与所选择的实体相关联,那么该处理可前进至步骤350。相反,在步骤340,如果确定至少一个用户特定服务与所选择的实体相关联,那么该处理可以前进至步骤350。
在一个实施例中,在步骤350中可以提供一个或多个服务的标识以及相关联的用户界面信息,以便与相关联的实体一起呈现。举例来说,可以提供包含被标识的操作的信息以及在弹出式窗口内部呈现的信息,由此可以将此类操作连同实体一起呈现给用户,例如以在图2中示出并在上文中被详细描述的方式来呈现。在另一个实施例中,作为步骤350的一部分,首先可以确定是否应该将相关联的服务告知用户。更具体地说,如果用户收到关联服务的过多通知,那么有可能发生“用户疲劳”。举个例子,搜索特定图书的用户很可能收到一系列的搜索结果,这其中的每一个搜索结果都标识了一个不同的网页,这些网页来自不同的图书零售商,并且列出的是同一本书,也就是该用户搜索的书。在这样的示例中,用户不会认为将“收听”操作与每一个单独的搜索结果一起呈现是有益的。取而代之的是,在一个实施例中,作为步骤350的一部分,可以确定先前是否处理过当前正被处理的实体并且是否发现其具有相关联的用户特定服务。如果先前已经将该实体作为在步骤310中接收的同一组实体的一部分进行过处理,那么可以确定是否再次提供与相关联的服务有关的信息。作为替换,可以使用正被处理的当前实体而不是在先实体来确定是否提供与相关联的服务有关的信息。举个例子,对于用户来说,与使用标识同一图书的搜索结果来呈现“收听”操作相反,可能更为理想的是用标识了来自知名的线上图书零售商的特定图书的搜索结果来呈现“收听”操作,排除那些不太知名的图书零售来源。由此,知名的线上图书零售商可以充当诸如图书之类的特定实体类型的“权威”来源。在这样的实施例中,如果步骤310中接收的实体包括同一实体的多个版本,例如标识了由不同的线上图书零售商提供用来销售的同一本书的多个网页,那么在步骤350,与该实体一起呈现的相关联的用户特定服务的提供可以只针对权威来源所标识的实体发生。因此,这里使用的术语“权威来源”指的是被服务供应商标识成可用以确定服务供应商提供的服务是否与实体关联的参考的来源,或是至少与提供类似信息、资源或功能的其他任何来源一样有名的来源。此外,在先前描述的实施例中,服务供应商可以保持与服务供应商提供的服务相关联的实体的动态更新列表,为了与这些实施例相区分,这里使用的术语“权威来源”指的是除了服务供应商自身之外的与服务供应商无关的来源。
回到图3的例示流程图300,在步骤350,一旦提供了与实体相关联的一个或多个用户特定服务来与该实体一起呈现,或者作为替换,在步骤340,如果确定没有用户特定服务与实体相关联,那么该处理可以前进至步骤360,此时可以确定是否还要处理在步骤310接收的实体中的附加实体。如果存在这种附加实体,那么该处理可以前进至步骤370,在该步骤中可以选择下一个实体。然后,该处理可以循环返回,以便执行如在上文中详细描述的步骤340和350。然而,如果在步骤360中确定没有要处理的附加接收实体,那么相关处理可以在步骤390结束。
在一个实施例中,如上所述,用于向用户通告与呈现给用户的一个或多个实体相关联的用户特定服务的机制既可以是将实体呈现给用户的同一机制的一部分,也可以与之整合。在这样的实施例中,作为可选步骤,在结束于步骤390之前,该处理可以前进至步骤380,并且可以确定是否应该基于所标识的与那些实体相关联的用户特定服务来对呈现给用户的实体重新进行排序。举例来说,与用户特定服务相关联的实体可以在不与用户特定服务相关联的实体之前呈现。在图3的流程图300中,步骤380是用虚线示出的,以便指示它是一个可选步骤。
转到图4,该图示出了可以执行如上所述的一些或所有机制和操作的例示计算设备400,并且该设备可以是如上所述的任一计算设备,其中包括但不局限于个人计算设备110、服务通知计算设备120、搜索计算设备140或服务供应商计算设备130。例示的计算设备400可以包括但不限于一个或多个中央处理单元(CPU)420,***存储器430,以及将包括***存储器在内的各种***组件耦合至处理单元420的***总线421。***总线421可以是若干种总线结构中的任何一种,这其中包括存储器总线或存储器控制器,***总线,以及使用了多种总线架构中的任一总线架构的本地总线。作为示例而不是限制,此类架构包括周边组件互连(PCI)总线及其各种高速版本,工业标准架构(ISA)总线以及增强型ISA(EISA)总线,微通道架构(MCA)总线,以及视频电子标准协会(VESA)总线。作为选择,该计算设备400可以包括图形硬件,这其中包括但不局限于图形硬件接口490以及显示设备491。
计算设备400通常还包括计算机可读媒体,这其中可以包括能被计算设备400访问的任何可用媒体,并且该媒体同时包含了易失和非易失媒体以及可移除和不可移除媒体。作为示例而不是限制,计算机可读媒体可以包括计算机存储媒体和通信媒体。计算机存储媒体包括用任何方法或技术实施的信息存储媒体,所述信息例如是计算机可读指令,数据结构,程序模块或其他数据。计算机存储媒体包括但不局限于RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字多用途碟片(DVD)或其他光盘存储器、磁带盒、磁带、磁盘存储器或其他磁存储设备、或是可用于存储预期信息并能被计算设备400访问的其他任何介质。通信媒体通常会将计算机可读指令、数据结构、程序模块或其他数据包含在诸如载波或其他传输机制之类的调制数据信号中,并且可以包括任何信息递送媒体。作为例证而不是限制,通信媒体包括有线媒体,例如有线网络或直接线路连接,以及无线媒体,例如声学、RF、红外及其他无线媒体。此外,上述任意组合应同样包含在计算机可读媒体的范围以内。
***内存430包括易失和/或非易失存储器形式的计算机存储媒体,例如只读存储器(ROM)431和随机存取存储器(RAM)432。通常,在ROM 431中存储了基本输入/输出***433(BIOS),该***包含了有助于在诸如启动过程中在计算设备400内部的部件之间传送信息的基本例程。RAM 432通常包含了可被处理单元420即时访问和/或立刻操作的数据和/或程序模块。作为示例而不是限制,图2示出了操作***434、其他的程序模块435以及程序数据436。
计算设备400还可以包括其他的可移除/不可移除、易失/非易失计算机存储媒体。仅作为示例,图2示出了读取或写入不可移除的非易失磁媒体的硬盘驱动器441。能与例示计算设备一起使用的其他可移除/不可移除的易失/非易失计算机存储媒体包括但不局限于盒式磁带、闪存卡、数字多用途碟片、数字视频带、固态RAM、固态ROM等等。硬盘驱动器441通常通过诸如接口440之类的不可移除内存接口连接到***总线421。
在上文中论述并在图2中示出的驱动器以及与之关联的计算机存储媒体提供了针对计算机可读指令、数据结构、程序模块以及用于计算设备400的其他数据的存储。在图2中,举例来说,硬盘驱动器441被图示成存储操作***444、其他程序模块445以及程序数据446。应该指出的是,这些组件与操作***434、其他程序模块435以及程序数据436既可以是相同的,也可以是不同的。在这里为操作***444、其他程序模块445以及程序数据446给出了不同的编号,由此说明其至少是不同的拷贝。
与以下描述的相关联的是,计算设备400可以使用与一个或多个远程计算机的逻辑连接在联网环境中工作。为了简化图示并与图4的例示***99相一致,在图2中将计算设备400显示成与因特网90相连。然而,计算设备400并不局限于任何特定的网络或联网协议。图2所述的逻辑连接是通用网络连接471,该连接可以是局域网(LAN),广域网(WAN)或其他网络。计算设备400通过网络接口或适配器470连接到通用网络连接471,并且该网络接口或适配器又与***总线421相连。在联网环境中,相对于计算设备400或是其某些部分或周边所描述的程序模块可被保存在通过通用网络连接471可通信地耦合到计算设备400的一个或多个其他计算设备的存储器中。应该预料到的是,所显示的网络连接是例示性的,其他那些用于在计算设备之间建立通信链路的手段也是可用的。
从以上描述中可以看出,与呈现给用户的实体相关联的用户特定服务也可以被呈现给用户以允许用户更有效地利用此类服务。鉴于这里描述的主题的众多可能的变化,我们主张可落入后续权利要求及其等价物的范围以内的所有这类实施例都作为我们的发明。