Users of computing devices increasingly rely upon search functionality to find items of interest to such users. The utilization of search functionality is particularly common in the context of networked computing devices where the sought for information can be located on any one of a myriad of computing devices. The most easily recognizable example of such reliance on search functionality is the popularity of search websites that offer users the ability to search content available via the ubiquitous Internet and the equally ubiquitous World Wide Web. Search functionality, however, is equally useful in other networked environments, including closed networks, such as would be found in corporate or academic environments.
Typically, the providers of search functionality seek to provide users with identifications of information that is most responsive to the user's search query. Consequently, certain personal information, such as a user's location, can be utilized to provide results that are more useful to the user. For example, a user looking to purchase a specific item can receive search results identifying establishments that sell such an item and that are physically proximate to the user's current location. Such results are likely more useful to such a user then results that identified establishments irrespective of their physical proximity to the user.
But, while the utilization of personal information can provide search results that are tailored to a given user, the presentation of such search results is performed in a pre-defined, unvarying manner, irrespective of which user they are being presented to. In particular, search results are typically presented to users in the form of an identifier of the information found to be responsive, a pointer to such information, such as a location for which such information can be retrieved more fully, and, optionally, some small portion of such responsive information to enable the user to more accurately gauge whether the user desires to obtain the remainder of such responsive information. While the specific information that is found to be responsive can vary depending on a user's personal information, the presentation of such responsive information does not.
In one embodiment, a user can identify specific services with which the user is associated, including, for example, a user's memberships, interests, benefits, and the like. Subsequently, search results, or other identifications of entities, can be modified to include cues to the user that such entities are associated with the user-specific services that the user identified.
In another embodiment, aspects of the specific services with which the user is associated can be presented in-line, or within the same interface context, with the entities that are being presented to the user.
In a further embodiment, service providers, such as the providers of memberships, common interest associations, providers of benefits, and the like, can generate information about such services to enable a user to identify those services with which they are associated, and to subsequently enable automated mechanisms to correlate those services with entities that are being presented to the user. The provided information about such services can comprise a service name, and action that can correlate the service to an entity being presented to the user, and identification of entities with which the service is correlated, and a “landing page” to which the user can be directed for further information.
In a still further embodiment, the correlation between entities and user-specific services can be performed as part of the presentation of such entities to a user, or can be performed independently thereof, such as by a third-party whose mechanisms can be referenced by a service provider, or by a search or indexing service whose functionality can be leveraged by the service provider.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
Additional features and advantages will be made apparent from the following detailed description that proceeds with reference to the accompanying drawings.
The following detailed description may be best understood when taken in conjunction with the accompanying drawings, of which:
The following description relates to the identification and presentation of user-specific services that are associated with entities that are being presented to the user. The user-presented entities can be in the form of search results, or other presentations of entities, which can include identifications of published works, retail establishments, online presences, and other entities. Initially, providers of services, such as discount associations, functional service providers, other membership organizations, common interest groups and the like, can provide information about such services, including a name of the service, action that can correlate the service to an entity being presented to the user, an identification of entities with which the service is correlated, and further information to which the user can be directed. Subsequently, a user can identify those services to which they have a connection, such as services to which the user has a membership or shares a common interest. Collections of entities can be reviewed to determine whether any entities are associated with services that the user has identified as having a connection thereto and those entities having such an association can be presented with indicia of such an association.
The techniques described herein focus on the presentation of Internet search results via a browser, such as the ubiquitous “web browser.” However, such descriptions are not meant to suggest a limitation of the described techniques to only search results, nor to identifications of web pages or other like collections of network-accessible content, nor to only to the display of such within the context of a web browser. To the contrary, the described techniques are equally applicable to identify and present services associated with one or more entities from among any collection of entities, howsoever assembled, whether through searching or otherwise, and whether comprising identifications of collections of data that are network-accessible or otherwise. Similarly, the described techniques are equally applicable to the presentation of such associated services in any user interface context or application.
Although not required, the description below will be in the general context of computer-executable instructions, such as program modules, being executed by a computing device. More specifically, the description will reference acts and symbolic representations of operations that are performed by one or more computing devices or peripherals, unless indicated otherwise. As such, it will be understood that such acts and operations, which are at times referred to as being computer-executed, include the manipulation by a processing unit of electrical signals representing data in a structured form. This manipulation transforms the data or maintains it at locations in memory, which reconfigures or otherwise alters the operation of the computing device or peripherals in a manner well understood by those skilled in the art. The data structures where data is maintained are physical locations that have particular properties defined by the format of the data.
Generally, program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the computing devices need not be limited to conventional personal computers, and include other computing configurations, including hand-held devices, multi-processor systems, microprocessor based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Similarly, the computing devices need not be limited to stand-alone computing devices, as the mechanisms may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
With reference to
Typically, the responsive entities 162 will be provided in the form of identifications of collections of network-accessible data, such as webpages, that comprise one or more of the search terms 161, or are otherwise deemed to be relevant, by the search computing device 140, to the search terms 161. More specifically, the search website 141 can generate a webpage, which can be accessible by the browser 111, and which can comprise the responsive entities 162, such that the browser 111 can then display them to the user of the computing device 110. Typically, such a webpage comprises not only an identification of the responsive entities 162, such as in the form of a web link, but also comprises information about the responsive entities 162 to enable the user to determine whether or not to obtain additional information from the responsive entities 162. For example, in addition to a web link, a title of the identified webpage, and a small portion of the content of such a webpage are also often provided as part of the identification of the responsive entities 162.
In many instances, the “entity” that is presented to the user is not the webpage itself, but rather the thing embodied by the webpage. For example, a user searching for a movie can be presented with an identification of a webpage at which the user can purchase the movie for viewing. In such an instance, as conceptualized by the user, the responsive “entity” is not the webpage itself, but rather the movie that is embodied by the webpage. The webpage only serves, in the user's mind, as a conduit through which the user can view the movie through the identified webpage. Consequently, as utilized herein, the term “entity” means an item or collection of items as conceptualized by the user. Examples of “entities” that can be presented to the user in the form of web links include audio/visual content, such as books or movies, retail objects, such as electronic devices, retail establishments, such as stores or restaurants, and online presences, such as Web services.
In one embodiment, one set of information that can be provided to a user along with the responsive entities 162 can be an identification of one or more services that such a user may have access to which can be associated with one or more of the responsive entities 162. For example, returning to the above example of a user searching for a movie to watch, the user of the personal computing device 110 may also be a cable television subscriber such that the cable television service to which the user subscribes provides the user with access to certain movies on-demand at no charge, and is part of that user's cable television subscription package. In such an example, the user's cable television subscription package, which provides access to these on-demand movies, can be a “service” that the user can have. Thus, in one embodiment, in addition to providing the user with an identification of a website through which the user can purchase and watch the movie that the user searched for, the user can also be provided with a notification that the searched-for movie can be viewed at no charge as part of the user's on-demand service.
As utilized herein, the term “service” means any advantage or information that is provided to a select, defined group of individuals as part of those individuals' membership, interest, association, or other like grouping. Examples of “services” that a user can be a part of include discount services, such as corporate discounts or group discounts, loyalty programs, such as frequent flyer programs or credit card loyalty programs, functional memberships, such as audio/video purchasing or consumption memberships, and common-interest services, such as charities and professional associations.
As illustrated in the system 100 of
In one embodiment, the action that identifies the correlation between the service and an associated entity can be one of a predefined set of actions, such as the above provided examples. In such an embodiment, a service provider could select from among one or more of the predefined actions to define how their service correlates with associated entities. As will be recognized by those skilled in the art, such an embodiment can avoid user confusion that could arise when different service providers utilized differing terminology for conceptually similar actions. In another embodiment, however, the action that identifies the correlation between the service and an associated entity can be defined by the service provider and need not be limited to a predefined set of actions, thereby enabling new types of services to be dynamically added without limitation.
In addition to providing a service name and an action correlating such a service to one or more associated entities, other aspects of the information 151 provided to the services notification computing device 120 by a service provider can include an identification of the entities to which a service is associated. For example, returning to the above example of an on-demand video provision surface, the entities with which such services are associated can be the movies that are currently available for on-demand viewing. In one embodiment, such entities can be identified through a simple listing such as, for example, a listing of the movies that are currently available for on-demand viewing. In another embodiment, such entities can be identified by referencing a dynamically updated list that can be maintained by the service provider, such as at the service provider computing device 130.
Another aspect of the information 151 that can be provided to the services notification computing device 120 can be an identification of a collection of data such as a “landing page” to which a user can be directed should they desire additional information regarding the service's association with a corresponding entity. In some instances, the landing page may be no different than the webpage identifying the entity in the first place. For example, a webpage directed to the purchase of airline tickets at a specific airline can be considered a representation of an entity through which a user belonging to that airline's frequent flyer club could earn frequent flyer miles. Consequently, while an “earn miles” action may correlate such an entity to the frequent flyer membership service, the webpage to which the user would be directed for additional information about how to earn miles can be the same webpage as the webpage directed to the purchase of airline tickets at that specific airline since the same webpage can comprise both information regarding the purchase of airline tickets and information regarding how such a purchase, or subsequent flying, can earn miles through their frequent flyer membership service. In other instances, however, the landing page can be different than the webpage, or other collection of data, that identifies an entity. Returning to the above example of an on-demand video viewing service, an entity, in the form of a movie available through such an on-demand video viewing service, can be identified by a webpage that merely provides generic information about such a movie such as, for example, the year in which the movie was made, the principal actors in the movie, a plot synopsis, and other like information. Such a webpage would not necessarily enable a user to view such a movie, but rather is a commonly referenced resource that, as such, can be considered to be a conceptual representation of the movie entity. Instead, for the user to view such a movie through the on-demand video viewing service, the user would need to be directed to a different webpage, or other collection of data. In such an example, the entity can be identified with a pointer to one webpage, namely the webpage providing generic information about a movie, while the “watch” action that can correlate such an entity to a specific service can direct the user to another, different, webpage, namely the webpage through which the user could access the on-demand video viewing service to watch such a movie.
While the above description was provided within the context of webpages, the collection of data to which a user can be directed, should the user desire further information about the service, can be an application, including mobile applications, stand-alone applications, and script-based applications. For example, a user utilizing a mobile computing device, such as a cellular telephone computing device, may have an application that was provided by a service provider and provides additional information about the service, or enables the user to access the service. In such an example, the service provider can specify the application as the collection of information to which the user is to be directed. For example, if the service is an on-demand video service, such a service may only be accessible through dedicated video view application programs. In such an example, should an entity be a movie that the user can view via the on-demand video service to which the user subscribes, and which is, therefore, a user-specific service, the notification of such a user-specific service that can be presented together with such an entity can direct the user to the dedicated application and can, in one example, cause such a dedicated application to commence viewing of that particular movie.
In one embodiment, rather than requiring a service provider to specifically enumerate all of the entities to which the service provided by such a service provider is relevant, a search or indexing service can be leveraged to collect the relevant information. In particular, a search engine that has indexed various collections of data may already have collected the relevant information needed to identify entities that are associated with a specific service. For example, websites for specific restaurants can include webpages comprising information regarding the various dining discount services with which such restaurants participate. Thus, if a service provider were to identify such a dining discount service, the index built by the search engine can already comprise information that indicates that specific entities, namely the restaurants whose websites comprise indicia of their participation in such programs, are associated with such a dining discount service. In such a manner, rather than providing an explicit or indirect specification of related entities, a service provider, in one embodiment, need not provide anything further than an identification of the service to enable the services notification computing device 120 to identify those entities that are associated with the service.
As will be recognized by those skilled in the art, such a utilization of the data collected by a search engine can require semantical indexing of such data. For example, there may exist many different ways within which an entity, such as a retail establishment, can express their association with specific services, including, for example, utilizing differing terminology, utilizing differing data structures, such as pup-ups or banners, and the like. Thus, in one embodiment, the data collected by a search engine can be semantically indexed to enable an automated determination of which entities are associated with which services.
The information provided by various service providers, such as the information 151, can be retained by the service's notification computing device 120 in a services database 125. In one embodiment, the services notification computing device 120 can host a services notification website 121 through which a user, such as the user of the personal computing device 110 can utilize the browser 111 to identify one or more of the services stored in the services database 125 as being user-specific services to which the user has access, is a member of, can obtain the benefits of, or is otherwise associated with. With such information, services notification computing device 120 can then identify, to the user, entities having associated user-specific services, such as when the user is presented with a listing of entities.
For example, returning to the specific example illustrated in the system 100 of
In one embodiment, such as that illustrated by the exemplary system 100 of
In another embodiment, the services notification computing device 120 and the search computing device 140 can be maintained by the same entity and, indeed, can be part of the same computing device. In such an embodiment, the communications 181 and 182 need not be between the browser 111, executing on an independent personal computing device 110, and the services notification computing device 120, but rather can be between the search computing device 140 and the services notification computing device 120, which, as indicated, can be co-executed, such that the provision of the responsive entities 162 by the search computing device 140 to the user can comprise both the responsive entities 162 and the associated user-specific services 182. In a variation of such an embodiment, information from the services notification computing device 120, such as the associated user specific services 182, can be utilized by the search computing device 140 in re-ranking the responsive entities 162, or otherwise modifying the responsive entities 162 that are provided to the user.
Additionally, although the exemplary embodiment illustrated in the system 100 of
Turning to
As will be recognized by those skilled in the art, search results typically comprise a title or other identifier of the collection of data that was deemed to be responsive to the user search, and identification of that collection of data, such as a link to the identified webpage, and a selected portion of, typically textual, data to provide context for the user, often referred to as a “snippet”. Thus, in the exemplary user interface 200 of
As indicated previously, at least some of the search results 220, 230, 250, 260, 280 and 290 can be conceptualized as “entities” including, for example, search results that identify movies, songs, specific merchandise available for purchase, a specific retail establishment, such as a shop or a restaurant, a specific provider of goods or services, such as an airline, or a rental car company, and other like entities. Some of the entities identified by one or more of the search results 220, 230, 250, 260, 280 and 290 can be associated with services that the user receiving the search results can be a member of, receive the benefits of, or otherwise be associated with. Consequently, in one embodiment, such a user can be notified of any services, specific to that user, that are associated with the relevant ones of the entities identified by the search results. For example, search result 230 can identify an entity, such as a retail establishment, that can offer discounts to specific individuals such as, for example, employees of a particular corporation, or members of a particular dining or purchasing club. If the user receiving the search results is an employee at such a corporation, or is a member of such a dining club, then the user can be notified, together with the search result 230, of such a service. For example, the search result 230, in addition to having elements analogous to those identified above with reference to search result 220, can also comprise an actions indicator 231 that can list a “get discount” action 232.
In one embodiment, the “get discount” action 232 can act as a trigger for a pop-up window 240, or other like user interface element, that can display further information when the user performs an action on the “get discount” action 232 such as, for example, by hovering a cursor on the “get discount” action 232. The pop-up window 240 can comprise additional information about the service that is associated with the entity identified by the search result 230 and correlated therewith by the “get discount” action 232. For example, the pop-up window 240 can comprise an identification area 241 that can identify the specific service associated with the entity identified by the search result 230, such as, for example, the corporate discount service, or the dining club, through which the user can obtain a discount at the retail establishment identified by the search result 230. The pop up window 240 can also comprise an additional information area 242 that can provide additional information such as, for example, the amount of the discount that the retail establishment identified by the search result 230, in the present example, offers to members of the corporate discount service, dining or purchasing club, or other like service.
As another example, the search result 260 can, for example, identify an entity associated with audio. For example, the search result 260 can identify a song, or a book of which an audio book version exists. Additionally, the user to whom the search results are being presented can be a member of a service through which such audio can be consumed by the user such as, for example, an online audio streaming service that can be supported by monthly dues, a frequent reader club through which a user can receive audio books, or other like services. In such an example, among actions 261 that can be listed with the search result 260 can be a “listen” 262 action. Such a “listen” action 262 can enable the user to hear the audio entity that was identified by the search result 260 utilizing a service that the user has already signed up for, is a member of, or otherwise receives the benefits of. Consequently, the pop-up window 270 that can be triggered by user action on the “listen” action 262 can comprise identification area 271 in which such a service can be identified, information area 272 where the user can be provided with additional information and, optionally, a mechanism, or control, 273 by which the audio content can be consumed by the user “inline” and without needing to manually visit another online location, such as another webpage.
In addition to the above enumerated examples, services which can be associated with entities can include services that provide the user with access to information that is of interest to the user. For example, common interest services can be directed to obtaining particular information or aspects of information such as, for example, application program interfaces that can be exposed by developers of other webpages. Thus, for example, as illustrated by the search result 290, an associated action 291 can include a “get API” action 292 that can enable the user to obtain an application program interface that can be exposed by the developer of the webpage identified by the search result 290. Other common interest services can, likewise, be directed to the obtaining of information from entities that is relevant to those interests.
In some circumstances, the webpage identified by, for example, search results can be similar, or equivalent, to that which can be pointed to by one or more associated actions. For example, returning to the above example of the search result 230 being a webpage of a retail establishment entity, such a webpage can itself comprise information regarding a discount service such as, for example, by including a statement indicating that the retail establishment offers a discount to employees of specific corporations. In such an example, the webpage identified by the search result 230 can be the same webpage to which user is directed if the user selects the “get discount” action 232. In one embodiment, the user can select the “get discount” action 232 by clicking on it, or otherwise directing a similar user interface action to it, while merely hovering, or otherwise directing a similar user interface action, to the “get discount” action 232 can result in the presentation of the pop-up window 240.
Modifying the above example slightly, the webpage identified by the search result 230 may not necessarily comprise any information regarding an associated discount service. Consequently, selecting the search result 230 can direct the user to a webpage that provides no further information regarding an association between the entity represented by the webpage and one or more user-specific services. Instead, in such a modified example, additional information regarding, for example, an associated discount service can be part of a different webpage, which can be maintained by the service, by the retail establishment identified by the search result 230, or otherwise. In such an instance, selection of the “get discount” action 232 can direct the user to such another webpage where the retail entity identified with the search result 230 can be identified, but now with additional information indicating the availability of, for example, a discount for employees of a specific corporation. As yet another example, such information may not be a wholly separate webpage, but rather can be a banner, or other like user interface element, that can only be presented by the webpage identified by the search result 230 when such a page is notified that the user is a member of a particular service, such as an employee of a specific corporation.
As indicated previously, there may also exist circumstances where the webpage identified by the search result can differ from the webpage, or other collection of information, to which the user can be directed when selecting an associated user-specific service. For example, the search result 260 can direct the user to a webpage through which the user can purchase a particular book, such as through a well-known online book retailer. Such a webpage, however, may not be related to a service through which the user can obtain the audio of the audiobook version of such a book. Indeed, the online book retailer may not even provide such a service. Instead, as indicated previously, the search result 260, although it identifies a specific webpage of a specific online book retailer, can be conceptualized by a user as an identification of a particular entity such as, in the present example, the book that can be purchased via the webpage identified. Consequently, the user-specific service providing the user with an audiobook version can be related to the entity represented by the search result 260, as opposed to being related to the specific webpage identified by the search result 260. Additionally, the audio content, in the present example, such as that which can be played by the user inline by the control 273, can be provided from one or more server computing devices associated with the user-specific service, as opposed to from the website of the online book retailer.
Although not specifically illustrated in the exemplary user interface 200 of
As another example, a single entity may be associated with multiple-user specific services that differ in the advantages they provide to the user. For example, search result 260 which, returning to the prior example, can identify book as sold by a particular online retailer, can also have associated with it a user-specific service that offers the user a discount at that online retailer. In such an example, the actions 261, which are listed as part of the search result 260, can include the “listen” action 262, as illustrated, but can also include a “get discount” action, such as the “get discount” action 232, which can be listed together with the “listen” action 262, such as to the left or right of the “listen” action 262.
The exemplary user interface 200 is only one mechanism by which a user can be presented with user-specific services that are associated with user-presented entities. In another embodiment, rather than presenting indicia of associated user-specific services through actions enumerated proximate to the presentation of the entities, the associated user-specific services can be listed independently, separate and apart from the presentation of the entities. For example, the associated user-specific services can be presented in their own view or webpage. Alternatively, the user can be presented with the option to trigger their presentation in one of a variety of mechanisms, thereby selecting the user interface that is most easily consumed by that particular user.
Turning to
Subsequently, at step 330, an initial entity from among the entities received at step 310 can be selected and a determination can be made, at step 340, whether the user has identified a service that is associated with that entity. As also indicated previously, a service provider can identify entities with which such a service is associated including, for example, a static listing of such entities or a dynamically updated listing, such as can be maintained by the service provider. In yet another embodiment, the service provider can identify a category of entities with which such a service would be associated. For example, the service provider can indicate that it offers on-demand viewing of all movies that have been released within the last six months. Consequently, in such an example, at step 340, in determining whether any user-specific service is associated with the selected entity, an initial determination can be made as to what are the movies have been released within the last six months. In making such determination, reference can be made to “authoritative” sources, such as well-regarded or highly trafficked information stores sourcing information of an appropriate category. In one embodiment, a service provider, in identifying a category of entities, can identify one or more such authoritative sources that the service provider desires to be utilized in determining which entities are associated with the service provided by the service provider. In another embodiment, such authoritative sources can be determined dynamically by the entity-service correlation mechanisms.
Once the entities associated with the service are determined, whether by reference to a static or dynamic listing thereof, or by reference to authoritative sources of identified categories of services, a subsequent determination, at step 340, can be to determine whether any of the entities associated with the service are equivalent to the entity that was selected, such as at step 330. If, at step 340, is determined that no user-specific services are associated with the selected entity, processing can proceed to step 350. Conversely, if, at step 340, it is determined that at least one user-specific service is associated with the selected entity, then processing can proceed to step 350.
In one embodiment, at step 350, an identification of one or more services, along with the relevant user interface information, can be provided for presentation with the associated entity. For example, information comprising an identified action, as well as information to be presented within a pop-up window, can be provided such that such actions can be presented to the user along with the entity, such as in the manner illustrated in FIG. 2 and described in detail above. In another embodiment, as part of step 350, a determination can first be made as to whether the user should be notified of an associated service. More specifically, there may exist the possibility of the “user fatigue” should the user receive too many notifications of associated services. For example, a user searching for a particular book is likely to receive a series of search results, each of which identifies a different web page, from differing book retailers, listing the same book, namely the book that the user searched for. In such an example, the user may not find it helpful to have a “listen” action presented along with every single search result. Instead, in one embodiment, as part of step 350, a determination can be made as to whether the entity currently being processed has already been previously processed and found to have a user-specific service associated with it. If the entity was previously processed, as part of the same group of entities that was received at step 310, then a determination can be made whether to provide information regarding the associated service again. Alternatively, a determination can be made whether to provide information regarding the associated service with the current entity being processed as opposed to with the prior entity. For example, it may be more desirable for a user to have the “listen” action presented with a search result identifying a particular book from a well-known online book retailer, as opposed to being presented with the search result identifying the same book, except from a less well-known book retailing source. The well-known online book retailer can, thereby, act as an “authoritative” source for specific types of entities such as, for example, books. In such an embodiment, in a situation where the entities received at step 310 comprise multiple versions of the same entity, such as multiple webpages that identify the same book, except is being offered for sale by different online look retailers, the provision of associated user-specific services to be presented along with the entity, at step 350, can occur only for entities as identified by authoritative sources. Thus, as utilized herein, the term “authoritative source” means either a source that is either identified by a service provider as a reference by which to determine whether a service provided by the service provider is associated with an entity, or a source that is at least as well known as any other source providing similar information, resources or functionality. Additionally, to distinguish from the embodiment described previously, where a service provider can maintain a dynamically updated listing of entities to which the service provided by the service provider is associated, the term “authoritative source”, as utilized herein, means a source other than the service provider itself, and which is independent of the service provider.
Turning back to the exemplary flow diagram 300 of
In one embodiment, as indicated above, the mechanisms for notifying a user of user-specific services associated with one or more of the entities being presented to the user can be part of the same mechanism that is presenting the entities to the user, or can be integrated therewith. In such an embodiment, as an optional step, processing can proceed to step 380, prior to ending at step 390, and can determine whether the presentation of entities to the user should be reordered based on identified user-specific services that were associated with those entities. For example, entities having user-specific services associated with them can be presented ahead of entities that do not have user-specific services associated with them. Step 380 is illustrated in the flow diagram 300 of
Turning to
The computing device 400 also typically includes computer readable media, which can include any available media that can be accessed by computing device 400 and includes both volatile and nonvolatile media and removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computing device 400. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer readable media.
The system memory 430 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 431 and random access memory (RAM) 432. A basic input/output system 433 (BIOS), containing the basic routines that help to transfer information between elements within computing device 400, such as during start-up, is typically stored in ROM 431. RAM 432 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 420. By way of example, and not limitation,
The computing device 400 may also include other removable/non-removable, volatile/nonvolatile computer storage media. By way of example only,
The drives and their associated computer storage media discussed above and illustrated in
Of relevance to the descriptions below, the computing device 400 may operate in a networked environment using logical connections to one or more remote computers. For simplicity of illustration, and in conformance with the exemplary system 99 of
As can be seen from the above descriptions, user-specific services that are associated with entities being presented to a user can also be presented to the user to enable the user to more effectively utilize such services. In view of the many possible variations of the subject matter described herein, we claim as our invention all such embodiments as may come within the scope of the following claims and equivalents thereto.