Aggregating social networking system user information for display via stories
First Claim
1. A method comprising:
- receiving a request from a viewing user of a social networking system for a timeline view presenting one or more stories in a chronological order based on a time associated with each of the one or more stories;
identifying a story generator maintained by the social networking system and associated with the timeline view;
accessing one or more items of narrative data maintained by the social networking system and related to the viewing user;
filtering the narrative data based on one or more time periods based on characteristics of the story generator associated with the timeline view;
selecting one or more items of narrative data from the filtered narrative data based on a relevance of the narrative data to the viewing user;
generating one or more timeline units from the selected one or more items of narrative data using the story generator associated with the timeline view;
generating an affinity score for each of the one or more timeline units, each affinity score comprises a measure of the relevance of a timeline unit to the viewing user;
generating a ranking of the one or more timeline units based on the affinity scores;
selecting one or more timeline units based at least in part on the ranking; and
sending the timeline view comprising displayable representations of the selected timeline units in an order based on time periods associated with each of the selected timeline units to the client device for display to the viewing user.
2 Assignments
0 Petitions
Accused Products
Abstract
The invention provides a display interface in a social networking system that enables the presentation of information related to a user in a timeline or map view. The system accesses information about a user of a social networking system, including both data about the user and social network activities related to the user. The system then selects one or more of these pieces of data and/or activities from a certain time period and gathers them into timeline units based on their relatedness and their relevance to users. These timeline units are ranked by relevance to the user, and are used to generate a timeline or map view for the user containing visual representations of the timeline units organized by location or time. The timeline or map view is then provided to other users of the social networking system that wish to view information about the user.
-
Citations
25 Claims
-
1. A method comprising:
-
receiving a request from a viewing user of a social networking system for a timeline view presenting one or more stories in a chronological order based on a time associated with each of the one or more stories; identifying a story generator maintained by the social networking system and associated with the timeline view; accessing one or more items of narrative data maintained by the social networking system and related to the viewing user; filtering the narrative data based on one or more time periods based on characteristics of the story generator associated with the timeline view; selecting one or more items of narrative data from the filtered narrative data based on a relevance of the narrative data to the viewing user; generating one or more timeline units from the selected one or more items of narrative data using the story generator associated with the timeline view; generating an affinity score for each of the one or more timeline units, each affinity score comprises a measure of the relevance of a timeline unit to the viewing user; generating a ranking of the one or more timeline units based on the affinity scores; selecting one or more timeline units based at least in part on the ranking; and sending the timeline view comprising displayable representations of the selected timeline units in an order based on time periods associated with each of the selected timeline units to the client device for display to the viewing user.
-
-
2. The method of claim 1, wherein selecting one or more timeline units based at least in part on the ranking comprises:
removing narrative data included in a timeline unit from an additional timeline unit.
-
3. The method of claim 1, wherein selecting one or more timeline units based at least in part on the ranking comprises:
-
modifying the ranking by removing one or more timeline units from the ranking that include narrative data included in one or more additional timeline units in the ranking; and selecting one or more of the timeline units based on the modified ranking.
-
-
4. The method of claim 1, wherein filtering the narrative data comprises:
removing narrative data included in a timeline unit previously viewed by the viewing user.
-
5. The method of claim 1, wherein filtering the narrative data comprises:
removing narrative data that the viewing user does not have permission to view.
-
6. The method of claim 1, wherein filtering the narrative data comprises:
removing narrative data having one or more types not associated with the timeline view.
-
7. The method of claim 1, wherein each generated timeline unit comprises story metadata and one or more references to narrative data, the story metadata describing visual presentation of a displayable representation of a timeline unit.
-
8. The method of claim 1, wherein selecting one or more timeline units based at least in part on the ranking comprises:
-
modifying the ranking by removing timeline units from the ranking that the viewing user is not authorized to view; and selecting one or more timeline units based at least in part on the modified ranking.
-
-
9. The method of claim 1, wherein selecting one or more timeline units based at least in part on the ranking comprises:
-
modifying a position in the ranking of a timeline unit having a type based in part on a number of timeline units having the type and having at least a threshold position in the ranking; and selecting one or more timeline units based at least in part on the modified ranking.
-
-
10. A method comprising:
-
accessing narrative data related to a viewing user of a social networking system; selecting one or more items of narrative data based on a relevance of the narrative data to the viewing user; generating one or more timeline units from the selected one or more items of narrative data based at least in part on a time period associated with a timeline view requested by the viewing user; generating an affinity score for each of the generated timeline units, each affinity score comprising a measure of a relevance of a generated timeline unit to the viewing user; generating a ranking of the generated timeline units based on the affinity scores; selecting one or more of the generated timeline units based on the ranking; and sending displayable representations of the selected timeline units to a client device for display to the viewing user.
-
-
11. The method of claim 10, wherein selecting one or more items of narrative data based on the relevance of the narrative data to the viewing user comprises:
identifying narrative data having a type associated with the timeline view.
-
12. A method comprising:
-
accessing narrative data related to a subject user of a social networking system; determining one or more story generators associated with a timeline view requested by a viewing user of a social networking system; filtering the narrative data based on the characteristics of the one or more story generators; determining one or more items of narrative data based on a relevance of the narrative data to the subject user; generating one or more timeline units from determined narrative data using the one or more story generators, each timeline unit associated with a time interval; generating an affinity score for each of the generated timeline units, each affinity score comprising a measure of the relevance of a timeline unit to the subject user; generating a ranking of the one or more timeline units based on the affinity scores; selecting one or more of the ranked timeline units based on the ranking; and sending, the timeline view comprising displayable representations of the selected one or more of the ranked timeline units to a client device for display to the viewing user.
-
-
13. The method of claim 12, wherein selecting one or more of the ranked timeline units based at least in part on the ranking comprises:
removing narrative data included in a timeline unit from an additional timeline unit.
-
14. The method of claim 12, wherein selecting one or more of the ranked timeline units based at least in part on the ranking comprises:
-
modifying the ranking by removing one or more timeline units from the ranking that include narrative data included in one or more additional timeline units in the ranking; and selecting one or more of the timeline units based on the modified ranking.
-
-
15. The method of claim 12, wherein filtering the narrative data comprises:
removing narrative data that the viewing user does not have permission to view.
-
16. The method of claim 12, wherein filtering the narrative data comprises:
removing narrative data having one or more types not associated with the timeline view.
-
17. The method of claim 12, wherein each generated timeline unit comprises story metadata and one or more references to narrative data, the story metadata describing visual presentation of a displayable representation of a timeline unit.
-
18. The method of claim 12, wherein selecting one or more of the ranked timeline units based at least in part on the ranking comprises:
-
modifying the ranking by removing timeline units from the ranking that the viewing user is not authorized to view; and selecting one or more timeline units based at least in part on the modified ranking.
-
-
19. The method of claim 12, wherein selecting one or more of the ranked timeline units based at least in part on the ranking comprises:
-
modifying a position in the ranking of a timeline unit having a type based in part on a number of timeline units having the type and having at least a threshold position in the ranking; and selecting one or more timeline units base at least in part on the modified ranking.
-
-
20. A non-transitory computer-readable storage medium storing instructions, the instructions when executed by a processor in a social networking system, causes the processor to:
-
receiving a request from a viewing user of a social networking system for a timeline view presenting one or more stories in a chronological order based on a time associated with each of the one or more stories; identifying a story generator maintained by the social networking system and associated with the timeline view; accessing one or more items of narrative data maintained by the social networking system and related to the viewing user; filtering the narrative data based on one or more time periods based on characteristics of the story generator associated with the timeline view; selecting one or more items of narrative data from the filtered narrative data based on a relevance of the narrative data to the viewing user; generating one or more timeline units from the selected one or more items of narrative data using the story generator associated with the timeline view; generating an affinity score for each of the one or more timeline units, each affinity score comprises a measure of the relevance of a timeline unit to the viewing user; generating a ranking of the one or more timeline units based on the affinity scores; selecting one or more timeline units based at least in part on the ranking; and sending the timeline view comprising displayable representations of the selected timeline units in an order based on time periods associated with each of the selected timeline units to the client device for display to the viewing user.
-
-
21. The non-transitory computer-readable storage medium of claim 20, wherein selecting one or more timeline units based at least in part on the ranking comprises:
-
modifying the ranking by removing one or more timeline units from the ranking that include narrative data included in one or more additional timeline units in the ranking; and selecting one or more of the timeline units based on the modified ranking.
-
-
22. The non-transitory computer-readable storage medium of claim 20, wherein filtering the narrative data comprises:
removing narrative data that the viewing user does not have permission to view.
-
23. The non-transitory computer-readable storage medium of claim 20, wherein filtering the narrative data comprises:
removing narrative data having one or more types not associated with the timeline view.
-
24. The non-transitory computer-readable storage medium of claim 20, wherein each generated timeline unit comprises story metadata and one or more references to narrative data, the story metadata describing visual presentation of a displayable representation of a timeline unit.
-
25. The method of claim 20, wherein selecting one or more timeline units based at least in part on the ranking comprises:
-
modifying the ranking by removing timeline units from the ranking that the viewing user is not authorized to view; and selecting one or more timeline units based at least in part on the modified ranking.
-
Specification