IP Library › Granted Patent US 11,301,631
Granted Patent B1
US 11,301,631 · App. 17/063,663 · Granted Apr 12, 2022

Visually correlating individual terms in natural language input to respective structured phrases representing the natural language input

Inventors: Ryan Andrew Atallah (Palo Alto, CA); Alex Djalali (Los Gatos, CA)
Assignee: TABLEAU SOFTWARE, LLC
G06F40/284G06F40/247G06F40/274
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,301,631
App. No.
17/063,663
Granted
Apr 12, 2022
Kind
B1
Abstract

A computing device has a display, one or more processors, and memory. The memory stores one or more programs configured for execution by the one or more processors. The computing device receives from a user a partial natural language input related to a data source. The partial natural language input includes a most recently entered first term. In response to receiving the first term, the computing device generates a first token that includes the first term. The computing device maps the first token to one or more analytical concepts in a lexicon of the data source. The computing device determines a first interpretation corresponding to the first token. The computing device also displays a first phrase corresponding to the first interpretation. The first interpretation includes the first term.

Claims (66)

1. A method, comprising:

at a computing device having a display, one or more processors, and memory storing one or more programs configured for execution by the one or more processors:

receiving from a user a partial natural language input related to a data source, the partial natural language input including a most recently entered first term;

in response to receiving the first term:

generating a first token that includes the first term;

mapping the first token to one or more analytical concepts in a lexicon of the data source;

determining one or more interpretations corresponding to the first term in accordance with the mapping;

in accordance with a determination that the one or more interpretations include a first interpretation that meets a confidence threshold, automatically annotating the first term, including:

displaying a first phrase corresponding to the first interpretation, the first phrase including the first term and an analytical concept corresponding to the first term; and

simultaneously visually emphasizing the first term and the first displayed phrase.

2. The method of claim 1 , wherein generating the first token includes concatenating the first term with another term that immediately precedes the first term in the partial natural language input.

3. The method of claim 1 , wherein generating the first token includes concatenating the first term with another term that immediately follows the first term in the partial natural language input.

4. The method of claim 1 , wherein simultaneously visually emphasizing the first term and the first displayed phrase includes simultaneously pulsing the first term and the first phrase.

5. The method of claim 1 , wherein:

the partial natural language input consists of a plurality of terms including the first term; and

visually emphasizing the first displayed term further comprises visually de-emphasizing one or more other terms in the plurality of terms.

6. The method of claim 5 , wherein the visually de-emphasized one or more other terms include a second term, the method further comprising:

receiving user selection of the second term;

receiving user input specifying a data field name of a data field from the data source; and

in response to the user input, storing the second term as a synonym of the data field name.

7. The method of claim 6 , further comprising:

after the storing, receiving from the user a second partial natural language command including the second term; and

in response to receiving the second term, displaying a second phrase corresponding to the second term, the second phrase including the data field name.

8. The method of claim 1 , wherein:

the partial natural language input is received in a first region of a graphical user interface; and

the first phrase is displayed in a second region of the graphical user interface, distinct from the first region.

9. The method of claim 1 , further comprising:

after determining the first interpretation corresponding to the first token, assigning a first index to the first token;

generating a data structure that includes the first index and the first token.

10. The method of claim 1 , further comprising:

receiving additional user input to the partial natural language input, the additional user input including a third term;

in response to receiving the third term:

generating a third token that includes the third term;

mapping the third token to one or more analytical concepts in the lexicon;

determining a third interpretation corresponding to the third token; and

displaying in a graphical user interface a third phrase corresponding to the third interpretation.

11. The method of claim 10 , further comprising:

after determining the first interpretation, persisting the first interpretation;

wherein the third interpretation includes the first interpretation.

12. The method of claim 10 , further comprising:

receiving a user interaction with the first term; and

in response to the user interaction, maintaining visual display of the first phrase while visually de-emphasizing the third phrase.

13. A computing device, comprising:

a display;

one or more processors; and

memory coupled to the one or more processors, the memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for:

receiving from a user a partial natural language input related to a data source, the partial natural language input including a most recently entered first term;

in response to receiving the first term:

generating a first token that includes the first term;

mapping the first token to one or more analytical concepts in a lexicon of the data source;

determining one or more interpretations corresponding to the first term in accordance with the mapping;

in accordance with a determination that the one or more interpretations include a first interpretation that meets a confidence threshold, automatically annotating the first term, including:

displaying a first phrase corresponding to the first interpretation, the first phrase including the first term and an analytical concept corresponding to the first term; and

simultaneously visually emphasizing the first term and the first displayed phrase.

14. The computing device of claim 13 , wherein the instructions for generating the first token includes instructions for concatenating the first term with another term that immediately precedes the first term in the partial natural language input.

15. The computing device of claim 13 , wherein the instructions for generating the first token includes instructions for concatenating the first term with another term that immediately follows the first term in the partial natural language input.

16. The computing device of claim 13 , wherein the instructions for simultaneously visually emphasizing the first term and the first phrase includes instructions for simultaneously pulsing the first term and the first phrase.

17. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computing device having a display, cause the computing device to perform operations comprising:

receiving from a user a partial natural language input related to a data source, the partial natural language input including a most recently entered first term;

in response to receiving the first term:

generating a first token that includes the first term;

mapping the first token to one or more analytical concepts in a lexicon of the data source;

determining one or more interpretations corresponding to the first term in accordance with the mapping;

in accordance with a determination that the one or more interpretations include a first interpretation that meets a confidence threshold, automatically annotating the first term, including:

displaying a first phrase corresponding to the first interpretation, the first phrase including the first term and an analytical concept corresponding to the first term; and

simultaneously visually emphasizing the first term and the first displayed phrase.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2021
From: ATALLAH, RYAN ANDREW; DJALALI, ALEX
To: TABLEAU SOFTWARE, LLC
Reel/Frame 055430/0489 →
Cited By (7)
US 12,197,912 US 12,271,688 US 12,271,866 US 12,277,126 US 12,393,890 US 12,393,891 US 12,547,596