Managing information about relationships in a social network via a social timeline

Information

  • Patent Grant
  • 9965544
  • Patent Number
    9,965,544
  • Date Filed
    Tuesday, July 5, 2016
    8 years ago
  • Date Issued
    Tuesday, May 8, 2018
    6 years ago
Abstract
A system, method, and computer program for generating a social timeline is provided. A plurality of data items associated with at least one relationship between users associated with a social network is received, each data item having an associated time. The data items are ordered according to the at least one relationship. A social timeline is generated according to the ordered data items.
Description
BACKGROUND

The present invention relates generally to social networking, and more particularly to systems and methods for generating a social timeline.


Conventionally, people have networked with one another by joining social clubs, attending social events, meeting friends through other friends, and so forth. The Internet has made keeping in touch with friends and acquaintances more convenient for many people. For other people, the Internet provides a social forum for networking and meeting new people.


For many people, the Internet more recently represents the principal way in which the people meet new friends and remain in touch with existing friends. Thus, the Internet provides a medium for a complex array of interactions between vast numbers of individuals.


In order to facilitate communications between the vast numbers of individuals, various social networking websites have developed in recent years. Social networking websites can provide organizational tools and forums for allowing these individuals to interact with one anther via the social networking website. Many users prefer to limit communications to specific groups of other users.


SUMMARY

The present invention provides a system and method for generating a social timeline. A plurality of data items associated with at least one relationship between users associated with a social network is received, each data item having an associated time. The data items are ordered according to the at least one relationship. A social timeline is generated according to the ordered data items.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of an exemplary environment for social mapping;



FIG. 2 illustrates an exemplary social network engine;



FIG. 3 illustrates an exemplary friends list;



FIG. 4 illustrates an exemplary relationship editor page;



FIG. 5 illustrates an exemplary social timeline;



FIG. 6 is a flow diagram of an exemplary process for ordering data for a social timeline; and



FIG. 7 is a flow diagram of an exemplary process for generating a social timeline.





DETAILED DESCRIPTION


FIG. 1 is a block diagram of an exemplary environment for generating a social timeline. One or more users 102, such as a user 102A, a user 102B, and a user 102N, are in communication with a social network engine 106 via a network 104. The social network engine 106 may comprise a social networking website, one or more servers operating the social networking website, or any other device or application capable of providing social networking services via the network 104. The users 102 can access the services provided by the social network engine 106 via the network 104. Optionally, one or more of the users 102 may be able to access the social network engine 106 directly.


The users 102 may use a computing device, such as a laptop or desktop computer, a cellular telephone, a personal digital assistant (PDA), a set top box, and so forth to access the social network engine 106. The users 102 can view data about social network members, view a social timeline, enter data about themselves and possibly others, join social network groups, and so forth. The users 102 are typically members of a social networking website associated with the social network engine 106, for example, and thus comprise the social network members.


According to exemplary embodiments, a user 102, such as the user 102A, identifies one or more other members associated with the social network engine 106, such as the user 102B and the user 102N, with which the user 102A wants to build a relationship or establish or alter the details of an existing relationship. Using the social network engine 106, the user 102A enters the details about the relationship. The social network engine 106 then sends data comprising the details from the user 102A to the other users (i.e., user 102B and user 102N). The user 102B and the user 102N may then provide input in response to the data. The response may, for example, modify the data.


The relationship with the user 102B and the user 102N may confirmed, based on the input, by the social network engine 106. Alternatively, the existence of the relationship may be denied, according to some embodiments. Any type of confirmation and/or input may be utilized to alter, deny, and/or establish the relationship between the user 102A and the user 102B and the user 102N.


The relationship may comprise any type of relationship that exists between two of the users 102. For example, the user 102A and the user 102B may have worked together, been classmates, be related, have dated, and so forth. More than one relationship may exist between the two users. For example, the user 102A and the user 102B may have both worked together and dated.


The data may then be ordered. For example, the user 102A may specify that the relationship with the user 102B is older than the relationship with the user 102N. In other words, the user 102A may enter detailed data that indicates calendar dates, years, and other timing information about the relationship. The social network engine 106 can then order the data by the indicated times and generate a social timeline based on the ordered data. The social timeline may indicate when certain events related to the relationships occurred, for example, such as in the year 2004, the user 102A met the user 102B and traveled with the user 102B to Argentina. Any type of events, details, and other data related to the relationship may be provided by the users 102 and utilized to generate the social timeline.


Referring now to FIG. 2, an exemplary social network engine is illustrated, such as the social network engine 106 discussed in FIG. 1. A communications interface 202 is provided in association with the social network engine 106 for receiving data from and sending data to the users 102. The users 102 can send any type of data to the social network engine 106 via the network 104 and vice versa. For example, a user 102 can provide details about relationships with other users 102 that the social network engine 106 can utilize to generate the social timeline for the user 102, such as the user 102A, based on the details.


Typically, the users 102 access a website associated with the social network engine 106. For example, the social network engine 106 may host a social networking website where the users 102 can visit to interact with one another. The website can display various types of data about the users 102 to one another, such as the social timeline, profile information, or relationships a particular user, such as the user 102A, has with other users, such as the user 102B and the user 102N. The users 102 may belong to particular communities within the social networking website, such as communities categorized according to school attended, workplace, geographical location, and so forth.


A social relationship editor module 204 is provided for editing and/or entering the social relationships that the users 102 have with one another. For example, the user 102A can specify a particular relationship with the user 102B and the user 102N. The user 102B and/or the user 102N may then be asked to confirm the particular relationship specified by the user 102A. Accordingly, each relationship established via the social networking website is verified by two or more of the users 102 in the relationship. A social relationship editor display page associated with the social relationship editor module 204 is discussed further in association with FIG. 4.


The social relationship editor module 204 can track the one or more relationships between the users 102. The social relationship editor module 204 can also generate and send communications to the users 102 to confirm the relationships identified. As discussed herein, the users 102 are typically members of the social networking website. Accordingly, the users 102 interact with one another via the social network website associated with the social network engine 106 and can identify relationships with one another in order to facilitate the interactions, or for any other reason.


The social relationship editor module 204 may also be utilized by the users 102 to enter data about the relationships with other users 102, as discussed herein. The data may then be utilized to generate the social timeline for the users 102, such as what events happened each day, month, or year to the user 102A.


A relationship storage module 206 is provided for storing one or more databases including the relationships between the users 102. The relationship storage module 206 can utilize any type of storage device or medium to store the database. For example, the relationship storage module 206 can store the databases in hard drives, on CD ROMS, in DRAM, and so forth. Any type of storage device or storage medium for storing information about the relationships, profile data associated with the users 102, or any other information associated with the users 102, is within the scope of various embodiments. According to some embodiments, the relationship storage module 206 can store the social timeline generated for each of the users 102.


A social timeline module 208 is also provided in association with the social network engine 106. The social timeline module 208 utilizes the relationship data provided by the users 102. The data provided by the users 102 about various relationships is then ordered by the times the relationships occurred, or events associated with the relationships occurred, as indicated by the users 102. For example, the user 102A may indicate that the user 102A took a class with user 102B in the Fall of 2003. The data about the class is then ordered in relation to other data provided by the user 102A and the social timeline for the user 102A is generated.


The user 102A may be able to request, via a button, portal, link, and so forth, a display page showing the social timeline associated with the user 102A. Other users 102 may also be able to request the social timeline for the user 102A. A different social timeline may be generated for different communities associated with the user 102A, such as one social timeline for the workplace community, another social timeline for a college community, etc.


A display module 210 may be associated with the social network engine 106. The display module 210 may generate a display for displaying the social timeline to the users 102. The social timeline may be displayed to the user 102 that provides the social timeline data items, such as events and timeframes associated with the events, or the social timeline may be displayed to other users 102 that want to see one another's social timelines. The user 102A may adjust privacy settings to identify other users 102 or groups of users 102 that can access the social timeline for the user 102A.


Although FIG. 2 shows various modules associated with the social network engine 106 (e.g., the communications interface 202, the social relationship editor module 204, the relationship storage module 206, and the social timeline module 208), fewer or more modules may be associated with the social network engine 106 and still fall within the scope of various embodiments.



FIG. 3 illustrates an exemplary friends list 300. The friends list 300 may be displayed on a page associated with the social network engine 106. The friends list 300 may be selected by the users 102 via a friends list tab 302. A social timeline tab 304 may also be selected. The social timeline tab 304 may display events associated with the relationships with friends on the friends list 300 according to a timeline.


A pictorial or graphical representation 306 for each of the users 102 may be included as part of the friends list 300. For example, the user 102A may utilize a photo of the user A 102, while the user 102B may utilize a cartoon character to represent the user 102B. Any type of picture, photo, graphic, icon, symbol, and so forth may be utilized to represent the users 102 via the pictorial or graphical representation 306.


Biographical data 308 is displayed about each of the users 102 that are listed. For example, the name, status, year of graduation, field of study, and so forth may be displayed as the biographical data 308 for each of the users 102. Any type of data about the listed users 102 may comprise the biographical data 308.


A user action area 310 may be associated with the friends lists 300 and may be displayed in association with each of the users 102. In FIG. 3, the user action area 310 is displayed to the right of the biographical data 308 for each of the users 102. However, the user action area 310, the biographical data 308, and/or the pictorial/graphical representation 306 may be displayed anywhere. For example, the pictorial/graphical representation 306 may be accessed, check-marked, highlighted, and so forth in order to display the user action area 310.


The user action area 310 allows the users 102 to select one or more actions to perform in association with a particular user, such as the user 102A, about which the biographical data 306 is being viewed. For example, the users 102 can choose to send the users 102 an email or other message via the “send message” function, to utilize a “poke her!” function to be directed to a pop-up or similar screen, confirming that the user 102 wishes to “poke” a displayed user. An announcement may be sent to the displayed user informing the displayed user that the displayed user has been “poked” by another user 102.


The user action area 306 may also allow the users 102 to utilize a “view friends” function” in order to view the data about friends of the users 102, to utilize a “view photos” function to view photos associated with the user, and/or an “add to friends” function to request addition to a friends group of the user 102. Various other options may be accessed via the user action area 306. For example, the users 102 may be able to access stories about a particular user, such as the user B 102B, via the user action area 306.


For example, the users 102 can choose to send the users 102 an email or other message via the “send message” function, to utilize a “poke her!” function to be directed to a pop-up or similar screen, confirming that the user 102 wishes to “poke” a displayed user. An announcement may be sent to the displayed user informing the displayed user that the displayed user has been “poked” by another user 102.


The user action area 306 may also allow the users 102 to utilize a “view friends” function” in order to view the data about friends of the users 102, to utilize a “view photos” function to view photos associated with the user, and/or an “add to friends” function to request addition to a friends group of the user 102. Various other options may be accessed via the user action area 306. For example, the users 102 may be able to access stories about a particular user, such as the user B 102B, via the user action area 306.


The friends list 300 may be utilized for displaying any type of data about the users 102. The friends list 300 shown in FIG. 3 is an exemplary display page for displaying data about various users belonging to a community. Profile data about individual users or groups of users is shown via the friends list 300. Data about the users 102 belonging to various communities, stories about the users 102, and so forth, may also be displayed via the friends list 300, or any other display page.


The friends list 300 in FIG. 3 may also be utilized, according to exemplary embodiments, to display a social timeline associated with the friends on the friends list 300. The friends list 300 may be generated by the social relationship editor module 304 and be displayed in response to a search or filter function initiated by the user 102A. As discussed herein, the data about the users 102 for the friends list 300 may be stored in a database by the relationship storage module 206 or another storage module (not shown) for storing data about the users 102.


The friends list 300 may be utilized to display a directory of the users 102, a collection of the users 102, a directory of established relationships associated with the user 102A, or any other information about the users 102. As discussed herein, any of the data associated with the users 102 may be displayed utilizing the friends list 300 or any other display mechanism associated with the social network engine 106.


The friends list 300 can also display the users 102 in an ascending or descending order according to a chronology associated with the relationships the users 102 have with other users, such as by generating the social timeline discussed herein. For example, the user 102N may be displayed before the user 102B in a listing requested by the user 102A because the user 102A has known the user 102N for a longer period of time than the user 102B. The users 102 can be displayed according to common groups, association with common events, situations, or occurrences, and so forth.



FIG. 4 illustrates an exemplary relationship editor page 400. The relationship editor page 400 illustrated in FIG. 4 can be utilized to question the users 102 about the relationships with other users 102. The relationship editor page 400 may be utilized to learn details about the relationships, such as timing information for generating the social timeline. The relationship editor page 400 may be sent in response to a request from a particular user, such as the user 102A, to form or otherwise establish a relationship with another user, such as the user 102B, and/or to edit details about the relationship, such as providing details about specific events and/or timeframes associated with the specific events.


A relationship inquiry 402 may be utilized to establish the subject matter for the relationship editor page 400. For example, FIG. 4 illustrates the relationship editor page 400 for the relationship inquiry 402 “How do you know John Do?” However, the relationship inquiry 402 may comprise any inquiry, such as “Is the information provided by John Do about your relationship accurate?” Any type of relationship inquiry 402 may be provided in association with the relationship editor page 400.


A relationship type identifier 404 may be displayed for allowing a user 102 to select and/or identify the relationship the user 102 has with other users 102. For example, the user 102A may select that the user 102A lived with the user 102B, worked with the user 102B, and/or knows the user 102B through a friend. One or more of the relationship identifiers 404 may be selected. As discussed herein, the users 102 may have more than one relationship.


A relationship details identifier 406 allows the users 102 to further specify the nature of the relationship. For example, the relationship details identifier 406 may establish where the users 102 lived together, where the users 102 worked together, which friends the users 102 have in common, and so forth. Although only one relationship details identifier 406 is illustrated for each relationship type identifier 404, more than one relationship details identifier 406 associated with each of the relationship type identifiers 404 may be provided.


A timeframe identifier 408 may also be provided in association with the relationship editor page 400. The timeframe identifier 408 may be utilized to establish a time or timeframe associated with the relationship type identifier 404. For example, the timeframe identifier 408 can specify when the users 102 lived together, worked together, dated, and so forth. The timeframe identifier 408 data may then be ordered and utilized to generate the social timeline, discussed herein.


The relationship inquiry 402, the relationship type identifier 404, the relationship details identifier 406, and/or the timeframe identifier 408 may be selectable via a drop down menu, a text entry box, a check box, and/or via any other selection method or combination of selection methods. According to some embodiments, the relationship inquiry 402 is pre-populated with selections when sent to the users 102 with whom confirmation of the relationship is sought. Further, the relationship editor page 400 can be automatically populated, partially or wholly, utilizing data already stored about the users 102 and/or the relationships the users 102 have established with one another on previous occasions. For example, the relationship editor page 400 can be sent to the user 102A to confirm that the timeframe data about the relationship specified by the relationship editor page 400 is correct.


The arrangement, presentation, display, and/or subject matter described in connection with FIGS. 3 and 4 may vary and still remain within the scope of various embodiments. Additional timeframe questions may be utilized in association with the social relationship page 400 or additional types of the biographical data 304 may be displayed via the friends list 300.


For example, the user 102A may complete the relationship editor page 400 by selecting from the relationship inquiry 402, the relationship type identifier 404, the relationship details identifier 406, the timeframe identifier 408, and/or any other identifiers that may be provided via the relationship editor page 400, in order to provide details about the relationship the user 102A has with the user 102B. The user 102B may then be sent the pre-populated relationship editor page 400 and asked to confirm the data provided by the user 102A. The user 102B can confirm the accuracy of the data on the relationship editor page 400, modify the data on the relationship editor page 400, add to the data on the relationship editor page 400, and/or deny the accuracy of the data on the relationship editor page 400.


The details about the relationship established via the relationship editor page 400 can be stored by the relationship storage module 206 and a relationship database utilized to access timeframe information provided by the user 102 about each data item to organize the data items provided by the users 102 associated with the relationships between the users 102 and to generate the social timeline. Alternatively, the social timelines or timeline data from the user 102B may be utilized to populate times for the data items associated with the user 102A, such as when the user 102A fails to provide the times associated with the data items.


The subject matter of the inquiries and the data associated with the relationship editor page 400 may include any topics, such as membership in a club, a team, a church, etc.; common courses, classes, institutions, programs of study, etc.; common travels, journeys, adventures, parties, conferences, etc.; common familial relationships, friends, acquaintances, romantic partners or interests, musical interests, restaurants, bars, pubs, etc.; whether two or more of the users 102 met randomly, accidentally, purposefully, via online activities, etc.; and/or whether two or more of the users 102 have never met, etc. Any type of data can be established via the relationship editor page 400, as discussed herein.


As discussed herein, a confirmation request may be sent to the users 102 in response to completion of the relationship editor page 400. The social relationship editor module 204 can send a communication, for example, to the user 102B that the user 102A selected the user 102B as a person the user 102A may know or with whom the user 102A wishes to establish a relationship. The user 102B may elect to confirm the data provided by the user 102A, adjust or edit the data, send a message to the user 102A regarding the relationship, deny the existence of the relationship, add data about the relationship, and so forth. If the user 102B edits or adds to the data, the user 102A may be asked to confirm the added or edited data, according to exemplary embodiments.


According to some embodiments, the user 102A may complete portions of the relationship editor page 400, while leaving other portions for the user 102B to complete. For example, the user 102A may want the user 102B to complete portions of the relationship editor page 400 describing timeframes for the relationship between the user 102A and the user 102B.


Referring to FIG. 5, an exemplary social timeline page 500 is illustrated. The social timeline page 500 may be accessed via the social timeline tab 304 discussed in FIG. 3 or in any other manner, such as via a link, a button, a search request, and so forth.


A time identifier 502 is displayed on the social timeline page 500. The time identifier 502 indicates the time in which events or other data items associated with the user 102A may be displayed. The social timeline page 500 for the user 102A may include events associated with each relationship the user 102A has with other users 102. The data about the relationships, such as classes taken with other users 102, timeframe the user 102A dated another user 102, etc. may be ordered according to dates within the time identifier 502, the dates or times for each of the data items provided by the user 102A. The data may then be displayed within the time identifier 502 according to an ascending or descending order, for example.


A member list 504 may be displayed according to the time identifier 502, according to some embodiments. As shown in FIG. 5, the member list 504 includes names of members grouped under various categories, such as coworkers, classmates, travel companions, hookups, coursemates, summer/abroad friends, relationships, teammates, and so forth. The member list 504 may include the names of the members that the user 102A met in the year specified, for example. Any of the users 102 can click on, or otherwise access, the name of a particular member (i.e., users 102) to access further data about timeframes associated with the user 102A's relationship with the particular member, depending upon the privacy settings selected by the user 102A.


Photos 506 may be displayed in association with each of the time identifiers 502 listed as part of the social timeline page 500. According to some embodiments, a user 102 may click on the photos 506 to access specific timeframe data about the user 102A's relationship with the users 102 in the photos 506. Other users 102 can also submit photos that correlate with the time identifier 502 specified on the social timeline page 500. Any type of data can be utilized to generate the social timeline and to be displayed via the social timeline page 500. Further, some of the time identifiers 502 may not have any names or events listed.


The photos 506 may be selected automatically, based on profiles associated with the users 102 or any other data. The photos 506 may be automatically updated when a user 102 uploads or otherwise provides updated photos 506 that the social network engine 106 determines to be relevant to the social timeline. According to some embodiments, the user 102 can approve or reject added or edited photos, such as the photos 506 shown in FIG. 5, before the photos 506 are uploaded or otherwise provided for display with the social timeline.


According to exemplary embodiments, a social timeline for each of the users 102 may be displayed. The social timeline for each of the users 102 may list all of the events or other data pertaining to the relationship a particular user 102, such as the user 102A, has in common with one or more of the other users 102. For example, a social timeline for user A's 102A relationship with the user 102B may be generated. The social timeline in this example may list the events the user 102A and the user 102B had in common for each year, such as the user 102A and the user 102B traveled to Mexico together in March of 2003, attended a New Year's party together in January of 2004, threw a summer barbeque together in June of 2004, and so forth. The time identifier 502 may utilize any increment of time, such as day, month, every two years, etc. to display a list of names, events, and so forth associated with the users 102.


The social timeline module 208 may generate and/or display the social timeline page 500, according to some embodiments. However, any module, application, device, or component can generate and/or display the social timeline page 500. Any type of data may be utilized to generate the social timeline and any process may be employed for generating the social timeline, according to some embodiments.


According to some embodiments, some or all of the data from the relationship editor page 400 may be referenced to generate the social timeline. The social timeline may be generated automatically or triggered by the users 102, such as by requesting the social timeline, as discussed herein. Other sources of the data for generating the social timeline may also be accessed, such as data from users' 102 profiles, data from stories about the users 102, etc.


The chronological listing in descending order or ascending order may be included in the social timeline, as discussed herein. For example, dates may be listed in descending order down the left hand side of the social timeline page 500 in the form of month/date/year. Categories of events, situations, interactions, experiences, and so forth that correspond with the chronological listing may be generated or utilized to describe the social timeline. The data may be formatted or placed in a variety of positions on the social timeline page 500. Names of individuals that correspond with various categories may be displayed ion proximity to the categories, for example, as shown in FIG. 5.


Exemplary embodiments of the social timelines represent tools that may represent the way in which the users 102 interact with one another via the social networking website or otherwise. The social timeline may be monitored, edited, and so forth to view the interactions and timeframes associated with the interactions of the various users 102. The social timeline may be utilized, according to some embodiments, to measure the roles and influences the users 102 have on one another.


According to some embodiments, the users 102 may click on a date, name, event, etc. on the social timeline to access additional data about the date, name, or event. By clicking on, or otherwise accessing, the date, name, event, or other data displayed as part of the social timeline, other users 102 may input data to request a change or update to the social timeline. The social timeline may be updated or otherwise edited by the user 102 for which the social timeline is generated, or by other users 102, according to some embodiments.


The social timeline may be utilized to generate stories for the users 102 according to some embodiments. For example, a story about user B's 102B travels in 2005 may be sent to the user 102A based on the fact that the user 102B is listed on the social timeline for the user 102A. Any type of story may be generated or identified for the user 102A based on the social timeline.



FIG. 6 is a flow diagram of an exemplary process for ordering data for a social timeline. At step 602, data items and calendar dates associated with the data items for one or more relationships between two users are received. The user 102A can provide the data items, such as events, and calendar dates associated with the events about the user 102A's relationship with 102B.


At step 604, a chronological list of calendar dates in descending order is generated. For example, the social timeline module 208 may access data from the relationship storage module 206 to generate the chronological list. The chronological list may be generated for each relationship, for a group of relationships, such as the user A's 102A college community and work community, and/or for any other relationship.


The chronological list may include all of the data about the relationships provided by the user 102 for whom the social timeline is generated and/or the data from other users 102 with which the user 102 has relationships. For example, the user 102A may indicate that the user 102A has a relationship with the user 102B, but the data from the user 102B may need to be accessed in order to confirm the dates or timeframe associated with the relationship between the user 102A and the user 102B.


At step 606, categories corresponding to the chronological listing are generated. As discussed herein, the chronological listing may be generated for all of the timeframe data associated with the relationships. The chronological listing may then be divided according to categories, such as groups, communities, and so forth. For example, the chronological listing for the user 102A may be assigned the categories of a work group, a college group, and a friends group, associated with the user 102A.


At step 608, the names of individuals corresponding to the categories are identified. As shown in FIG. 5, the social timeline page 500 may display the names of individuals, such as other users 102, within groups or communities. For example, the names of individuals that are coworkers, classmates, travel companions, and so forth may be displayed under the relevant category according to the time identifier 502 in which the user 102A met or otherwise associated with the individuals.


At step 610, photos corresponding to the identified names are obtained. As discussed herein, the photos 506 may include pictures of each of the users 102 associated with the identified names or with some of the users 102 associated with the identified names or any other photos obtained from the users 102 or provided by the users 102.


At step 612, the social timeline is displayed, for example, as illustrated by the social timeline display page 500. The social timeline can be updated according to new data, reordered data based on new dates or timeframes provided, and so forth. For example, the user 102A may add the user 102N as a new friend in the coworkers category. The user 102N may then be added to the social timeline according to the dates provided by the user 102A. The user 102N may be a new individual that the user 102A has met or the user 102N may be an individual the user 102A has known previously, but with whom the user 102A has added a new relationship.



FIG. 7 is a flow diagram of an exemplary process for generating a social timeline. At step 702, a plurality of data items associated with at least one relationship between users associated with a social network are received, each data item having an associated time. For example, the user 102A can provide events and times associated with the events about a relationship with the user 102B via the relationship editor page 400 or via any other interface. The user 102A can provide any type of data items about the relationship, such as a type of relationship, events associated with the relationship, a timeframe associated with the relationship and/or events, other users 102 associated with the events, and so forth. As discussed herein, the data may be received from a questionnaire presented to the users 102 by the relationship editor page 400.


At step 704, the data items are ordered according to the associated time. As discussed herein, the data provided by the user 102A may be ordered to generate a chronological listing. For example, the data about the user A's 102A relationship with the user 102B and the user 102N may be compared and listed according to dates associated with the relationships with the user 102B and the user 102N. If the user 102B and the user 102N are in different categories, such as the user 102B is from work, while the user 102N dated the user 102A, different chronological listings may be generated for each of the user 102B and the user 102N. The data may also be ordered according to one chronological listing that indicates the timeframes of all of the various relationships.


At step 706, a social timeline is generated according to the ordered data. As discussed herein, the social timeline may be displayed, for example, the social timeline page 500 of FIG. 5. The social timeline may include a listing by any increment of time, such as year, month, day, and so forth, of relationships the users 102 have with other users 102. As discussed herein, the social timeline may include all of the relationships, relationships according to categories, and/or individual relationships. Thus, a different social timeline may be generated and/or displayed for each of the users 102.


While various embodiments have been described above, it should be understood that they have been presented by way of example only, and not limitation. For example, any of the elements associated with the social network engine 106 may employ any of the desired functionality set forth hereinabove. Thus, the breadth and scope of a preferred embodiment should not be limited by any of the above-described exemplary embodiments.

Claims
  • 1. A computer-implemented method comprising: maintaining in a computer system a plurality of relationships among a plurality of users of a social networking system, each relationship comprising a connection between at least two users of the social network;receiving information at a social networking system about a plurality of events that pertain to a subset of plurality of users of the social networking system connected to a viewing user of the social networking system;generating a chronological listing of the plurality of events;sorting the chronological listing into a plurality of connection categories, each connection category based on one or more relationship types corresponding to the relationships between the viewing user and the subset of plurality of users connected to the viewing user;generating a social timeline interface for the viewing user, the social timeline interface comprising a visual representation of the sorted chronological listing sorted by the connection categories; andsending, over a network, the social timeline interface for display to the viewing user.
  • 2. The method of claim 1, wherein the generated social timeline interface comprises a unified chronological listing divided up into the plurality of categories.
  • 3. The method of claim 1, wherein the generated social timeline interface comprises a plurality of chronological listings, each corresponding to one of the plurality of categories.
  • 4. The method of claim 1, wherein the categories comprise one selected from the group consisting of coworkers, classmates, travel companions, hookups, course mates, summer abroad friends, teammates, relationships, and friends.
  • 5. The method of claim 1, further comprising: selecting two or more events that are associated with a relationship between a first user and a second user of the social networking system, wherein the selected events are included in the generated social timeline interface.
  • 6. The method of claim 1, wherein the social timeline interface further comprises selectable links such that selection of the links provides access to information about the relationships associated with the links.
  • 7. The method of claim 1, further comprising: selecting a plurality of events that are associated with a subject user of the social networking system, wherein the selected events are included in the generated social timeline interface.
  • 8. The method of claim 1, further comprising: receiving from the viewing user a request to edit the social timeline interface;editing the social timeline interface based on the request; andsending the edited social timeline interface for display to the viewing user.
  • 9. The method of claim 1, wherein editing the social timeline interface comprises editing an existing event on the social timeline.
  • 10. The method of claim 9, further comprising: responsive to the editing of the event in the social timeline interface, sending a story for display to another user who is connected to the viewing user in the social networking system.
  • 11. The method of claim 9, wherein editing the social timeline interface comprises adding a new event to the social timeline.
  • 12. The method of claim 9, wherein editing the social timeline interface comprises editing an existing event on the social timeline.
  • 13. The method of claim 1, wherein editing the social timeline interface comprises deleting an event from the social timeline.
  • 14. A computer program product comprising a non-transitory computer-readable storage medium containing computer program code for performing the steps: maintaining in a computer system a plurality of relationships among a plurality of users of a social networking system, each relationship comprising a connection between at least two users of the social network;receiving information at a social networking system about a plurality of events that pertain to a subset of plurality of users of the social networking system connected to a viewing user of the social networking system;generating a chronological listing of the plurality of events;sorting the chronological listing into a plurality of connection categories, each connection category based on one or more relationship types corresponding to the relationships between the viewing user and the subset of plurality of users connected to the viewing user;generating a social timeline interface for the viewing user, the social timeline interface comprising a visual representation of the sorted chronological listing sorted by the connection categories; andsending, over a network, the social timeline interface for display to the viewing user.
  • 15. The computer program product of claim 14, wherein the generated social timeline interface comprises a unified chronological listing divided up into the plurality of categories.
  • 16. The computer program product of claim 14, wherein the generated social timeline interface comprises a plurality of chronological listings, each corresponding to one of the plurality of categories.
  • 17. The computer program product of claim 14, wherein the categories comprise one selected from the group consisting of coworkers, classmates, travel companions, hookups, course mates, summer abroad friends, teammates, relationships, and friends.
  • 18. The computer program product of claim 14, further comprising: selecting two or more events that are associated with a relationship between a first user and a second user of the social networking system, wherein the selected events are included in the generated social timeline interface.
  • 19. The computer program product of claim 14, wherein the social timeline interface further comprises selectable links such that selection of the links provides access to information about the relationships associated with the links.
  • 20. The computer program product of claim 14, further comprising: selecting a plurality of events that are associated with a subject user of the social networking system, wherein the selected events are included in the generated social timeline interface.
CROSS REFERENCE TO RELATED APPLICATIONS

This is application is a continuation of U.S. application Ser. No. 13/338,086, filed Dec. 27, 2011, which is a continuation of U.S. application Ser. No. 12/757,873, filed Apr. 9, 2010, which is a continuation of U.S. application Ser. No. 11/646,206, filed Dec. 26, 2006, which claims the benefit of U.S. Provisional Application No. 60/753,810, filed Dec. 23, 2005. Each of the foregoing applications is incorporated by reference in its entirety.

US Referenced Citations (129)
Number Name Date Kind
5778367 Wesinger et al. Jul 1998 A
5835712 DuFresne Nov 1998 A
5893111 Sharon et al. Apr 1999 A
5898780 Liu et al. Apr 1999 A
5937413 Hyun et al. Aug 1999 A
5950200 Sudai et al. Sep 1999 A
6029141 Bezos et al. Feb 2000 A
6073138 de l'Etraz et al. Jun 2000 A
6175831 Weinreich et al. Jan 2001 B1
6253216 Sutcliffe et al. Jun 2001 B1
6269369 Robertson Jul 2001 B1
6363394 Rajarajan et al. Mar 2002 B1
6480885 Olivier Nov 2002 B1
6750881 Appelman Jun 2004 B1
6879985 Deguchi et al. Apr 2005 B2
6889213 Douvikas et al. May 2005 B1
7013292 Hsu et al. Mar 2006 B1
7047202 Jaipuria et al. May 2006 B2
7069308 Abrams Jun 2006 B2
7096271 Omoigui Aug 2006 B1
7099862 Fitzpatrick et al. Aug 2006 B2
7117254 Lunt et al. Oct 2006 B2
7249123 Elder et al. Jul 2007 B2
7269590 Hull et al. Sep 2007 B2
7359894 Liebman Apr 2008 B1
7483969 Chavda Jan 2009 B2
7493342 Deguchi et al. Feb 2009 B2
7496603 Deguchi et al. Feb 2009 B2
7669123 Zuckerberg et al. Feb 2010 B2
7725492 Sittig et al. May 2010 B2
7797256 Zuckerberg et al. Sep 2010 B2
7801956 Cumberbatch et al. Sep 2010 B1
7809805 Stremel et al. Oct 2010 B2
827208 Bosworth et al. Nov 2010 A1
7827265 Cheever et al. Nov 2010 B2
7840604 Zhu et al. Nov 2010 B2
7933810 Morgenstern Apr 2011 B2
7945653 Zuckerberg et al. May 2011 B2
7970657 Morgenstern Jun 2011 B2
8027943 Juan et al. Sep 2011 B2
8099433 Sittig et al. Jan 2012 B2
8136145 Fetterman et al. Mar 2012 B2
8171128 Zuckerberg et al. May 2012 B2
8204952 Stremel et al. Jun 2012 B2
8225376 Zuckerberg et al. Jul 2012 B2
8249943 Zuckerberg et al. Aug 2012 B2
8296373 Bosworth et al. Oct 2012 B2
8402094 Bosworth et al. Mar 2013 B2
8549651 Callahan et al. Oct 2013 B2
8627506 Vera et al. Jan 2014 B2
8732846 D'Angelo et al. May 2014 B2
8832556 Steinberg Sep 2014 B2
8887066 Deng et al. Nov 2014 B1
9128800 D'Angelo et al. Sep 2015 B2
9183599 Zuckerberg et al. Nov 2015 B2
20010037721 Hasegawa et al. Nov 2001 A1
20020023010 Rittmaster Feb 2002 A1
20020059201 Work May 2002 A1
20020086676 Hendrey Jul 2002 A1
20030050977 Puthenkulam Mar 2003 A1
20030145093 Oren et al. Jul 2003 A1
20030222918 Coulthard Dec 2003 A1
20030225632 Tong et al. Dec 2003 A1
20040024846 Randall et al. Feb 2004 A1
20040088177 Travis et al. May 2004 A1
20040148275 Achlioptas Jul 2004 A1
20040221309 Zaner Nov 2004 A1
20050021750 Abrams Jan 2005 A1
20050114759 Williams et al. May 2005 A1
20050154639 Zetmeir Jul 2005 A1
20050159970 Buyukkokten et al. Jul 2005 A1
20050171799 Hull et al. Aug 2005 A1
20050171955 Hull et al. Aug 2005 A1
20050177385 Hull et al. Aug 2005 A1
20050197846 Pezaris et al. Sep 2005 A1
20050198020 Garland et al. Sep 2005 A1
20050198031 Pezaris Sep 2005 A1
20050198305 Pezaris et al. Sep 2005 A1
20050203807 Bezos et al. Sep 2005 A1
20050216300 Appelman et al. Sep 2005 A1
20050216550 Paseman et al. Sep 2005 A1
20050235062 Lunt et al. Oct 2005 A1
20050256756 Lam et al. Nov 2005 A1
20060041543 Achlioptas Feb 2006 A1
20060042483 Work et al. Mar 2006 A1
20060048059 Etkin Mar 2006 A1
20060052091 Onyon et al. Mar 2006 A1
20060080613 Savant Apr 2006 A1
20060085419 Rosen Apr 2006 A1
20060136419 Brydon et al. Jun 2006 A1
20060143183 Goldberg et al. Jun 2006 A1
20060161599 Rosen Jul 2006 A1
20060184578 La Rotonda et al. Aug 2006 A1
20060184617 Nicholas et al. Aug 2006 A1
20060190281 Kott et al. Aug 2006 A1
20060194186 Nanda Aug 2006 A1
20060218225 Hee Voon et al. Sep 2006 A1
20060229063 Koch Oct 2006 A1
20060230061 Sample et al. Oct 2006 A1
20060247940 Zhu et al. Nov 2006 A1
20060248573 Pannu et al. Nov 2006 A1
20060256008 Rosenberg Nov 2006 A1
20060265227 Sadamura et al. Nov 2006 A1
20060293976 Nam Dec 2006 A1
20070174389 Armstrong et al. Jul 2007 A1
20070208916 Tomita Sep 2007 A1
20070282987 Fischer et al. Dec 2007 A1
20080005076 Payne et al. Jan 2008 A1
20080010343 Escaffi et al. Jan 2008 A1
20080033776 Marchese Feb 2008 A1
20080040428 Wei et al. Feb 2008 A1
20080070697 Robinson et al. Mar 2008 A1
20080086458 Robinson et al. Apr 2008 A1
20080189292 Stremel et al. Aug 2008 A1
20080301094 Zhu et al. Dec 2008 A1
20080301095 Zhu et al. Dec 2008 A1
20080301120 Zhu et al. Dec 2008 A1
20090048922 Morgenstern et al. Feb 2009 A1
20090049070 Steinberg Feb 2009 A1
20090049127 Juan et al. Feb 2009 A1
20110119613 Zhu et al. May 2011 A1
20120150978 Monaco et al. Jun 2012 A1
20130073970 Piantino et al. Mar 2013 A1
20130073971 Huang et al. Mar 2013 A1
20130073972 Yung et al. Mar 2013 A1
20130073976 McDonald et al. Mar 2013 A1
20130073984 Lessin et al. Mar 2013 A1
20130073985 Hamlin et al. Mar 2013 A1
20130073995 Piantino et al. Mar 2013 A1
Non-Patent Literature Citations (19)
Entry
Chipin. ChipIn: The easy way to collect money [online], Dec. 15, 2006 http://web.archive.org/web/20061215090739/www.chipin.com/overview.
Flores, Fernando et al. “Computer systems and the design of organizational interaction.” In ACM Transactions on Information Systems (TOIS), vol. 6, Issue 2, Apr. 1988.
Parzek, E. Social Networking to ChipIn to a Good Cause [online]. Business Design Studio, Jun. 29, 2006 http://www.businessdesignstudio.com/resources/blogger/2006/06social-netwo- rking-tochipin-to-good.html.
PCT International Search Report and Written Opinion, PCT/US2006/049356, dated Feb. 6, 2008, 4 Pages.
U.S. Appl. No. 11/982,974, Ruchi Sanghvi, Systems and Methods for a Web-Based Social Networking Environment Integrated Within One or More Computing and/or Networking Applications, filed Nov. 5, 2007.
U.S. Appl. No. 60/965,624, Adam D'Angelo, Systems and Methods for Targeting Advertisements in a Social Environment, filed Aug. 20, 2007.
U.S. Appl. No. 60/965,852, Adam D'Angelo, Systems and Methods for Advertising, filed Aug. 22, 2007.
U.S. Appl. No. 60/966,442, Ezra Callahan, System and Method for Incorporating an Entity or Group other than a Natural Person into a Social Network, filed Aug. 28, 2007.
U.S. Appl. No. 60/967,842, Ezra Callahan, Systems and Methods for Dynamically Updating Privacy Settings, filed Sep. 7, 2007.
U.S. Appl. No. 61/005,614, Yishan Wong, Systems and Methods for Community Translations on a Web-Based Social Network, filed Dec. 5, 2007.
United States Office Action, U.S. Appl. No. 13/338,084, dated May 16, 2013, thirteen pages.
United States Office Action, U.S. Appl. No. 14/049,062, dated Jul. 3, 2014, fourteen pages.
United States Patent and Trademark Office, Non-Final Office Action, U.S. Appl. No. 13/338,084, dated Dec. 4, 2012, nine pages.
United States Office Action, U.S. Appl. No. 13/338,086, dated May 16, 2013, 13 pages.
United States Office Action, U.S. Appl. No. 13/338,086, dated Nov. 30, 2012, 10 pages.
United States Office Action, U.S. Appl. No. 12/757,873, dated Apr. 18, 2011, 12 pages.
United States Office Action, U.S. Appl. No. 11/646,206, dated Jan. 4, 2010, 11 pages.
United States Office Action, U.S. Appl. No. 11/646,206, dated Aug. 3, 2009, 11 pages.
United States Office Action, U.S. Appl. No. 11/646,206, dated Jan. 22, 2009, 9 pages.
Related Publications (1)
Number Date Country
20160314192 A1 Oct 2016 US
Provisional Applications (1)
Number Date Country
60753810 Dec 2005 US
Continuations (3)
Number Date Country
Parent 13338086 Dec 2011 US
Child 15202450 US
Parent 12757873 Apr 2010 US
Child 13338086 US
Parent 11646206 Dec 2006 US
Child 12757873 US