IP Library Granted Patent US 11,921,715
Granted Patent B2
US 11,921,715 · App. 16/566,339 · Granted Mar 5, 2024

Search integration

Inventors: Yi Luo (Herndon, VA); Rachel Hylton Landers (San Francisco, CA); Ananya Ojha (Dunn Loring, VA); Zhili Cheng (Dunn Loring, VA); Dongping Liang (Herndon, VA)
Assignee: MicroStrategy Incorporated
G06F16/245
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 11,921,715
App. No.
16/566,339
Granted
Mar 5, 2024
Kind
B2
Abstract

Search integration is described. The actions include receiving, by one or more processors, a query. The actions include identifying search results that are responsive to the query. The actions include identifying, based on the query and the search results, structured data to supplement the search results, wherein the structured data is generated from binary table data that is received and deserialized by one or more processing modules. The actions include processing the structured data and the search results. The actions include providing, for output, the processed search results and the processed structured data results.

Claims (69)

1. A computer-implemented method comprising:

determining, by one or more computing devices, that a document includes a reference to a dataset, wherein the document includes a visualization generated based on the dataset;

based on determining that the document includes the reference to the dataset, analyzing, by the one or more computing devices, the dataset referenced by the document to generate, for the document, a set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document;

receiving, by the one or more computing devices, a query while at least a portion of the document is presented on a user interface of the one or more computing devices;

in response to receiving the query while at least the portion of the document is presented on the user interface, determining, by the one or more computing devices, that the query is associated with the document;

in response to receiving the query, identifying, by the one or more computing devices, a set of results that are responsive to the query;

after identifying the set of results for the query and based on determining that the query is associated with the document, comparing, by the one or more computing devices, content or metadata of the respective results with the set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document to identify one or more matches to the set of contextually relevant words;

ranking, by the one or more computing devices, the set of results based at least in part on the identified one or more matches between the content or metadata of the respective results and the set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document; and

generating, by the one or more computing devices, a response to the query that includes a plurality of results from the set of results and indicates the ranking of the plurality of results.

2. The computer-implemented method of claim 1 , wherein determining that the query is associated with the document is further based on determining that the query is received through a query input field in the document.

3. The computer-implemented method of claim 1 , comprising:

based on determining that the query is associated with the document, generating, by the one or more computing devices, additional queries using the set of contextually relevant words; and

generating, by the one or more computing devices, additional responses to the additional queries.

4. The computer-implemented method of claim 1 , wherein generating the response to the query comprises:

generating an autocompleted query of the query; and

generating the response based on the autocompleted query.

5. The computer-implemented method of claim 1 , comprising:

determining, by the one or more computing devices, that the visualization has been updated; and

in response to determining that the visualization has been updated, updating, by the one or more computing devices, the set of contextually relevant words based on the updated visualization.

6. The computer-implemented method of claim 1 , comprising:

determining, by the one or more computing devices, that the dataset has been updated; and

in response to determining that the dataset has been updated, updating, by the one or more computing devices, the set of contextually relevant words based on the updated dataset.

7. The computer-implemented method of claim 1 , wherein generating the response to the query comprises:

updating the visualization.

8. The computer-implemented method of claim 1 , wherein the visualization comprises at least one graph or chart, and wherein generating the set of contextually relevant words comprises adding, to the set of contextually relevant words, words that are included in an axis label, a legend, or a title of the visualization.

9. The computer-implemented method of claim 1 , wherein analyzing the dataset referenced by the document or the visualization of the dataset to generate the set of contextually relevant words comprises:

identifying, in the dataset referenced by the document, words that are included in an object, field, row, column, or table of the dataset; and

adding, to the set of contextually relevant words, the words that are included in the object, field, row, column, or table of the dataset.

10. The computer-implemented method of claim 1 , comprising:

detecting a change to at least one of the dataset or the visualization of the dataset; and

updating the set of contextually relevant words based on the detected change to the at least one of the dataset or the visualization.

11. The computer-implemented method of claim 1 , wherein receiving, by the one or more computing devices, the query comprises:

receiving, by the one or more computing devices, the query after generating the set of contextually relevant words that are extracted from the dataset used to generate the visualization.

12. The computer-implemented method of claim 1 , wherein analyzing, by the one or more computing devices, the dataset referenced by the document to generate, for the document, the set of contextually relevant words that are extracted from the dataset used to generate the visualization comprises:

extracting, from the dataset referenced by the document, words for inclusion in the set of contextually relevant words.

13. The computer-implemented method of claim 1 , wherein the set of results includes a portion of the dataset that was used to generate the visualization.

14. The computer-implemented method of claim 1 , wherein:

the dataset comprises data stored in a database;

the visualization comprises at least one graph or chart; and

determining, by one or more computing devices, that the document includes the reference to the dataset comprises determining, by the one or more computing devices, that the at least one graph or chart was generated from the data stored in the database.

15. A system comprising:

one or more computing devices; and

one or more storage devices storing instructions that are operable, when executed by the one or more computing devices, to cause the one or more computing devices to perform operations comprising:

determining, by the one or more computing devices, that a document includes a reference to a dataset, wherein the document includes a visualization generated based on the dataset;

based on determining that the document includes the reference to the dataset, analyzing, by the one or more computing devices, the dataset referenced by the document to generate, for the document, a set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document;

receiving, by the one or more computing devices, a query while at least a portion of the document is presented on a user interface of the one or more computing devices;

in response to receiving the query while at least the portion of the document is presented on the user interface, determining, by the one or more computing devices, that the query is associated with the document;

in response to receiving the query, identifying, by the one or more computing devices, a set of results that are responsive to the query;

after identifying the set of results for the query and based on determining that the query is associated with the document, comparing, by the one or more computing devices, content or metadata of the respective results with the set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document to identify one or more matches to the set of contextually relevant words;

ranking, by the one or more computing devices, the set of results based at least in part on the identified one or more matches between the content or metadata of the respective results and the set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document; and

generating, by the one or more computing devices, a response to the query that includes a plurality of results from the set of results and indicates the ranking of the plurality of results.

16. The system of claim 15 , the operations comprising:

receiving the query through a query input field in the document, and

generating the response to the query based on receiving the query through the query input field in the document.

17. The system of claim 15 , wherein the operations comprise:

determining, by the one or more computing devices, that the visualization has been updated; and

in response to determining that the visualization has been updated, updating, by the one or more computing devices, the set of contextually relevant words based on the updated visualization.

18. The system of claim 15 , wherein the operations comprise:

determining, by the one or more computing devices, that the dataset has been updated; and

in response to determining that the dataset has been updated, updating, by the one or more computing devices, the set of contextually relevant words based on the updated dataset.

19. A non-transitory computer-readable medium storing software comprising instructions executable by one or more computing devices which, upon such execution, cause the one or more computing devices to perform operations comprising:

determining, by the one or more computing devices, that a document includes a reference to a dataset, wherein the document includes a visualization generated based on the dataset;

based on determining that the document includes the reference to the dataset, analyzing, by the one or more computing devices, the dataset referenced by the document to generate, for the document, a set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document;

receiving, by the one or more computing devices, a query while at least a portion of the document is presented on a user interface of the one or more computing devices;

in response to receiving the query while at least the portion of the document is presented on the user interface, determining, by the one or more computing devices, that the query is associated with the document;

in response to receiving the query, identifying, by the one or more computing devices, a set of results that are responsive to the query;

after identifying the set of results for the query and based on determining that the query is associated with the document, comparing, by the one or more computing devices, content or metadata of the respective results with the set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document to identify one or more matches to the set of contextually relevant words;

ranking, by the one or more computing devices, the set of results based at least in part on the identified one or more matches between the content or metadata of the respective results and the set of contextually relevant words that are extracted from the dataset used to generate the visualization included in the document; and

generating, by the one or more computing devices, a response to the query that includes a plurality of results from the set of results and indicates the ranking of the plurality of results.

Assignments (4)
CHANGE OF NAME Recorded Sep 19, 2025
From: MICROSTRATEGY INCORPORATED
To: STRATEGY INC
Reel/Frame 072974/0529 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT REEL/FRAME: 056647/0687, REEL/FRAME: 057435/0023, REEL/FRAME: 059256/0247, REEL/FRAME: 062794/0255 AND REEL/FRAME: 066663/0713 Recorded Sep 26, 2024
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS SUCCESSOR IN INTEREST TO U.S. BANK NATIONAL ASSOCIATION, IN ITS CAPACITY AS COLLATERAL AGENT FOR THE SECURED PARTIES
To: MICROSTRATEGY INCORPORATED; MICROSTRATEGY SERVICES CORPORATION
Reel/Frame 069065/0539 →
SECURITY INTEREST Recorded Jun 22, 2021
From: MICROSTRATEGY INCORPORATED
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 056647/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2019
From: LUO, YI; LANDERS, RACHEL HYLTON; OJHA, ANANYA; CHENG, ZHILI; LIANG, DONGPING
To: MICROSTRATEGY INCORPORATED
Reel/Frame 050850/0953 →