US 9,811,850 B2
User task completion via open market of actions and/or providers
Steven William Macbeth, Redmond, WA (US); Michael William O'Connor, Snoqualmie, WA (US); Zhaowei Charlie Jiang, Palo Alto, CA (US); Michael Van Snellenberg, Seattle, WA (US); Li Jiang, Bellevue, WA (US); Shajib Sadhukha, Seattle, WA (US); and Amit Kumar, Redmond, WA (US)
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC, Redmond, WA (US)
Filed by Steven William Macbeth, Redmond, WA (US); Michael William O'Connor, Snoqualmie, WA (US); Zhaowei Charlie Jiang, Palo Alto, CA (US); Michael Van Snellenberg, Seattle, WA (US); Li Jiang, Bellevue, WA (US); Shajib Sadhukha, Seattle, WA (US); and Amit Kumar, Redmond, WA (US)
Filed on Apr. 8, 2012, as Appl. No. 13/441,898.
Prior Publication US 2013/0268507 A1, Oct. 10, 2013
Int. Cl. G06F 17/30 (2006.01); G06Q 30/06 (2012.01); G06Q 50/10 (2012.01); G06Q 30/02 (2012.01)
CPC G06Q 30/0631 (2013.01) [G06F 17/30864 (2013.01); G06F 17/30867 (2013.01); G06Q 30/0256 (2013.01); G06Q 30/0627 (2013.01); G06Q 50/10 (2013.01); G06F 17/30991 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method, implemented at least in part via at least one processor, for facilitating completion of a task, the method comprising:
receiving a query from a user;
identifying the task from the query, wherein the task is associated with an entity and a first action that is to be performed on the entity;
identifying a context data structure comprising an entry defining the entity and one or more actions supported for the entity;
based on the identified context data structure, creating a provider list comprising one or more providers configured to perform the first action on the entity, wherein creating the provider list comprises:
dynamically selecting, from a provider description data structure, a first provider for inclusion within the provider list, wherein the first provider is identified based upon personalized context data associated with the user, the personalized context data being stored in a personalization data structure, wherein the provider description data structure comprises an entry defining the first provider, the entity and the first action, wherein the provider description data structure is different from the context data structure, and wherein the inclusion of the first provider is based upon:
the provider description data structure indicating that the first provider is configured to perform the first action on the entity; and
a ranking of the first provider;
maintaining the personalization data structure; and
providing the provider list to facilitate completion of the task.