Generating a feed of content items associated with a topic from multiple content sources
First Claim
Patent Images
1. A computer-implemented method comprising:
- storing a plurality of objects in a database of an online system, each object associated with at least one topic;
receiving content items from one or more content sources, the content items each including text;
for each received content item;
comparing the text in the content item to one or more grammatical templates, each grammatical template defining a grammatical relationship between at least one object and a specified word, phrase, or other object, wherein each grammatical template is associated with at least one of a respective ontology or a particular entity within the respective ontology;
identifying, based on the comparison, one or more topics associated with objects associated with the one or more grammatical templates;
determining measures of affinity between the content item and each of one or more objects associated with the identified one or more topics based on one or more match keys and one or more negative match keys, each match comprising a term or phrase that can identify the object and each negative match key comprising a term or phrase that does not identify the object; and
associating the content item with at least one object stored by the online system based at least in part on the measure of affinity between the content item and the at least one object; and
generating a feed for a topic, the feed including content items received from one or more of the content sources and associated with one or more objects stored by the online system associated with the topic.
2 Assignments
0 Petitions
Accused Products
Abstract
A newsfeed generation system generates feeds of content items related to specific topics. The newsfeed generation system receives content items from one or more content sources, and matches the content items to topics based on a measure of affinity of each content item for one or more objects in a database that are associated with various topics. Content items associated with an object associated with a topic are included in a feed of content items associated with the topic.
18 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
storing a plurality of objects in a database of an online system, each object associated with at least one topic; receiving content items from one or more content sources, the content items each including text; for each received content item; comparing the text in the content item to one or more grammatical templates, each grammatical template defining a grammatical relationship between at least one object and a specified word, phrase, or other object, wherein each grammatical template is associated with at least one of a respective ontology or a particular entity within the respective ontology; identifying, based on the comparison, one or more topics associated with objects associated with the one or more grammatical templates; determining measures of affinity between the content item and each of one or more objects associated with the identified one or more topics based on one or more match keys and one or more negative match keys, each match comprising a term or phrase that can identify the object and each negative match key comprising a term or phrase that does not identify the object; and associating the content item with at least one object stored by the online system based at least in part on the measure of affinity between the content item and the at least one object; and generating a feed for a topic, the feed including content items received from one or more of the content sources and associated with one or more objects stored by the online system associated with the topic.
-
-
2. The method of claim 1, further comprising:
-
extracting terms from the text of a received content item; wherein determining a measure of affinity between the received content item and each of the one or more objects is based at least in part on a comparison of the extracted terms and the terms or phrases of the one or more match keys, and on a comparison of the extracted terms and the terms or phrases of the one or more negative match keys.
-
-
3. The method of claim 1, further comprising:
-
identifying an author associated with a received content item; wherein determining a measure of affinity between a received content item and each of the one or more objects further comprises determining a measure of affinity between the author associated with the received content item and the one or more objects in the database associated with the topic.
-
-
4. The method of claim 1, wherein the topic is an event associated with the one or more objects in the database, and wherein determining a measure of affinity between a received content item and each of the one or more objects further comprises:
determining a measure of affinity between the received content item and one or more objects in the database that are associated with the topic based at least in part on times associated with each of the received content items and a time associated with the event.
-
5. The method of claim 1, wherein generating the feed for the topic associated with the one or more objects stored by the online system comprises:
-
identifying one or more objects in the database that are associated with the topic based on an ontology associated with the topic, the ontology defining relationships between the plurality of objects in the database; and selecting, for inclusion in the feed for the topic, content items that are associated with at least one object in the database included in the ontology associated with the topic.
-
-
6. The method of claim 1, wherein generating the feed for the topic associated with the one or more objects stored by the online system comprises:
selecting, for inclusion in the feed for the topic, content items having at least a threshold measure of affinity for one or more objects stored by the online system and associated with the topic.
-
7. The method of claim 6, wherein the threshold measure of affinity is based at least in part on a number of content items associated with at least one object associated with the topic.
-
8. The method of claim 6, wherein the threshold measure of affinity is received from a user.
-
9. The method of claim 1, wherein generating the feed for the topic associated with the one or more objects stored by the online system comprises:
-
receiving a request identifying the topic; and generating the feed for the topic in response to receiving the request.
-
-
10. The method of claim 1, wherein affinities associated with one or more of the match keys or negative match keys can be manually adjusted by a user of the online system.
-
11. The method of claim 1, wherein one or more of the grammatical templates are learned by the online system over time based on text of content items received by the online system.
-
12. A computer program product comprising a non-transitory computer readable storage medium having instructions encoded thereon that, when executed by a processor, cause the processor to:
-
store a plurality of objects in a database of an online system, each object associated with at least one topic; receive content items from one or more content sources, the content items each including text; for each received content item; compare the text in the content item to one or more grammatical templates, each grammatical template defining a grammatical relationship between at least one object and a specified word, phrase, or other object, wherein each grammatical template is associated with at least one of a respective ontology or a particular entity within the respective ontology; identify, based on the comparison, one or more topics associated with objects associated with the one or more grammatical templates; determine measures of affinity between the content item and each of one or more objects, stored by the online system, associated with the identified one or more topics based on one or more match keys and one or more negative match keys, each match comprising a term or phrase that can identify the object and each negative match key comprising a term or phrase that does not identify the object; and associate the content item with at least one object stored by the online system based at least in part on the measure of affinity of the content item for the at least one object; and generate a feed for a topic, the feed including content items received from one or more of the content sources and associated with one or more objects stored by the online system associated with the topic.
-
-
13. The computer program product of claim 12 wherein the instructions further comprise instructions that when executed by the processor cause the processor to:
-
extract terms from the text of a received content item; wherein determining a measure of affinity between the received content item and each of the one or more objects is based at least in part on a comparison of the extracted terms and the terms or phrases of the one or more match keys, and on a comparison of the extracted terms and the terms or phrases of the of the one or more negative match keys.
-
-
14. The computer program product of claim 12 wherein the instructions further comprise instructions that when executed by the processor cause the processor to:
-
identify an author associated with a received content item; wherein determining a measure of affinity between a received content item and each of the one or more objects further comprises determining a measure of affinity between the author associated with the received content item and the one or more objects in the database associated with the topic.
-
-
15. The computer program product of claim 12, wherein the topic is an event associated with the one or more objects in the database, and wherein determining a measure of affinity between a received content item and each of the one or more objects further comprises:
determining a measure of affinity between the received content item and one or more objects in the database that are associated with the topic based at least in part on times associated with each of the received content items and a time associated with the event.
-
16. The computer program product of claim 12, wherein generate the feed for the topic associated with the one or more objects stored by the online system comprises:
-
identifying one or more objects in the database that are associated with the topic based on an ontology associated with the topic, the ontology defining relationships between the plurality of objects in the database; and selecting, for inclusion in the feed for the topic, content items that are associated with at least one object in the database included in the ontology associated with the topic.
-
-
17. The computer program product of claim 12, wherein generate the feed for the topic associated with the one or more objects stored by the online system comprises:
select, for inclusion in the feed for the topic, content items having at least a threshold measure of affinity for one or more objects stored by the online system and associated with the topic.
-
18. The computer program product of claim 17, wherein the threshold measure of affinity is based at least in part on a number of content items associated with at least one object associated with the topic.
-
19. The computer program product of claim 17, wherein the threshold measure of affinity is received from a user.
-
20. The computer program product of claim 12, wherein generate the feed for the topic associated with the one or more objects stored by the online system comprises:
-
receiving a request identifying the topic; and generating the feed for the topic in response to receiving the request.
-
Specification