US 11,811,712 B2
Conversational natural language interfaces for data analysis
Ryan Andrew Atallah, Palo Alto, CA (US); Jared Briskman, Redwood City, CA (US); Sophia Chen, Vancouver (CA); Suyang Duan, Vancouver (CA); and Yukiko Ishida Anonuevo, Concord, CA (US)
Assigned to Tableau Software, LLC, Seattle, WA (US)
Filed by Tableau Software, LLC, Seattle, WA (US)
Filed on Dec. 6, 2022, as Appl. No. 18/076,032.
Application 18/076,032 is a continuation of application No. 16/940,267, filed on Jul. 27, 2020, granted, now 11,522,820.
Prior Publication US 2023/0096173 A1, Mar. 30, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 51/046 (2022.01); G06F 16/33 (2019.01); G06F 16/338 (2019.01); G06F 40/40 (2020.01); G06F 9/54 (2006.01)
CPC H04L 51/046 (2013.01) [G06F 9/546 (2013.01); G06F 9/547 (2013.01); G06F 16/338 (2019.01); G06F 16/3344 (2019.01); G06F 40/40 (2020.01)] 18 Claims
OG exemplary drawing
 
1. A method for visual analysis of datasets using messaging interfaces, comprising:
at a computer system having one or more processors and memory storing one or more programs configured for execution by the one or more processors:
receiving, from a messaging system that is communicatively connected with the computer system, a first input commencing an analytic conversation between the computer system and an electronic device distinct from the computer system, wherein the messaging system is communicatively connected with the electronic device and executes a messaging application on the electronic device;
identifying a data source corresponding to the analytic conversation;
receiving, from the messaging system, a second input specifying a natural language command related to the data source;
generating an interpretation corresponding to the natural language command;
querying the data source according to the interpretation;
generating a first data visualization using a first subset of data fields from the data source, the first subset of data fields including a first data field having a first plurality of distinct data values;
generating a first representation of the first data visualization;
sending the first representation to the messaging system, wherein the messaging system causes display of the first representation on a messaging interface, of the electronic device, corresponding to the messaging application;
receiving from the messaging system a third input that specifies filtering data rows from the data source to a subset of rows whose data values for the first data field match a first set of data values; and
in response to the third input:
generating a second data visualization, wherein the second data visualization includes data marks representing the first set of data values of the first data field and omits data marks corresponding to data values of the first plurality of values other than the first set of data values;
generating a second representation of the second data visualization; and
sending the second representation to the messaging system.