IP Library › Granted Patent US 10,120,851
Granted Patent B2
US 10,120,851 · App. 15/199,531 · Granted Nov 6, 2018

Automatic semantic data enrichment in a spreadsheet

Inventor: Yaniv Naor (Ramat HaSharon, IL)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06F17/246G06F17/2785G06F17/30011
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,120,851
App. No.
15/199,531
Filed
Jun 30, 2016
Granted
Nov 6, 2018
Kind
B2
Art Unit
2176
USPC
715/220
Abstract

To improve efficiency of populating a spreadsheet with data, the system and method disclosed herein provide for a user to request automatic filling of data into the spreadsheet. In one embodiment, the user identifies a target area such as a column of the spreadsheet and existing data items entered by the user are detected in a base column and the target column. In one aspect, a data item in a cell is detected in the target column. In another aspect a column header is detected in the target column. A semantic relationship is determined between the detected data items in the base column and target column. The determined relationship is then used to determine at least one new data item to add to the target area of the spreadsheet.

Claims (51)

1. A computer-implemented method for improving efficiency in populating a spreadsheet with data, comprising:

detecting existing data items having been entered by a user into a base area and a target area of the spreadsheet;

determining a semantic relationship between at least one existing data item of the base area and at least one existing data item of the target area of the spreadsheet;

determining at least one new data item to add to the target area of the spreadsheet based on the determined semantic relationship, wherein the determined at least one new data item has a semantic relationship with another existing data item of the base area that is the same as the semantic relationship between the at least one existing data item of the base area and the at least one existing data item of the target area; and

populating the target area with the at least one new data item.

2. The computer-implemented method of claim 1 , wherein determining a relationship between at least one existing data item of the base area and at least one existing data item of the target area of the spreadsheet comprises determining a semantic relationship between existing data items of a base column of the spreadsheet and at least one existing data item of a target column of the spreadsheet.

3. The computer-implemented method of claim 1 , wherein determining a relationship between at least one existing data item of the base area and at least one existing data item of the target area of the spreadsheet comprises determining a semantic relationship between existing data items of a base column of the spreadsheet and a column header of a target column of the spreadsheet.

4. The computer-implemented method of claim 1 , further comprising identifying the target area of the spreadsheet by selecting an active cell of the spreadsheet.

5. The computer-implemented method of claim 1 , further comprising suggesting the at least one new data item to the user for populating the target area of the spreadsheet.

6. The computer-implemented method of claim 1 , populating the at least one new data item into the target area of the spreadsheet comprises automatically populating the at least one new data item into the target area of the spreadsheet.

7. The computer-implemented method of claim 1 , wherein determining a relationship between at least one existing data item of the base area and at least one existing data item of the target area of the spreadsheet comprises utilizing a knowledge graph to semantically determine the relationship between at least one existing data item of the base area and at least one existing data item of the target area of the spreadsheet.

8. The computer-implemented method of claim 1 , further comprising automatically formatting the new data item to correspond with the at least one existing data item of the target area.

9. The computer-implemented method of claim 1 , further comprising receiving the at least one new data item from an external data source.

10. The computer-implemented method of claim 1 , wherein determining a relationship between at least one existing data item of the base area and at least one existing data item of the target area of the spreadsheet comprises determining a plurality of relationships between a plurality of existing data items of the base area and at least one existing data item of the target area.

11. The computer-implemented method of claim 10 , further comprising calculating a score for each of the plurality of relationships to determine an optimal relationship, wherein the optimal relationship is utilized to determine the at least one new data item to add to the target area of the spreadsheet.

12. The computer-implemented method of claim 10 , further comprising the user receiving a selection of one of the plurality of relationships for determining the at least one new data item to add to the target area of the spreadsheet.

13. The computer-implemented method of claim 1 , further comprising performing a search of at least one external source in order to determine the at least one new data item to add to the target area of the spreadsheet based on the determined relationship.

14. The computer-implemented method of claim 1 , further comprising receiving an indication from a user of the spreadsheet requesting data items for automatically populating the target area of the spreadsheet.

15. A computer-readable medium storing computer-executable instructions for automatically populating a spreadsheet, comprising:

detecting existing data items entered by a user into a base column and a target column of the spreadsheet;

determining a semantic relationship between at least one existing data item of the base column and at least one existing data item of the target column of the spreadsheet;

determining at least one new data item to add to the target column of the spreadsheet based on the determined semantic relationship, wherein the determined at least one new data item has semantic relationship with another existing data item of the base column that is the same as the semantic relationship between the at least one existing data item of the base column and the at least one existing data item of the target column; and

populating the target column with the at least one new data item.

16. The computer-readable medium of claim 15 , wherein determining a relationship between at least one existing data item of the base column and at least one existing data item of the target column of the spreadsheet comprises determining a relationship between existing data items of the base column of the spreadsheet and a column header of the target column of the spreadsheet.

17. The computer-readable medium of claim 15 , further comprising suggesting the at least one new data item to the user and receiving an indication from the user to populate the at least one new data item into the target column of the spreadsheet.

18. The computer-readable medium of claim 15 , further comprising receiving an indication from the user of the spreadsheet requesting data items for automatically populating the target column of the spreadsheet.

19. The computer-readable medium of claim 15 , wherein determining the semantic relationship between the at least one existing data item of the base column and the at least one existing data item of the target column of the spreadsheet comprises determining a semantic relationship between at least one existing data item of the base column and at least one existing data item in a cell of the target column of the spreadsheet.

20. A system for improving efficiency in populating a spreadsheet with data, comprising:

a processor and memory;

an operating environment executing using the processor; and

a change manager that is configured to perform actions comprising:

displaying a spreadsheet having a grid of rows and columns;

detecting existing data items entered by the user into one or more base columns and one or more target columns of the spreadsheet;

determining at least one semantic relationship between at least one existing data item of the base column and at least one existing data item of the target column of the spreadsheet, wherein the at least one existing data item of the target column is either a column header or an existing data item of at least one cell of the target column;

determining at least one new data item to add to the target column of the spreadsheet based on the determined semantic relationship, wherein the determined at least one new data item has a semantic relationship with another existing data item of the base column that is the same as the semantic relationship between the at least one existing data item of the base column and the at least one existing data item of the target column;

suggesting the at least one new data item to the user; and

receiving an indication from the user to enter the at least one new data item into the target column of the spreadsheet.

21. The system of claim 20 wherein the at least one existing data item of the target column is both the column header of the target column and at least one cell of the target column, and determining at least one semantic relationship comprising determining a semantic relationship between the at least one existing data item of the base column and the header of the target column and another semantic relationship between the at least one existing data item of the base column and at least one existing data item of the target column.

22. A method for improving efficiency in populating a spreadsheet with data, comprising:

detecting existing data items having been entered by one or more users into a base column and having been entered into at least one cell of a target column and a column header of the target column;

determining a semantic relationship between at least one existing data item of the base column and the existing data item of the at least one cell of the target column and another semantic relationship between the at least one existing data item of the base column and the column header;

determining at least one new data item to add to the target area of the spreadsheet based on the determined semantic relationships, wherein the determined at least one new data item has a semantic relationship with another existing data item of the base column that is the same as:

the semantic relationship between the at least one existing data item of the base column and the at least one existing data item of the at least one cell of the target column; or

the semantic relationship between the at least one existing data item of the base column and the column header of the target column; and

populating the target area with the at least one new data item.

23. A method for improving efficiency in populating a spreadsheet with data, comprising:

detecting existing data items having been entered by a user into a base column and a target column of the spreadsheet;

suggesting at least one semantic relationship that exists between the base column and the target column, the at least one semantic relationship based on at least one existing data item of the base column and at least one existing data item of the target column; and

receiving a selection of at least one suggested semantic relationship; and

populating a target column with at least one new data item based on the selected at least one semantic relationship, wherein the at least one new data item has a semantic relationship with another existing data item of the base column that is the same as the selected semantic relationship.

24. The method of claim 23 , wherein the target column is empty prior to population.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2016
From: NAOR, YANIV
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039060/0474 →
Continuity (1)
Related Publication 20180004722A1 · Jan 4, 2018
Cited By (5)
US 12,271,687 US 12,307,193 US 12,493,738 US 12,499,307 US 12,547,823