# US 11,030,253 B2 · Managing data feeds from different applications for users

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,030,253 B2
- Document ID: US11030253B2
- Status: Granted
- Kind: B2
- Application number: 16/214,958
- Filed: 2018-12-10
- Published: 2019-09-05
- Granted: 2021-06-08
- Earliest claimed: 2018-03-02
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Shashidhar Kamath; Rahul Sule; Prashant Bhagat; Manav Sharma; Rajendra Vuppala; Aarathi Vidyasagar; Sudhir Bhojwani
- Web page: https://patentgrep.com/patent/US11030253B2

## CPC

- G06F 16/24568: {Data stream processing; Continuous queries}
- G06F 16/90335: {Query processing}
- G06F 16/2457: with adaptation to user needs
- G06F 16/24578: {using ranking}
- G06N 20/00: Machine learning
- G06Q 30/0635: {replenishment orders; recurring orders}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Some embodiments provide a program that receives from a client device a request for data feed items relevant to a user, determines a set of categories associated with the user, and queries a database for a first set of data feed items specify the user as a recipient of the data feed item. The program retrieves a second set of data feed items from an external content provider. The program modifies relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors, generates a result set of data feed items comprising the first and second sets of data feed items ordered based on the modified relevancy scores from highest relevancy score to lowest relevancy score, and provides the result set of data feed items to the client device.

## Claims

### Claim 1

A non-transitory machine-readable medium storing a program executable by at least one processing unit of a device, the program comprising sets of instructions for:
receiving from a client device a request for data feed items relevant to a user;
determining a set of categories associated with the user;
querying a database for a first set of data feed items specify the user as a recipient of the data feed item, the database configured to store data feed items received from a plurality of applications, each data feed item received from an application in the plurality of applications comprising a type of the data feed item, a set of categories associated with the data feed item, a relevancy score, and a set of recipients of the data feed item;
retrieving a second set of data feed items from an external content provider comprising data feed items associated with at least a category in the set of categories, each data feed item in the second set of data feed items comprising a relevancy score;
modifying the relevancy scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors, the modifying further comprising increasing the relevancy scores of data feed items in the second set of data feed items associated with at least a category in the set of categories associated with the user;
generating a result set of data feed items comprising the first and second sets of data feed items ordered based on the modified relevancy scores from highest relevancy score to lowest relevancy score; and
providing the result set of data feed items to the client device.

### Claim 2 (depends on 1)

The non-transitory machine-readable medium of claim 1, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first set of data feed items having a particular type of data feed item and maintaining the relevancy scores of data feed items in the first set of data feed items having a type of data feed item other than the particular type of data feed item.

### Claim 3 (depends on 1)

The non-transitory machine-readable medium of claim 1, wherein the second set of data feed items from the external content provider further comprises data feed items associated with categories other than the set of categories, wherein modifying the relevancy scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors further comprises maintaining the relevancy scores of data feed items in the second set of data feed items associated categories other than the set of categories.

### Claim 4 (depends on 1)

The non-transitory machine-readable medium of claim 1, wherein each data feed item in the first and second sets of data feed items comprises a timestamp, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first and second sets of set of data feed items having a more recent timestamp by a larger amount than data feed items in the first and second sets of set of data feed items having a less recent timestamp.

### Claim 5 (depends on 1)

The non-transitory machine-readable medium of claim 1, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first and second sets of set of data feed items that have not been viewed the user.

### Claim 6 (depends on 1)

The non-transitory machine-readable medium of claim 1, wherein retrieving the second set of data feed items from the external content provider comprises:
sending the external content provider a request for data feed items;
receiving the second set of data feed items from the external content provider; and
for each data feed item in the second set of data feed items, using a classifier model to determine a set of categories associated with the data feed item and to determine the relevancy score of the data feed item based on the determined set of categories associated with the user and the determined set of categories associated the data feed item.

### Claim 7 (depends on 1)

The non-transitory machine-readable medium of claim 1, wherein determining the set of categories associated with the user comprises using a classifier model configured to determine sets of categories for users in order to determine the set of categories associated with the user.

### Claim 8

A method, executable by a device, comprising:
receiving from a client device a request for data feed items relevant to a user;
determining a set of categories associated with the user;
querying a database for a first set of data feed items specify the user as a recipient of the data feed item, the database configured to store data feed items received from a plurality of applications, each data feed item received from an application in the plurality of applications comprising a type of the data feed item, a set of categories associated with the data feed item, a relevancy score, and a set of recipients of the data feed item;
retrieving a second set of data feed items from an external content provider comprising data feed items associated with at least a category in the set of categories, each data feed item in the second set of data feed items comprising a relevancy score;
modifying the relevancy scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors, the modifying further comprising increasing the relevancy scores of data feed items in the second set of data feed items associated with at least a category in the set of categories associated with the user;
generating a result set of data feed items comprising the first and second sets of data feed items ordered based on the modified relevancy scores from highest relevancy score to lowest relevancy score; and
providing the result set of data feed items to the client device.

### Claim 9 (depends on 8)

The method of claim 8, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first set of data feed items having a particular type of data feed item and maintaining the relevancy scores of data feed items in the first set of data feed items having a type of data feed item other than the particular type of data feed item.

### Claim 10 (depends on 8)

The method of claim 8, wherein the second set of data feed items from the external content provider further comprises data feed items associated with categories other than the set of categories, wherein modifying the relevancy scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors further comprises maintaining the relevancy scores of data feed items in the second set of data feed items associated categories other than the set of categories.

### Claim 11 (depends on 8)

The method of claim 8, wherein each data feed item in the first and second sets of data feed items comprises a timestamp, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first and second sets of set of data feed items having a more recent timestamp by a larger amount than data feed items in the first and second sets of set of data feed items having a less recent timestamp.

### Claim 12 (depends on 8)

The method of claim 8, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first and second sets of set of data feed items that have not been viewed the user.

### Claim 13 (depends on 8)

The method of claim 8, wherein retrieving the second set of data feed items from the external content provider comprises:
sending the external content provider a request for data feed items;
receiving the second set of data feed items from the external content provider; and
for each data feed item in the second set of data feed items, using a classifier model to determine a set of categories associated with the data feed item and to determine the relevancy score of the data feed item based on the determined set of categories associated with the user and the determined set of categories associated the data feed item.

### Claim 14 (depends on 8)

The method of claim 8, wherein determining the set of categories associated with the user comprises using a classifier model configured to determine sets of categories for users in order to determine the set of categories associated with the user.

### Claim 15

A system comprising:
a set of processing units; and
a non-transitory machine-readable medium storing instructions that when executed by at least one processing unit in the set of processing units cause the at least one processing unit to:
receive from a client device a request for data feed items relevant to a user;
determine a set of categories associated with the user;
query a database for a first set of data feed items specify the user as a recipient of the data feed item, the database configured to store data feed items received from a plurality of applications, each data feed item received from an application in the plurality of applications comprising a type of the data feed item, a set of categories associated with the data feed item, a relevancy score, and a set of recipients of the data feed item;
retrieve a second set of data feed items from an external content provider comprising data feed items associated with at least a category in the set of categories, each data feed item in the second set of data feed items comprising a relevancy score;
modify the relevancy scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors, the modifying further comprising increasing the relevancy scores of data feed items in the second set of data feed items associated with at least a category in the set of categories associated with the user;
generate a result set of data feed items comprising the first and second sets of data feed items ordered based on the modified relevancy scores from highest relevancy score to lowest relevancy score; and
provide the result set of data feed items to the client device.

### Claim 16 (depends on 15)

The system of claim 15, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first set of data feed items having a particular type of data feed item and maintaining the relevancy scores of data feed items in the first set of data feed items having a type of data feed item other than the particular type of data feed item.

### Claim 17 (depends on 15)

The system of claim 15, wherein the second set of data feed items from the external content provider further comprises data feed items associated with categories other than the set of categories, wherein modifying the relevancy scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors further comprises maintaining the relevancy scores of data feed items in the second set of data feed items associated categories other than the set of categories.

### Claim 18 (depends on 15)

The system of claim 15, wherein each data feed item in the first and second sets of data feed items comprises a timestamp, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first and second sets of set of data feed items having a more recent timestamp by a larger amount than data feed items in the first and second sets of set of data feed items having a less recent timestamp.

### Claim 19 (depends on 15)

The system of claim 15, wherein modifying the relevance scores of the first set of data feed items and the second set of data feed items based on the set of categories associated with the user and a set of factors comprises increasing the relevancy scores of data feed items in the first and second sets of set of data feed items that have not been viewed the user.

### Claim 20 (depends on 15)

The system of claim 15, wherein retrieving the second set of data feed items from the external content provider comprises:
sending the external content provider a request for data feed items;
receiving the second set of data feed items from the external content provider; and
for each data feed item in the second set of data feed items, using a classifier model to determine a set of categories associated with the data feed item and to determine the relevancy score of the data feed item based on the determined set of categories associated with the user and the determined set of categories associated the data feed item.
