Dynamic sentence formation from structured objects and actions in a social networking system
First Claim
Patent Images
1. A method comprising:
- maintaining at a social networking system a plurality of objects, each object having an object type from a plurality of object types;
logging a plurality of actions performed on one or more of the plurality of objects by a plurality of users of the social networking system, each action having an action type from a plurality of action types;
receiving a definition of a new action type from an entity external to and separate from the social networking system, the definition of the new action type having at least two verb tenses;
receiving a definition of a new object type from the entity external to and separate from the social networking system, the definition of the new object type having at least two noun forms;
receiving information about an action of the new action type performed by a user of the social networking system with respect to an object of the new object type;
grammatically, by a computer processor, determining a verb tense of the new action type and a noun form of the new object type based on the definition of the new action type and the definition of the new object type; and
forming a textual description of the action performed by the user from the grammatically determined verb tense of the new action type and the grammatically determined noun form of the new object type.
2 Assignments
0 Petitions
Accused Products
Abstract
A social networking system includes a mechanism for integrating user actions on objects outside of the social networking system in the social graph. External system operators include widgets that, when executed by user devices, record user interactions that correspond to a defined structure of actions and objects. Third party operators utilize a tool provided by the social networking system to define the structure of actions and objects, verb tenses of action types, and noun forms object types. External actions are recorded by the social networking system for publishing to the social graph in dynamically generated sentences formed using the structure of the actions and objects.
25 Citations
24 Claims
-
1. A method comprising:
-
maintaining at a social networking system a plurality of objects, each object having an object type from a plurality of object types; logging a plurality of actions performed on one or more of the plurality of objects by a plurality of users of the social networking system, each action having an action type from a plurality of action types; receiving a definition of a new action type from an entity external to and separate from the social networking system, the definition of the new action type having at least two verb tenses; receiving a definition of a new object type from the entity external to and separate from the social networking system, the definition of the new object type having at least two noun forms; receiving information about an action of the new action type performed by a user of the social networking system with respect to an object of the new object type; grammatically, by a computer processor, determining a verb tense of the new action type and a noun form of the new object type based on the definition of the new action type and the definition of the new object type; and forming a textual description of the action performed by the user from the grammatically determined verb tense of the new action type and the grammatically determined noun form of the new object type.
-
-
2. The method of claim 1, wherein forming a textual description of the action performed by the user from the grammatically determined verb tense of the new action type and the noun form of the new object type comprises:
-
grammatically arranging the grammatically determined verb tense of the action, the grammatically determined noun form of the object, and the user of the social networking system to form the textual description of the action performed by the user; and providing the textual description of the action performed by the user for display to users of the social networking system.
-
-
3. The method of claim 1, further comprising:
-
receiving a request to translate the textual description of the action performed by the user into a foreign language; and translating the textual description of the action performed by the user into the foreign language using the grammatically determined verb tense of the new action type and the grammatically determined noun form of the new object type.
-
-
4. The method of claim 1, wherein the grammatically determined verb tense of the new action type comprises singular past tense.
-
5. The method of claim 1, wherein the grammatically determined verb tense of the new action type comprises plural past tense.
-
6. The method of claim 1, wherein the grammatically determined verb tense of the new action type comprises singular present tense.
-
7. The method of claim 1, wherein the grammatically determined verb tense of the new action type comprises future tense.
-
8. The method of claim 1, wherein the grammatically determined verb tense of the new action type comprises present perfect tense.
-
9. The method of claim 1, wherein the grammatically determined verb tense of the new action type comprises present perfect continuous tense.
-
10. The method of claim 1, wherein the grammatically determined verb tense of the new action type comprises present continuous tense.
-
11. The method of claim 1, wherein receiving information about an action of the new action type performed by a user of the social networking system with respect to an object of the new object type further comprises receiving the action performed by the user on an external system with respect to the object being hosted on the external system.
-
12. The method of claim 1, wherein receiving information about an action of the action type performed by a user of the social networking system with respect to an object of the object type further comprises updating a social graph using the action type.
-
13. A method comprising:
-
maintaining at a social networking system a plurality of objects, each object having an object type from a plurality of object types; logging a plurality of actions performed on one or more of the plurality of objects by a plurality of users of the social networking system, each action having an action type from a plurality of action types; receiving definitions of object types and action types from an entity external to and separate from the social networking system, the received definitions including a new action type and a new object type, the definitions having noun forms of the object types and verb tenses of the action types; receiving objects and actions generated on an external system by users of the social networking system, the objects corresponding to the object types including the new object type and the actions corresponding to the action types including the new action type; determining formations of the objects, the actions, and the users into sentences according to grammatical rules using the definitions of the object types including the noun forms of the objects and the definitions of the action types including the verb tenses of the actions; and storing the sentences in a computer readable storage medium.
-
-
14. The method of claim 13, wherein receiving objects and actions generated on the external system by users of the social networking system, the objects corresponding to the object types the object types including a new object type and the actions corresponding to the action types including the new action type further comprises:
-
accessing the external system to retrieve an action log encoded with the objects and the actions generated on the external system; and processing the action log to extract the objects and actions.
-
-
15. The method of claim 13, wherein receiving objects and actions generated on the external system by users of the social networking system, the objects corresponding to the object types including the new object type and the actions corresponding to the action types including the new action types further comprises:
-
receiving a request for personalized information for a user of the social networking system, the personalized information including objects and actions generated on the external system by other users of the social networking system connected to the user; and retrieving the objects and the actions generated on the external system by other users of the social networking system connected to the user that satisfy the request for personalized information.
-
-
16. The method of claim 13, further comprising:
providing the sentences for display to users of the social networking system.
-
17. The method of claim 16, wherein providing the sentences for display to users of the social networking system further comprising:
-
executing a widget embedded in a web page of the external system, the widget providing a frame in the web page; and providing the sentences for display within the frame in the web page of the external system.
-
-
18. The method of claim 13, further comprising:
-
responsive to a query on the received objects and actions generated on the external system, providing selected objects and selected actions as results of the query; retrieving templates for visualizing the results of the query, the templates generating timeline units on the social networking system; and generating timeline units using the templates including the results of the query and sentences comprising the determined formations of the selected objects and the selected actions.
-
-
19. A method comprising:
-
maintaining at a social networking system a plurality of objects, each object having an object type from a plurality of object types; logging a plurality of actions performed on one or more of the plurality of objects by a plurality of users of the social networking system, each action having an action type from a plurality of action types; receiving a definition of a new object type including noun forms and a definition of a new action type including verb tenses from entities external to and separate from the social networking system; receiving information about actions of the action types, including the new action type, performed by users of the social networking system with respect to objects of the object types, including the new object type; receiving at a server of the social networking system a query for actions, the query including parameters that specify at least one object type of the new object type, at least one action type of the new action type, and at least one user identifier; determining results to the query, the results comprising actions performed on objects by users of the social networking system; determining sentences comprising the results to the query, the actions, the objects, and the users, the sentences grammatically determined from the verb tenses of the corresponding action types and noun forms of the corresponding object types; and providing the sentences for display in a frame generated by an instruction executed by an application on a user device, the instruction including the query.
-
-
20. The method of claim 19, wherein the frame comprises an iframe that contains a web page in the domain of the social networking system.
-
21. The method of claim 19, further comprising:
providing the frame for display on a user device corresponding to a user of the social networking system, the frame including the results grouped by one or more other users whose actions have been captured by the social networking system and with whom the user has established a connection within the social networking system.
-
22. The method of claim 19, further comprising:
providing the frame for display on a system external to the social networking system, the frame including the results grouped by one or more users of the social networking system whose actions have been captured by the social networking system.
-
23. The method of claim 19, wherein the query includes a sorting parameter, the method further comprising:
-
determining a ranking of the results to the query by the sorting parameter; modifying the sentences to incorporate the ranking of the results to the query by the sorting parameter; and providing the modified sentences for display in the frame by the ranking of the results to the query by the sorting parameter.
-
-
24. The method of claim 19, wherein the query includes a grouping parameter and a grouping function, the method further comprising:
-
determining an aggregate value of the results to the query by the grouping parameter and the grouping function; modifying the sentences to incorporate the aggregate value of the results; and providing the modified sentences for display in the frame.
-
Specification