DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Arguments
Applicant’s arguments with respect to claim(s) 1-18 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Malak et al. (US Publication Number 2025/0094703 A1, hereinafter “Malak”) and Sultanum et al. (US Publication Number 2024/0362405 A1, hereinafter “Sultanum”), further in view of Lambert et al. (US Patent Number 10,394,875 B2, hereinafter “Lambert”).
(1) regarding claim 1:
As shown in fig. 1, Malak disclosed a system (para. [0030], note that FIG. 1 illustrates operational environment 100 for generating a visualization of data from a dataset, table of data, or spreadsheet in a data analytics environment in an implementation) comprising:
a memory storing program code (130, database, fig. 1); and
one or more processing units to execute the program code (para. [0078], note that [0078] Referring still to FIG. 7, processing system 702 may comprise a micro-processor and other circuitry that retrieves and executes software 705 from storage system 703) to cause the system to:
determine a first feature and a second feature of a data source, the first feature associated with a plurality of first values of the data source and the second feature associated with a plurality of second values of the data source (fig. 1, 113, note that order ID and Customer ID are listed for values);
determine first metadata of the first feature and second metadata of the second feature (para. [0035], note that user computing device 110 displays a user experience for an analytics application of analytics application service 120. In user experience 111, the user views column names in selection pane 113 (e.g., “Order ID,” “Customer ID,” etc.));
generate a first one or more prompts to prompt determination of a relationship analysis algorithm based on the first metadata, the second metadata, the plurality of first values and the plurality of second values, and to prompt determination of executable program code to generate a description of a relationship analysis result (para. [0036], note that in user experience 111, the user enters, “Show me how much we made in each category.” User input 114 is received by analytics application service 120 and classified as request to create a visualization of data from the dataset. A prompt engine (not shown) of analytics application service 120 selects a prompt template based on the classification);
execute the executable program code to generate the description of the relationship analysis result (para. [0039], note that analytics application service 120 may send other prompts to LLM service 121 to complete other fields of the JSON object);
generate a second one or more prompts to prompt determination of a relationship visualization based on the description of the relationship analysis result, the first metadata, the second metadata, the plurality of first values and the plurality of second values (para. [0038], note that the prompt engine configures a second prompt based on a second prompt template which tasks LLM service 121 with selecting a type of visualization from among a list of available visualization of the analytics application. The second prompt includes user input 114 and the response from the LLM (i.e., the selected columns).), and to prompt determination of second executable program code to generate the relationship visualization incorporating the description of the relationship analysis result (para. [0038], note that the prompt template for the second prompt includes a string value for each type of visualization which LLM service 121 is to return according to the visualization it selects. In an implementation, each string value corresponds to a visualization object identifier defined in the analytics application. Upon submitting the second prompt to LLM service 121, analytics application service 120 receives output from LLM service 121 which includes the string value in a JSON format for selected type of visualization.);
execute the second executable program code to generate the relationship visualization incorporating the description of the relationship analysis result (para. [0060], note that if the user creates a new column in the tabular data, analytics application service 320 creates and stores a unique column identifier for the column in look-up table 323. If the user enters a header or name for the new column, analytics application service 320 stores the column name in association with the unique column identifier); and
present the relationship visualization incorporating the description of the relationship analysis result (para. [0061], note that after receiving output from LLM service 321 in response to the prompts, analytics application service 320 configures a data object for the visualization, such as a JSON object, based on the output. Because Prompts 1 through N task LLM service 321 with generating its output in a JSON format, analytics application service 320 populates the JSON object with the output as it was received from LLM service 321. With the JSON object configured, analytics application service 320 submits the JSON object to visualization engine 324 to create the visualization).
Malak disclosed most of the subject matter as described as above except for specifically teaching transmit the first one or more prompts to a text generation model; in response to the first one or more prompts, receive the executable program code from the text generation model; transmit the second one or more prompts to the text generation model; and in response to the second one or more prompts, receive the second executable program code to generate the relationship visualization from the text generation model.
However, Sultanum disclosed transmit the first one or more prompts to a text generation model (para. [0052], note that a prompt generator 160, which generates prompts 158 and inputs the prompts into a language model application 240 (e.g., LLM 170).); in response to the first one or more prompts, receive the executable program code from the text generation model (para. [0052], note that the prompt generator 160 generates prompts using prompt templates 250; [0053] a story generator 234, which generates self-contained stories based on text narratives received from the language model application 240 and one or more titles of data visualizations 152); transmit the second one or more prompts to the text generation model (para. [0099], note that the LLM is configured to receive multimodal input prompts (e.g., text and images). In this case, the method includes inputting the first prompt as well as the data visualization (e.g., as a pdf or an image file) into the LLM); and in response to the second one or more prompts, receive the second executable program code to generate the relationship visualization from the text generation model (para. [0100], note that the text narrative includes (716) a plurality of sentences 612. For each sentence of the plurality of sentences in the text narrative, the computing device determines (e.g., using a combination of dependency parsing and keyword matching to map phrases in a sentence to data fields and/or data values in the visualized data)).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to transmit the first one or more prompts to a text generation model; in response to the first one or more prompts, receive the executable program code from the text generation model; transmit the second one or more prompts to the text generation model; and in response to the second one or more prompts, receive the second executable program code to generate the relationship visualization from the text generation model. The suggestion/motivation for doing so would have been in order to enable authoring of data-driven articles using large language models (LLMs) (para. [0004]). Therefore, it would have been obvious to combine Malak with Sultanum to obtain the invention as specified in claim 1.
In addition to that, Lambert disclosed executable program code (col. 14, lines 5-9, note that the dataset manager component 132 receives inputs via the interface 124 to create a query for execution against the retrieved dataset(s) (i.e., target dataset), which includes the identified dataset (e.g., the extracted text for selected source documents or a previous result dataset)).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to disclose an executable program code. The suggestion/motivation for doing so would have been in order to allow the document relationship analysis system to cluster documents more rapidly and facilitating analysis and visualization of result datasets in a responsive and timely manner (col. 10, lines 52-55). Therefore, it would have been obvious to combine Malak and Sultanum with Lambert to obtain the invention as specified in claim 1.
(2) regarding claim 2:
Malak further disclosed the system according to Claim 1, wherein the executable program code is to generate the relationship analysis result, and wherein the second executable program code is to generate the relationship visualization incorporating the relationship analysis result and the description of the relationship analysis result (fig. 6, para. [0071], note that FIG. 6 illustrates an exemplary operational scenario of an analytics application at various stages of operation in an implementation. In operational scenario 600, environments 611-616 include selection pane 617 listing columns of data for the “Sales Dataset.” In environment 611, a user keys an input into a text bar. As the user enters the input, the analytics application surfaces autocompletion suggestions 618 which include the column names of the dataset and filtered according to the input as it is keyed in).
Malak disclosed most of the subject matter as described as above except for specifically teaching executable program code.
However, Lambert disclosed an executable program code (col. 14, lines 5-9, note that the dataset manager component 132 receives inputs via the interface 124 to create a query for execution against the retrieved dataset(s) (i.e., target dataset), which includes the identified dataset (e.g., the extracted text for selected source documents or a previous result dataset)).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to disclose executable program code. The suggestion/motivation for doing so would have been in order to allow the document relationship analysis system to cluster documents more rapidly and facilitating analysis and visualization of result datasets in a responsive and timely manner (col. 10, lines 52-55). Therefore, it would have been obvious to combine Malak and Sultanum with Lambert to obtain the invention as specified in claim 2.
(3) regarding claim 3:
Malak further disclosed the system according to Claim 2, wherein the executable program code is to generate a name of the relationship analysis algorithm, and wherein the second executable program code is to generate the relationship visualization incorporating the name of the relationship analysis algorithm (para. [0071], note that as the user enters the input, the analytics application surfaces autocompletion suggestions 618 which include the column names of the dataset and filtered according to the input as it is keyed in. The user selects the column “Profit” from the autocompletions suggestions 618 as illustrated in environment 612. As the user continues to key in the input, autocompletion suggests 619 is surfaced based on the text or characters being entered. The user selects Product Category to complete the user input as illustrated in environment 613).
Malak disclosed most of the subject matter as described as above except for specifically teaching executable program code.
However, Lambert disclosed an executable program code (col. 14, lines 5-9, note that the dataset manager component 132 receives inputs via the interface 124 to create a query for execution against the retrieved dataset(s) (i.e., target dataset), which includes the identified dataset (e.g., the extracted text for selected source documents or a previous result dataset)).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to disclose executable program code. The suggestion/motivation for doing so would have been in order to allow the document relationship analysis system to cluster documents more rapidly and facilitating analysis and visualization of result datasets in a responsive and timely manner (col. 10, lines 52-55). Therefore, it would have been obvious to combine Malak and Sultanum with Lambert to obtain the invention as specified in claim 3.
(4) regarding claim 4:
Malak further disclosed the system according to Claim 1, the one or more processing units to execute the program code to cause the system to:
determine a third feature and a fourth feature of the data source, the third feature associated with a plurality of third values of the data source and the fourth feature associated with a plurality of fourth values of the data source (para. [0064], note that FIG. 5 illustrates workflow 500 for generating a visualization data object, such as a JSON object, for a dataset of tabular data by an analytics application with an LLM interface in an implementation. In workflow 500, a user enters user input 511 in a user interface of an analytics application of an application service of which analytics application service 120 in FIG. 1 is representative);
determine third metadata of the third feature and fourth metadata of the fourth feature (para. [0064], note that as the user keys in user input 511, the analytics application suggests autocompletions based on the metadata of the tabular data or from other features or operations of the application. The user selects the columns of interest, “Profit” and “Product Category” from the suggested autocompletions and submits user input 511 to the application);
determine a system prompt to prompt determination of a second relationship analysis algorithm, and to prompt determination of a third function to generate a second description of a second relationship analysis result (para. [0065], note that the analytics application classifies user input 511 as a request to create a visualization and selects prompt template 513 to generate a prompt. Prompt template 513 includes instructions by which an LLM is to generate output for creating a visualization and fields to be populated with user input (e.g., user input 511) and column names of the tabular data);
determine a user prompt including the third metadata and the fourth metadata (para. [0065], note that the analytics application generates a list of column names 512 from the dataset and populates the appropriate field in the prompt);
execute the third executable program code to generate the second description of the relationship analysis result (para. [0067], note that prompt template 515 includes a list of possible chart types and for each chart type, prompt template 515 includes an object identifier with the LLM is to return in a JSON format);
generate a second system prompt to prompt determination of a second relationship visualization and to prompt determination of a fourth executable program code to generate the second relationship visualization incorporating the second description of the second relationship analysis result (para. [0068], note that in response to submitting the second prompt to the LLM, the analytics application receives output 516 with object identifier “oracle.bi.tech.chart.bar.” According to output 516, the LLM has selected a bar chart for the visualization type and so has included the object identifier for a bar chart. In various implementations, the analytics application may continue to submit prompts to the LLM to select other options for the visualization);
determine a second user prompt including the second description of the relationship analysis result, the third metadata, and the fourth metadata (para. [0069], note that based on output 514 and 516 from the LLM, the analytics application configures visualization object 517. In visualization object 517, the analytics application has populated the column name attributes (“columnHeading”) with the values specified in output 514 and the visualization type attribute (“vizObjectID”) with the value specified in output 516.);
execute the fourth executable program code to generate the second relationship visualization incorporating the second description of the second relationship analysis result (para. [0072], note that based on output received from the prompts, the analytics application generates a visualization data object, such as a JSON object, which describes the visualization and by which a visualization engine of the application creates the visualization); and
present the second relationship visualization incorporating the second description of the second relationship analysis result (para. [0072], note that as illustrated in environment 614 of operational scenario 600, a bar chart with caption 620 is created based on the output from the LLM).
Malak disclosed most of the subject matter as described as above except for specifically teaching transmit the system prompt and the user prompt to the text generation model; in response to the system prompt and the user prompt, receive the third executable program code from the text generation model; transmit the second system prompt and the second user prompt to the text generation model; in response to the second system prompt and the second user prompt, receive the fourth executable program code from the text generation model.
However, Sultanum disclosed transmit the system prompt and the user prompt to the text generation model (para. [0102], note that in response to receiving the second user interaction: when the first portion of the text narrative is correlated to a first data element in the data visualization); in response to the system prompt and the user prompt, receive the third executable program code from the text generation model (para. [0103] The computing device, after obtaining the text narrative, generates (722) (e.g., automatically, without user intervention) a second prompt in accordance with the text narrative); transmit the second system prompt and the second user prompt to the text generation model (para. [0110], note that the computing device inputs (730), into the LLM, a third prompt (e.g., an outline generation prompt) specifying the text narrative and obtains, from the LLM, an outline (e.g., a text summary) of the text narrative. For example, in some implementations, the third prompt has the form “Write a bullet-point summary (with up to 4 points); in response to the second system prompt and the second user prompt, receive the fourth executable program code from the text generation model (para. [0118], note that the computing device executes (746) the third prompt (e.g., the outline generation prompt) in accordance with the modified text narrative. The computing device obtains (748), from the LLM, an updated outline corresponding to the modified text narrative.).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to transmit the system prompt and the user prompt to the text generation model; in response to the system prompt and the user prompt, receive the third executable program code from the text generation model; transmit the second system prompt and the second user prompt to the text generation model; in response to the second system prompt and the second user prompt, receive the fourth executable program code from the text generation model. The suggestion/motivation for doing so would have been in order to enable authoring of data-driven articles using large language models (LLMs) (para. [0004]). Therefore, it would have been obvious to combine Malak with Sultanum to obtain the invention as specified in claim 4.
In addition to that, Lambert disclosed an executable program code (col. 14, lines 5-9, note that the dataset manager component 132 receives inputs via the interface 124 to create a query for execution against the retrieved dataset(s) (i.e., target dataset), which includes the identified dataset (e.g., the extracted text for selected source documents or a previous result dataset)).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to disclose executable program code. The suggestion/motivation for doing so would have been in order to allow the document relationship analysis system to cluster documents more rapidly and facilitating analysis and visualization of result datasets in a responsive and timely manner (col. 10, lines 52-55). Therefore, it would have been obvious to combine Malak and Sultanum with Lambert to obtain the invention as specified in claim 4.
(5) regarding claim 5:
Malak further disclosed the system according to Claim 4, wherein the third executable program code is to generate the second relationship analysis result, and wherein the fourth executable program code is to generate the second relationship visualization incorporating the second relationship analysis result and the second description of the second relationship analysis result (fig. 6, para. [0071], note that FIG. 6 illustrates an exemplary operational scenario of an analytics application at various stages of operation in an implementation. In operational scenario 600, environments 611-616 include selection pane 617 listing columns of data for the “Sales Dataset.” In environment 611, a user keys an input into a text bar. As the user enters the input, the analytics application surfaces autocompletion suggestions 618 which include the column names of the dataset and filtered according to the input as it is keyed in).
Malak disclosed most of the subject matter as described as above except for specifically teaching executable program code.
However, Lambert disclosed an executable program code (col. 14, lines 5-9, note that the dataset manager component 132 receives inputs via the interface 124 to create a query for execution against the retrieved dataset(s) (i.e., target dataset), which includes the identified dataset (e.g., the extracted text for selected source documents or a previous result dataset)).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to disclose executable program code. The suggestion/motivation for doing so would have been in order to allow the document relationship analysis system to cluster documents more rapidly and facilitating analysis and visualization of result datasets in a responsive and timely manner (col. 10, lines 52-55). Therefore, it would have been obvious to combine Malak and Sultanum with Lambert to obtain the invention as specified in claim 5.
(6) regarding claim 6:
Malak further disclosed the system according to Claim 5, wherein the third executable program code is to generate a second name of the second relationship analysis algorithm, and wherein the fourth executable program code is to generate the second relationship visualization incorporating the second name of the second relationship analysis algorithm (para. [0071], note that as the user enters the input, the analytics application surfaces autocompletion suggestions 618 which include the column names of the dataset and filtered according to the input as it is keyed in. The user selects the column “Profit” from the autocompletions suggestions 618 as illustrated in environment 612. As the user continues to key in the input, autocompletion suggests 619 is surfaced based on the text or characters being entered. The user selects Product Category to complete the user input as illustrated in environment 613).
Malak disclosed most of the subject matter as described as above except for specifically teaching executable program code.
However, Lambert disclosed an executable program code (col. 14, lines 5-9, note that the dataset manager component 132 receives inputs via the interface 124 to create a query for execution against the retrieved dataset(s) (i.e., target dataset), which includes the identified dataset (e.g., the extracted text for selected source documents or a previous result dataset)).
At the time of filing for the invention, it would have been obvious to a person of ordinary skilled in the art to disclose executable program code. The suggestion/motivation for doing so would have been in order to allow the document relationship analysis system to cluster documents more rapidly and facilitating analysis and visualization of result datasets in a responsive and timely manner (col. 10, lines 52-55). Therefore, it would have been obvious to combine Malak and Sultanum with Lambert to obtain the invention as specified in claim 6.
The proposed rejection of claims 1-6 render obvious the steps of the method of claims 7-12 and the non-transitory medium claims 13-18 because these steps occur in the operation of the proposed rejection as discussed above. Thus, the arguments similar to that presented above for claims 1-6 are equally applicable to claims 7-18.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Sboychakova et al. (US Patent Number 11,960,500 B1) disclosed a natural language processing system that conducts user interaction to identify and refine requests for data analyses, and automatically conducts data mining and prepares data visualizations in response to natural language queries.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communication from the examiner should be directed to Hilina K Demeter whose telephone number is (571) 270-1676.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, King Y. Poon could be reached at (571) 270- 0728. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about PAIR system, see http://pari-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/HILINA K DEMETER/Primary Examiner, Art Unit 2617