Prosecution Insights
Last updated: July 17, 2026
Application No. 18/885,178

ROUTING ENGINE FOR LLM-BASED DIGITAL ASSISTANT

Non-Final OA §103
Filed
Sep 13, 2024
Priority
Sep 15, 2023 — provisional 63/583,225
Examiner
GLASSER, DARA J
Art Unit
2161
Tech Center
2100 — Computer Architecture & Software
Assignee
ORACLE INTERNATIONAL Corporation
OA Round
1 (Non-Final)
58%
Grant Probability
Moderate
1-2
OA Rounds
1y 8m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 58% of resolved cases
58%
Career Allowance Rate
97 granted / 166 resolved
+3.4% vs TC avg
Strong +55% interview lift
Without
With
+54.8%
Interview Lift
resolved cases with interview
Typical timeline
3y 6m
Avg Prosecution
5 currently pending
Career history
176
Total Applications
across all art units

Statute-Specific Performance

§101
2.2%
-37.8% vs TC avg
§103
91.7%
+51.7% vs TC avg
§102
4.6%
-35.4% vs TC avg
§112
1.4%
-38.6% vs TC avg
Black line = Tech Center average estimate • Based on career data from 166 resolved cases

Office Action

§103
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 . Information Disclosure Statement The information disclosure statements (IDS) submitted on January 3, 2025, November 24, 2025, and April 16, 2026 are in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statements are being considered by the examiner. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 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. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention. Claims 1, 6-10, and 14-18 are rejected under 35 U.S.C. 103 as being unpatentable over Vescovi et al. (US Publication No. 2017/0132199) in view of Wang et al. (US Publication No. 2006/0074631). As to claim 1, Vescovi teaches a computer-implemented method comprising: receiving an input query from a user [user request], the input query comprising particular data [command, request, statement, narrative, and/or inquiry] (see e.g., [0052] for a digital assistant being capable of accepting a user request at least partially in the form of a natural language command, request, statement, narrative, and/or inquiry, typically, the user request seeking either an informational answer or performance of a task by the digital assistant, a user asking the digital assistant a question, such as “Where am I right now?,” and the user also requesting the performance of a task, for example, “Please invite my friends to my girlfriend's birthday party next week” and [0277] for the user requesting that the digital assistant let a visitor (in this example, Tomas) into his apartment when that visitor arrives); identifying, among one or more candidate actions [actionable intents], an action [task] based on the input query (see e.g., [0236] for natural language processing module 732 (“natural language processor”) of the digital assistant taking the sequence of words or tokens (“token sequence”) generated by STT processing module 730, and attempting to associate the token sequence with one or more “actionable intents” recognized by the digital assistant and an “actionable intent” representing a task that can be performed by the digital assistant, [0241] for an actionable intent node, along with its linked concept nodes, being described as a “domain,” and [0246] for natural language processing module 732 receiving the token sequence (e.g., a text string) from STT processing module 730, and determining what nodes are implicated by the words in the token sequence, in some examples, if a word or phrase in the token sequence is found to be associated with one or more nodes in ontology 760 (via vocabulary index 744), the word or phrase being able to “trigger” or “activate” those nodes, and based on the quantity and/or relative importance of the activated nodes, natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform. Among actionable intents, a task is identified based on the user request.); identifying a set of input argument slots [parameters, placeholders] associated with the action (see e.g., [0249] for once natural language processing module 732 identifies an actionable intent (or domain) based on the user request, natural language processing module 732 generating a structured query to represent the identified actionable intent, in some examples, the structured query including parameters for one or more nodes within the domain for the actionable intent, for example, the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, [0304] for the digital assistant determining 908 whether the user request corresponds to at least one of a plurality of plan templates 802, as set forth above, the plan templates 802 being associated with a variety of different actions, and for example, plan templates 802 including “let [guest] into my apartment when [guest] arrives,” “call a [cab/shared ride] for [guest] when [guest] leaves my house,” and “buy tickets for [movie] when they go on sale,” [0306] for if the user request of block 902 corresponds to at least one of a plurality of plan templates, then the digital assistant selecting 910 one of the plurality of plan templates 802 that best corresponds to the user request, and [0307] for one or more of the inputs 806 of the plan template 802 being placeholders awaiting information. Parameters/placeholders associated with a task are identified.); for each input argument slot of the set of input argument slots, filling the input argument slot by: determining whether one or more parameters corresponding with the input argument slot are derivable from the particular data (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, and based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 can generate a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”} and [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” and the user has specified that Tomas is the person to let in, so the visitor name “Tomas” being an input 806 to the plan template. Parameters are determined to be derivable from the request.), and in accordance with the one or more parameters corresponding with the input argument slot, (i) deriving the one or more parameters from the particular data and (ii) filling the input argument slot with a version of the one or more parameters (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, and based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 can generate a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”} and [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” and the user has specified that Tomas is the person to let in, so the visitor name “Tomas” being an input 806 to the plan template. Parameters are determined to be derivable from the request. Parameters are derived from the request and a version of each parameter fills the placeholders.); and transmitting an execution plan that comprises the action that includes the set of filled input arguments slots to an execution engine [task flow processor] configured to execute the action for generating a response to the input query (see e.g., [0250] for natural language processing module 732 passing the generated structured query (including any completed parameters) to task flow processing module 736 (“task flow processor”) and task flow processing module 736 being configured to receive the structured query from natural language processing module 732, completing the structured query, if necessary, and performing the actions required to “complete” the user's ultimate request, [0252] for once task flow processing module 736 has completed the structured query for an actionable intent, task flow processing module 736 proceeding to perform the ultimate task associated with the actionable intent, accordingly, task flow processing module 736 executing the steps and instructions in the task flow model according to the specific parameters contained in the structured query, for example, the task flow model for the actionable intent of “restaurant reservation” including steps and instructions for contacting a restaurant and actually requesting a reservation for a particular party size at a particular time, and for example, using a structured query such as: {restaurant reservation, restaurant=ABC Café, date=3/12/2012, time=7pm, party size=5}, task flow processing module 736 performing the steps of: (1) logging onto a server of the ABC Café or a restaurant reservation system such as OPENTABLE®, (2) entering the date, time, and party size information in a form on the website, (3) submitting the form, and (4) making a calendar entry for the reservation in the user's calendar, [0255] for task flow processing module 736 being used to finally generate a response (i.e., an output to the user, or the completion of a task) to fulfill the user's intent and the generated response can be a dialogue response to the speech input that at least partially fulfills the user's intent, [0322] for the digital assistant then executing 940 the generated plan and the digital assistant using the plan to take action to fulfill the user request, and [0336] for the digital assistant notifying 988 the user after execution of the plan is complete and the digital assistant of Pierre displaying a message 826 at the electronic device 200: “Pierre, Tomas has arrived at your apartment. I let him in.” An execution plan comprising the task that includes the filled placeholders is sent to a task flow processor to execute the task for generating a response to the user request.). Vescovi does not specifically disclose identifying a set of input argument slots within a schema associated with the action; and filling the input argument slot with a version of the one or more parameters that conforms to the schema. However, Wang teaches identifying a set of input argument slots [arrival city and departure city slots] within a schema associated with the action [ShowFlight task] (see e.g., [0033] for FIG. 3 being one illustrative embodiment of an application schema 300, schema 300 simply stating that the application supports two types of information queries: those for flight information (the ShowFlight task) and those for ground transportation information (the GroundTransport task), and in order to obtain flight information, a user providing information about the arrival city (ACity) and/or the departure city (DCity) slots, so the system can search for the information according to the user's specification. The arrival city and departure city slots are identified within a schema associated with the ShowFlight task.); and filling the input argument slot with a version [type] of the one or more parameters [Seattle and New York] that conforms to the schema (see e.g., [0033] for the type of a slot specifying the requirement for its "fillers" and for both the ACity and DCity slots, the filler being an expression modeled in the grammar library that refers to an object of the type "City" and [0034] for when using a grammar to model an input sentence in the domain specified by the schema, for example, "display flights from Seattle to New York please" for the "ShowFlight" task in the schema illustrated in FIG. 3, different components being introduced in the grammar to cover different parts in the sentence and slot fillers covering the words and/or word sequences that specify the contents of the slots (in the example, "Seattle" as the filler for "DCity" and "New York" as the filler for "ACity"). The arrival city slot is filled with New York, which is a city type, and the departure city slot is filled with Seattle, which is a city type.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi to identify a set of input argument slots within a schema associated with the action; and fill the input argument slot with a version of the one or more parameters that conforms to the schema, as taught by Wang, for the benefit of defining a semantic structure of an application domain (see e.g., Wang, [0032]). As to claim 6, the limitations of parent claim 1 have been discussed above. Vescovi teaches determining a first subset of the set of input argument slots, wherein the first subset comprises input argument slots that are required to execute the action (see e.g., [0307] for one or more of the inputs 806 of the plan template 802 being placeholders awaiting information and where at least one of those inputs 806 is not optional in order for a plan to be generated, sufficient information existing where information is available to the digital assistant for the virtual assistant to populate each non-optional input field. A subset of placeholders that are required to execute the task is determined.); and determining a second subset of the set of input argument slots, wherein the second subset comprises input argument slots that are optional to execute the action (see e.g., [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” in this example, the inputs 806 associated with the “time expected” and “date expected” instructions 804 being optional, and that is, the digital assistant having sufficient information to generate a plan with this plan template 802, even if no input 806 is received in association with the “time expected” and “date expected” instructions 804. A subset of placeholders that are optional to execute the task is determined.). As to claim 7, the limitations of parent claims 1 and 6 have been discussed above. Vescovi teaches in accordance with determining that the first subset comprises at least one input argument slot [location] that cannot be filled with the version of the one or more parameters, determining whether contextual information [near me] included in the input query comprises one or more indications of the version of the one or more parameters [GPS coordinates of user] (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, according to the ontology, a structured query for a “restaurant reservation” domain including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, in some examples, based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 generating a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”}, however, in this example, the user's utterance containing insufficient information to complete the structured query associated with the domain, therefore, other necessary parameters such as {Party Size} and {Date} not being specified in the structured query based on the information currently available, in some examples, natural language processing module 732 populating some parameters of the structured query with received contextual information, for example, in some examples, if the user requested a sushi restaurant “near me,” natural language processing module 732 populating a {location} parameter in the structured query with GPS coordinates from the user device. Based on the determination that the location parameter, which is required, is not part of the user request, it is determined that the user request’s inclusion of “near me” indicates that the GPS coordinates of the user constitute the location parameter.); in accordance with determining that the contextual information comprises the one or more indications of the version of the one or more parameters, using the version of the one or more parameters to fill the at least one input argument slot (see e.g., [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information, for example, in some examples, if the user requested a sushi restaurant “near me,” natural language processing module 732 populating a {location} parameter in the structured query with GPS coordinates from the user device. Based on determining that the user request’s inclusion of “near me” indicates that the GPS coordinates of the user constitute the location parameter, the GPS coordinates are used to populate the location parameter.); and in accordance with determining that the contextual information does not comprise the one or more indications of the version of the one or more parameters [party size and date], generating an output [question] that is usable for requesting subsequent input [answer] from the user to receive the version of the one or more parameters (see e.g., [0250] for in some examples, natural language processing module 732 passing the generated structured query (including any completed parameters) to task flow processing module 736 (“task flow processor”) and task flow processing module 736 being configured to receive the structured query from natural language processing module 732, complete the structured query, if necessary, and perform the actions required to “complete” the user's ultimate request and [0251] for in order to complete a structured query, task flow processing module 736 optionally needing to initiate additional dialogue with the user in order to obtain additional information, and/or disambiguate potentially ambiguous utterances and when such interactions are necessary, task flow processing module 736 invoking dialogue flow processing module 734 to engage in a dialogue with the user, continuing with the example above, when task flow processing module 736 invokes dialogue flow processing module 734 to determine the “party size” and “date” information for the structured query associated with the domain “restaurant reservation,” dialogue flow processing module 734 generating questions such as “For how many people?” and “On which day?” to pass to the user, and once answers are received from the user, dialogue flow processing module 734 then populating the structured query with the missing information, or pass the information to task flow processing module 736 to complete the missing information from the structured query. Based on determining that the context does not indicate the party size and date, a question is generated that requests an answer from the user to receive the party size and date.). As to claim 8, the limitations of parent claims 1 and 6 have been discussed above. Vescovi teaches in accordance with determining that the second subset comprises at least one input argument slot [date expected and time expected] that cannot be filled with the version of the one or more parameters, determining whether contextual information [tonight, in a couple of hours] included in the input query comprises one or more indications of the version of the one or more parameters [date and time derived from calendar and clock] (see e.g., [0281] for the inputs 806 associated with the “time expected” and “date expected” instructions 804 being optional, [0283] for the digital assistant recognizing that the word “tonight” is associated with the same date on which the user spoke the reply 812, and as a result obtains today's date from the calendar module 248 or other suitable source, and [0284] for responding “in a couple of hours,” the digital assistant disambiguating this response based on the current time, which is kept locally on the electronic device 200 and/or transmitted as a signal by a wireless carrier or other service provider and received at the electronic device 200, and the digital assistant adding two hours to the current time and then determining the date associated with that time (for example, if the current time is 11:20 p.m., then the addition of two hours to that time results in an expected arrival date one day later than the current date). Based on the determination that the date expected and time expected parameters, which are optional, are not part of the user request, it is determined that the user request’s inclusion of tonight indicates that today’s calendar date constitutes the expected date parameter. Also, it may be determined that the user request’s inclusion of “in a couple of hours” indicates that the addition of two hours to the current time constitutes the expected time parameter.); in accordance with determining that the contextual information comprises the one or more indications of the version of the one or more parameters, using the version of the one or more parameters to fill the at least one input argument slot (see e.g., FIG. 8C for Time expected being filled with 9:00PM and Date expected being filled with 10/29/2015. Based on determining that the user request’s inclusion of “tonight” or “in a couple of hours” indicates the date and time, the date expected and time expected placeholders are filled.); and in accordance with determining that the contextual information does not comprise the one or more indications of the version of the one or more parameters, populating the set of filled input argument slots with an empty slot for the at least one input argument slot and transmitting the set of filled input arguments slots to the execution engine (see e.g., [0281] for the inputs 806 associated with the “time expected” and “date expected” instructions 804 being optional and that is, the digital assistant having sufficient information to generate a plan with this plan template 802, even if no input 806 is received in association with the “time expected” and “date expected” instructions 804 and [0322] for the digital assistant then executing 940 the generated plan and the digital assistant using the plan to take action to fulfill the user request. Based on determining that the context does not indicate the time expected and date expected, the plan is generated and executed with those optional slots remaining empty.). As to claim 9, the limitations of parent claim 1 have been discussed above. Vescovi teaches executing, using the execution engine, the execution plan using the set of filled input argument slots to generate a response to the input query (see e.g., [0250] for natural language processing module 732 passing the generated structured query (including any completed parameters) to task flow processing module 736 (“task flow processor”) and task flow processing module 736 being configured to receive the structured query from natural language processing module 732, completing the structured query, if necessary, and performing the actions required to “complete” the user's ultimate request, [0252] for once task flow processing module 736 has completed the structured query for an actionable intent, task flow processing module 736 proceeding to perform the ultimate task associated with the actionable intent, accordingly, task flow processing module 736 executing the steps and instructions in the task flow model according to the specific parameters contained in the structured query, for example, the task flow model for the actionable intent of “restaurant reservation” including steps and instructions for contacting a restaurant and actually requesting a reservation for a particular party size at a particular time, and for example, using a structured query such as: {restaurant reservation, restaurant=ABC Café, date=3/12/2012, time=7pm, party size=5}, task flow processing module 736 performing the steps of: (1) logging onto a server of the ABC Café or a restaurant reservation system such as OPENTABLE®, (2) entering the date, time, and party size information in a form on the website, (3) submitting the form, and (4) making a calendar entry for the reservation in the user's calendar, [0255] for task flow processing module 736 being used to finally generate a response (i.e., an output to the user, or the completion of a task) to fulfill the user's intent and the generated response can be a dialogue response to the speech input that at least partially fulfills the user's intent, [0322] for the digital assistant then executing 940 the generated plan and the digital assistant using the plan to take action to fulfill the user request, and [0336] for the digital assistant notifying 988 the user after execution of the plan is complete and the digital assistant of Pierre displaying a message 826 at the electronic device 200: “Pierre, Tomas has arrived at your apartment. I let him in.” The task flow processor executes the execution plan using the filled placeholders to generate a response to the user request.); and transmitting the response to the user for facilitating an interaction involving the user (see e.g., [0255] for task flow processing module 736 being used to finally generate a response (i.e., an output to the user, or the completion of a task) to fulfill the user's intent and the generated response can be a dialogue response to the speech input that at least partially fulfills the user's intent and [0336] for the digital assistant notifying 988 the user after execution of the plan is complete and the digital assistant of Pierre displaying a message 826 at the electronic device 200: “Pierre, Tomas has arrived at your apartment. I let him in.” The response is transmitted to the user for facilitating an interaction involving the user, such as an interaction with a restaurant or a house guest.). As to claim 10, Vescovi teaches a system comprising: one or more processors (see e.g., [0061] for device 200 including processing units (CPUs) 220); and one or more computer-readable media storing instructions which, when executed by the one or more processors, cause the system to perform operations (see e.g., [0061] for device 200 including memory 202 (which optionally includes one or more computer-readable storage mediums) and [0066] for a non-transitory computer-readable storage medium of memory 202 being used to store instructions (e.g., for performing aspects of process 900, described below) for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions) comprising: receiving an input query from a user [user request], the input query comprising particular data [command, request, statement, narrative, and/or inquiry] (see e.g., [0052] for a digital assistant being capable of accepting a user request at least partially in the form of a natural language command, request, statement, narrative, and/or inquiry, typically, the user request seeking either an informational answer or performance of a task by the digital assistant, a user asking the digital assistant a question, such as “Where am I right now?,” and the user also requesting the performance of a task, for example, “Please invite my friends to my girlfriend's birthday party next week” and [0277] for the user requesting that the digital assistant let a visitor (in this example, Tomas) into his apartment when that visitor arrives); identifying, among one or more candidate actions [actionable intents], an action [task] based on the input query (see e.g., [0236] for natural language processing module 732 (“natural language processor”) of the digital assistant taking the sequence of words or tokens (“token sequence”) generated by STT processing module 730, and attempting to associate the token sequence with one or more “actionable intents” recognized by the digital assistant and an “actionable intent” representing a task that can be performed by the digital assistant, [0241] for an actionable intent node, along with its linked concept nodes, being described as a “domain,” and [0246] for natural language processing module 732 receiving the token sequence (e.g., a text string) from STT processing module 730, and determining what nodes are implicated by the words in the token sequence, in some examples, if a word or phrase in the token sequence is found to be associated with one or more nodes in ontology 760 (via vocabulary index 744), the word or phrase being able to “trigger” or “activate” those nodes, and based on the quantity and/or relative importance of the activated nodes, natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform. Among actionable intents, a task is identified based on the user request.); identifying a set of input argument slots [parameters, placeholders] associated with the action (see e.g., [0249] for once natural language processing module 732 identifies an actionable intent (or domain) based on the user request, natural language processing module 732 generating a structured query to represent the identified actionable intent, in some examples, the structured query including parameters for one or more nodes within the domain for the actionable intent, for example, the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, [0304] for the digital assistant determining 908 whether the user request corresponds to at least one of a plurality of plan templates 802, as set forth above, the plan templates 802 being associated with a variety of different actions, and for example, plan templates 802 including “let [guest] into my apartment when [guest] arrives,” “call a [cab/shared ride] for [guest] when [guest] leaves my house,” and “buy tickets for [movie] when they go on sale,” [0306] for if the user request of block 902 corresponds to at least one of a plurality of plan templates, then the digital assistant selecting 910 one of the plurality of plan templates 802 that best corresponds to the user request, and [0307] for one or more of the inputs 806 of the plan template 802 being placeholders awaiting information. Parameters/placeholders associated with a task are identified.); for each input argument slot of the set of input argument slots, filling the input argument slot by: determining whether one or more parameters corresponding with the input argument slot are derivable from the particular data (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, and based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 can generate a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”} and [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” and the user has specified that Tomas is the person to let in, so the visitor name “Tomas” being an input 806 to the plan template. Parameters are determined to be derivable from the request.), and in accordance with the one or more parameters corresponding with the input argument slot, (i) deriving the one or more parameters from the particular data and (ii) filling the input argument slot with a version of the one or more parameters (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, and based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 can generate a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”} and [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” and the user has specified that Tomas is the person to let in, so the visitor name “Tomas” being an input 806 to the plan template. Parameters are determined to be derivable from the request. Parameters are derived from the request and a version of each parameter fills the placeholders.); and transmitting an execution plan that comprises the action that includes the set of filled input arguments slots to an execution engine [task flow processor] configured to execute the action for generating a response to the input query (see e.g., [0250] for natural language processing module 732 passing the generated structured query (including any completed parameters) to task flow processing module 736 (“task flow processor”) and task flow processing module 736 being configured to receive the structured query from natural language processing module 732, completing the structured query, if necessary, and performing the actions required to “complete” the user's ultimate request, [0252] for once task flow processing module 736 has completed the structured query for an actionable intent, task flow processing module 736 proceeding to perform the ultimate task associated with the actionable intent, accordingly, task flow processing module 736 executing the steps and instructions in the task flow model according to the specific parameters contained in the structured query, for example, the task flow model for the actionable intent of “restaurant reservation” including steps and instructions for contacting a restaurant and actually requesting a reservation for a particular party size at a particular time, and for example, using a structured query such as: {restaurant reservation, restaurant=ABC Café, date=3/12/2012, time=7pm, party size=5}, task flow processing module 736 performing the steps of: (1) logging onto a server of the ABC Café or a restaurant reservation system such as OPENTABLE®, (2) entering the date, time, and party size information in a form on the website, (3) submitting the form, and (4) making a calendar entry for the reservation in the user's calendar, [0255] for task flow processing module 736 being used to finally generate a response (i.e., an output to the user, or the completion of a task) to fulfill the user's intent and the generated response can be a dialogue response to the speech input that at least partially fulfills the user's intent, [0322] for the digital assistant then executing 940 the generated plan and the digital assistant using the plan to take action to fulfill the user request, and [0336] for the digital assistant notifying 988 the user after execution of the plan is complete and the digital assistant of Pierre displaying a message 826 at the electronic device 200: “Pierre, Tomas has arrived at your apartment. I let him in.” An execution plan comprising the task that includes the filled placeholders is sent to a task flow processor to execute the task for generating a response to the user request.). Vescovi does not specifically disclose identifying a set of input argument slots within a schema associated with the action; and filling the input argument slot with a version of the one or more parameters that conforms to the schema. However, Wang teaches identifying a set of input argument slots [arrival city and departure city slots] within a schema associated with the action [ShowFlight task] (see e.g., [0033] for FIG. 3 being one illustrative embodiment of an application schema 300, schema 300 simply stating that the application supports two types of information queries: those for flight information (the ShowFlight task) and those for ground transportation information (the GroundTransport task), and in order to obtain flight information, a user providing information about the arrival city (ACity) and/or the departure city (DCity) slots, so the system can search for the information according to the user's specification. The arrival city and departure city slots are identified within a schema associated with the ShowFlight task.); and filling the input argument slot with a version [type] of the one or more parameters [Seattle and New York] that conforms to the schema (see e.g., [0033] for the type of a slot specifying the requirement for its "fillers" and for both the ACity and DCity slots, the filler being an expression modeled in the grammar library that refers to an object of the type "City" and [0034] for when using a grammar to model an input sentence in the domain specified by the schema, for example, "display flights from Seattle to New York please" for the "ShowFlight" task in the schema illustrated in FIG. 3, different components being introduced in the grammar to cover different parts in the sentence and slot fillers covering the words and/or word sequences that specify the contents of the slots (in the example, "Seattle" as the filler for "DCity" and "New York" as the filler for "ACity". The arrival city slot is filled with New York, which is a city type, and the departure city slot is filled with Seattle, which is a city type.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi to identify a set of input argument slots within a schema associated with the action; and fill the input argument slot with a version of the one or more parameters that conforms to the schema, as taught by Wang, for the benefit of defining a semantic structure of an application domain (see e.g., Wang, [0032]). As to claim 14, the limitations of parent claim 10 have been discussed above. Vescovi teaches determining a first subset of the set of input argument slots, wherein the first subset comprises input argument slots that are required to execute the action (see e.g., [0307] for one or more of the inputs 806 of the plan template 802 being placeholders awaiting information and where at least one of those inputs 806 is not optional in order for a plan to be generated, sufficient information existing where information is available to the digital assistant for the virtual assistant to populate each non-optional input field. A subset of placeholders that are required to execute the task is determined.); and determining a second subset of the set of input argument slots, wherein the second subset comprises input argument slots that are optional to execute the action (see e.g., [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” in this example, the inputs 806 associated with the “time expected” and “date expected” instructions 804 being optional, and that is, the digital assistant having sufficient information to generate a plan with this plan template 802, even if no input 806 is received in association with the “time expected” and “date expected” instructions 804. A subset of placeholders that are optional to execute the task is determined.). As to claim 15, the limitations of parent claims 10 and 14 have been discussed above. Vescovi teaches in accordance with determining that the first subset comprises at least one input argument slot [location] that cannot be filled with the version of the one or more parameters, determining whether contextual information [near me] included in the input query comprises one or more indications of the version of the one or more parameters [GPS coordinates of user] (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, according to the ontology, a structured query for a “restaurant reservation” domain including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, in some examples, based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 generating a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”}, however, in this example, the user's utterance containing insufficient information to complete the structured query associated with the domain, therefore, other necessary parameters such as {Party Size} and {Date} not being specified in the structured query based on the information currently available, in some examples, natural language processing module 732 populating some parameters of the structured query with received contextual information, for example, in some examples, if the user requested a sushi restaurant “near me,” natural language processing module 732 populating a {location} parameter in the structured query with GPS coordinates from the user device. Based on the determination that the location parameter, which is required, is not part of the user request, it is determined that the user request’s inclusion of “near me” indicates that the GPS coordinates of the user constitute the location parameter.); in accordance with determining that the contextual information comprises the one or more indications of the version of the one or more parameters, using the version of the one or more parameters to fill the at least one input argument slot (see e.g., [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information, for example, in some examples, if the user requested a sushi restaurant “near me,” natural language processing module 732 populating a {location} parameter in the structured query with GPS coordinates from the user device. Based on determining that the user request’s inclusion of “near me” indicates that the GPS coordinates of the user constitute the location parameter, the GPS coordinates are used to populate the location parameter.); and in accordance with determining that the contextual information does not comprise the one or more indications of the version of the one or more parameters [party size and date], generating an output [question] that is usable for requesting subsequent input [answer] from the user to receive the version of the one or more parameters (see e.g., [0250] for in some examples, natural language processing module 732 passing the generated structured query (including any completed parameters) to task flow processing module 736 (“task flow processor”) and task flow processing module 736 being configured to receive the structured query from natural language processing module 732, complete the structured query, if necessary, and perform the actions required to “complete” the user's ultimate request and [0251] for in order to complete a structured query, task flow processing module 736 optionally needing to initiate additional dialogue with the user in order to obtain additional information, and/or disambiguate potentially ambiguous utterances and when such interactions are necessary, task flow processing module 736 invoking dialogue flow processing module 734 to engage in a dialogue with the user, continuing with the example above, when task flow processing module 736 invokes dialogue flow processing module 734 to determine the “party size” and “date” information for the structured query associated with the domain “restaurant reservation,” dialogue flow processing module 734 generating questions such as “For how many people?” and “On which day?” to pass to the user, and once answers are received from the user, dialogue flow processing module 734 then populating the structured query with the missing information, or pass the information to task flow processing module 736 to complete the missing information from the structured query. Based on determining that the context does not indicate the party size and date, a question is generated that requests an answer from the user to receive the party size and date.). As to claim 16, the limitations of parent claims 10 and 14 have been discussed above. Vescovi teaches in accordance with determining that the second subset comprises at least one input argument slot [date expected and time expected] that cannot be filled with the version of the one or more parameters, determining whether contextual information [tonight, in a couple of hours] included in the input query comprises one or more indications of the version of the one or more parameters [date and time derived from calendar and clock] (see e.g., [0281] for the inputs 806 associated with the “time expected” and “date expected” instructions 804 being optional, [0283] for the digital assistant recognizing that the word “tonight” is associated with the same date on which the user spoke the reply 812, and as a result obtains today's date from the calendar module 248 or other suitable source, and [0284] for responding “in a couple of hours,” the digital assistant disambiguating this response based on the current time, which is kept locally on the electronic device 200 and/or transmitted as a signal by a wireless carrier or other service provider and received at the electronic device 200, and the digital assistant adding two hours to the current time and then determining the date associated with that time (for example, if the current time is 11:20 p.m., then the addition of two hours to that time results in an expected arrival date one day later than the current date). Based on the determination that the date expected and time expected parameters, which are optional, are not part of the user request, it is determined that the user request’s inclusion of tonight indicates that today’s calendar date constitutes the expected date parameter. Also, it may be determined that the user request’s inclusion of “in a couple of hours” indicates that the addition of two hours to the current time constitutes the expected time parameter.); in accordance with determining that the contextual information comprises the one or more indications of the version of the one or more parameters, using the version of the one or more parameters to fill the at least one input argument slot (see e.g., FIG. 8C for Time expected being filled with 9:00PM and Date expected being filled with 10/29/2015. Based on determining that the user request’s inclusion of “tonight” or “in a couple of hours” indicates the date and time, the date expected and time expected placeholders are filled.); and in accordance with determining that the contextual information does not comprise the one or more indications of the version of the one or more parameters, populating the set of filled input argument slots with an empty slot for the at least one input argument slot and transmitting the set of filled input arguments slots to the execution engine (see e.g., [0281] for the inputs 806 associated with the “time expected” and “date expected” instructions 804 being optional and that is, the digital assistant having sufficient information to generate a plan with this plan template 802, even if no input 806 is received in association with the “time expected” and “date expected” instructions 804 and [0322] for the digital assistant then executing 940 the generated plan and the digital assistant using the plan to take action to fulfill the user request. Based on determining that the context does not indicate the time expected and date expected, the plan is generated and executed with those optional slots remaining empty.). As to claim 17, the limitations of parent claim 10 have been discussed above. Vescovi teaches executing, using the execution engine, the execution plan using the set of filled input argument slots to generate a response to the input query (see e.g., [0250] for natural language processing module 732 passing the generated structured query (including any completed parameters) to task flow processing module 736 (“task flow processor”) and task flow processing module 736 being configured to receive the structured query from natural language processing module 732, completing the structured query, if necessary, and performing the actions required to “complete” the user's ultimate request, [0252] for once task flow processing module 736 has completed the structured query for an actionable intent, task flow processing module 736 proceeding to perform the ultimate task associated with the actionable intent, accordingly, task flow processing module 736 executing the steps and instructions in the task flow model according to the specific parameters contained in the structured query, for example, the task flow model for the actionable intent of “restaurant reservation” including steps and instructions for contacting a restaurant and actually requesting a reservation for a particular party size at a particular time, and for example, using a structured query such as: {restaurant reservation, restaurant=ABC Café, date=3/12/2012, time=7pm, party size=5}, task flow processing module 736 performing the steps of: (1) logging onto a server of the ABC Café or a restaurant reservation system such as OPENTABLE®, (2) entering the date, time, and party size information in a form on the website, (3) submitting the form, and (4) making a calendar entry for the reservation in the user's calendar, [0255] for task flow processing module 736 being used to finally generate a response (i.e., an output to the user, or the completion of a task) to fulfill the user's intent and the generated response can be a dialogue response to the speech input that at least partially fulfills the user's intent, [0322] for the digital assistant then executing 940 the generated plan and the digital assistant using the plan to take action to fulfill the user request, and [0336] for the digital assistant notifying 988 the user after execution of the plan is complete and the digital assistant of Pierre displaying a message 826 at the electronic device 200: “Pierre, Tomas has arrived at your apartment. I let him in.” The task flow processor executes the execution plan using the filled placeholders to generate a response to the user request.); and transmitting the response to the user for facilitating an interaction involving the user (see e.g., [0255] for task flow processing module 736 being used to finally generate a response (i.e., an output to the user, or the completion of a task) to fulfill the user's intent and the generated response can be a dialogue response to the speech input that at least partially fulfills the user's intent and [0336] for the digital assistant notifying 988 the user after execution of the plan is complete and the digital assistant of Pierre displaying a message 826 at the electronic device 200: “Pierre, Tomas has arrived at your apartment. I let him in.” The response is transmitted to the user for facilitating an interaction involving the user, such as an interaction with a restaurant or a house guest.). As to claim 18, Vescovi teaches one or more non-transitory computer-readable media storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations (see e.g., [0061] for device 200 including memory 202 (which optionally includes one or more computer-readable storage mediums) and [0066] for a non-transitory computer-readable storage medium of memory 202 being used to store instructions (e.g., for performing aspects of process 900, described below) for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions) comprising: receiving an input query from a user [user request], the input query comprising particular data [command, request, statement, narrative, and/or inquiry] (see e.g., [0052] for a digital assistant being capable of accepting a user request at least partially in the form of a natural language command, request, statement, narrative, and/or inquiry, typically, the user request seeking either an informational answer or performance of a task by the digital assistant, a user asking the digital assistant a question, such as “Where am I right now?,” and the user also requesting the performance of a task, for example, “Please invite my friends to my girlfriend's birthday party next week” and [0277] for the user requesting that the digital assistant let a visitor (in this example, Tomas) into his apartment when that visitor arrives); identifying, among one or more candidate actions [actionable intents], an action [task] based on the input query (see e.g., [0236] for natural language processing module 732 (“natural language processor”) of the digital assistant taking the sequence of words or tokens (“token sequence”) generated by STT processing module 730, and attempting to associate the token sequence with one or more “actionable intents” recognized by the digital assistant and an “actionable intent” representing a task that can be performed by the digital assistant, [0241] for an actionable intent node, along with its linked concept nodes, being described as a “domain,” and [0246] for natural language processing module 732 receiving the token sequence (e.g., a text string) from STT processing module 730, and determining what nodes are implicated by the words in the token sequence, in some examples, if a word or phrase in the token sequence is found to be associated with one or more nodes in ontology 760 (via vocabulary index 744), the word or phrase being able to “trigger” or “activate” those nodes, and based on the quantity and/or relative importance of the activated nodes, natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform. Among actionable intents, a task is identified based on the user request.); identifying a set of input argument slots [parameters, placeholders] associated with the action (see e.g., [0249] for once natural language processing module 732 identifies an actionable intent (or domain) based on the user request, natural language processing module 732 generating a structured query to represent the identified actionable intent, in some examples, the structured query including parameters for one or more nodes within the domain for the actionable intent, for example, the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, [0304] for the digital assistant determining 908 whether the user request corresponds to at least one of a plurality of plan templates 802, as set forth above, the plan templates 802 being associated with a variety of different actions, and for example, plan templates 802 including “let [guest] into my apartment when [guest] arrives,” “call a [cab/shared ride] for [guest] when [guest] leaves my house,” and “buy tickets for [movie] when they go on sale,” [0306] for if the user request of block 902 corresponds to at least one of a plurality of plan templates, then the digital assistant selecting 910 one of the plurality of plan templates 802 that best corresponds to the user request, and [0307] for one or more of the inputs 806 of the plan template 802 being placeholders awaiting information. Parameters/placeholders associated with a task are identified.); for each input argument slot of the set of input argument slots, filling the input argument slot by: determining whether one or more parameters corresponding with the input argument slot are derivable from the particular data (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, and based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 can generate a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”} and [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” and the user has specified that Tomas is the person to let in, so the visitor name “Tomas” being an input 806 to the plan template. Parameters are determined to be derivable from the request.), and in accordance with the one or more parameters corresponding with the input argument slot, (i) deriving the one or more parameters from the particular data and (ii) filling the input argument slot with a version of the one or more parameters (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, and according to the ontology, a structured query for a “restaurant reservation” domain optionally including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, and based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 can generate a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”} and [0281] for as illustrated in the example of FIG. 8A, the user requesting the digital assistant to “let Tomas in my apartment when he arrives,” the digital assistant determining that the user request corresponds to the plan template 802 described by FIG. 8C, “let a visitor into my home,” and the user has specified that Tomas is the person to let in, so the visitor name “Tomas” being an input 806 to the plan template. Parameters are determined to be derivable from the request. Parameters are derived from the request and a version of each parameter fills the placeholders.); and transmitting an execution plan that comprises the action that includes the set of filled input arguments slots to an execution engine [task flow processor] configured to execute the action for generating a response to the input query (see e.g., [0250] for natural language processing module 732 passing the generated structured query (including any completed parameters) to task flow processing module 736 (“task flow processor”) and task flow processing module 736 being configured to receive the structured query from natural language processing module 732, completing the structured query, if necessary, and performing the actions required to “complete” the user's ultimate request, [0252] for once task flow processing module 736 has completed the structured query for an actionable intent, task flow processing module 736 proceeding to perform the ultimate task associated with the actionable intent, accordingly, task flow processing module 736 executing the steps and instructions in the task flow model according to the specific parameters contained in the structured query, for example, the task flow model for the actionable intent of “restaurant reservation” including steps and instructions for contacting a restaurant and actually requesting a reservation for a particular party size at a particular time, and for example, using a structured query such as: {restaurant reservation, restaurant=ABC Café, date=3/12/2012, time=7pm, party size=5}, task flow processing module 736 performing the steps of: (1) logging onto a server of the ABC Café or a restaurant reservation system such as OPENTABLE®, (2) entering the date, time, and party size information in a form on the website, (3) submitting the form, and (4) making a calendar entry for the reservation in the user's calendar, [0255] for task flow processing module 736 being used to finally generate a response (i.e., an output to the user, or the completion of a task) to fulfill the user's intent and the generated response can be a dialogue response to the speech input that at least partially fulfills the user's intent, [0322] for the digital assistant then executing 940 the generated plan and the digital assistant using the plan to take action to fulfill the user request, and [0336] for the digital assistant notifying 988 the user after execution of the plan is complete and the digital assistant of Pierre displaying a message 826 at the electronic device 200: “Pierre, Tomas has arrived at your apartment. I let him in.” An execution plan comprising the task that includes the filled placeholders is sent to a task flow processor to execute the task for generating a response to the user request.). Vescovi does not specifically disclose identifying a set of input argument slots within a schema associated with the action; and filling the input argument slot with a version of the one or more parameters that conforms to the schema. However, Wang teaches identifying a set of input argument slots [arrival city and departure city slots] within a schema associated with the action [ShowFlight task] (see e.g., [0033] for FIG. 3 being one illustrative embodiment of an application schema 300, schema 300 simply stating that the application supports two types of information queries: those for flight information (the ShowFlight task) and those for ground transportation information (the GroundTransport task), and in order to obtain flight information, a user providing information about the arrival city (ACity) and/or the departure city (DCity) slots, so the system can search for the information according to the user's specification. The arrival city and departure city slots are identified within a schema associated with the ShowFlight task.); and filling the input argument slot with a version [type] of the one or more parameters [Seattle and New York] that conforms to the schema (see e.g., [0033] for the type of a slot specifying the requirement for its "fillers" and for both the ACity and DCity slots, the filler being an expression modeled in the grammar library that refers to an object of the type "City" and [0034] for when using a grammar to model an input sentence in the domain specified by the schema, for example, "display flights from Seattle to New York please" for the "ShowFlight" task in the schema illustrated in FIG. 3, different components being introduced in the grammar to cover different parts in the sentence and slot fillers covering the words and/or word sequences that specify the contents of the slots (in the example, "Seattle" as the filler for "DCity" and "New York" as the filler for "ACity". The arrival city slot is filled with New York, which is a city type, and the departure city slot is filled with Seattle, which is a city type.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi to identify a set of input argument slots within a schema associated with the action; and fill the input argument slot with a version of the one or more parameters that conforms to the schema, as taught by Wang, for the benefit of defining a semantic structure of an application domain (see e.g., Wang, [0032]). Claims 2-4, 11, 12, 19, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Vescovi et al. (US Publication No. 2017/0132199) in view of Wang et al. (US Publication No. 2006/0074631) as applied to claims 1, 6-10, and 14-18 above, and further in view of Song et al. (NPL entitled RestGPT: Connecting Large Language Models with Real-World RESTful APIs, dated August 27, 2023). As to claim 2, the limitations of parent claim 1 have been discussed above. Vescovi teaches wherein receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (i) a conversation history [prior dialogue] associated with the user, and wherein identifying the action comprises identifying the action based on the input query and the conversation history (see e.g., [0237] for in addition to the sequence of words or tokens obtained from STT processing module 730, natural language processing module 732 also receiving contextual information associated with the user request, e.g., from I/O processing module 728, the natural language processing module 732 using the contextual information to clarify, supplement, and/or further define the information contained in the token sequence received from STT processing module 730, and the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user, [0246] for natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform, and [0247] for natural language processing module 732 using the user-specific information to supplement the information contained in the user input to further define the user intent. The natural language processing module receives prior dialogue associated with the user and identifies a task based on the user request and the prior dialogue.). Vescovi in view of Wang does not specifically disclose wherein receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan, and wherein identifying the action comprises identifying the action based on the historical execution plan. However, Song teaches receiving the input query [user instruction] further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan [previous NL plan], and wherein identifying the action [NL sub-task] comprises identifying the action based on the historical execution plan (see e.g., p. 4 for in each step t, the planner P leveraging commonsense knowledge to generate a natural language (NL) sub-task pt based on the user instruction q, previous NL plans (p1,...,pt−1), and execution results (r1,...,rt−1), thereby constructing a high-level NL plan. The planner receives the user instruction with a previous NL plan. The NL sub-task is identified based on the previous NL plan.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan, and wherein identifying the action comprises identifying the action based on the historical execution plan, as taught by Song, for the benefit of significantly enhancing the ability to decompose tasks (see e.g., Song, p. 5). As to claim 3, the limitations of parent claims 1 and 2 have been discussed above. Vescovi teaches wherein identifying the action further comprises selecting the action, among the candidate actions, to be executed based on the input query and the conversation history (see e.g., [0237] for in addition to the sequence of words or tokens obtained from STT processing module 730, natural language processing module 732 also receiving contextual information associated with the user request, e.g., from I/O processing module 728, the natural language processing module 732 using the contextual information to clarify, supplement, and/or further define the information contained in the token sequence received from STT processing module 730, and the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user, [0246] for natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform, and [0247] for natural language processing module 732 using the user-specific information to supplement the information contained in the user input to further define the user intent. The natural language processing module identifies a task, among the actionable intents, to be executed based on the user request and the prior dialogue.). Vescovi in view of Wang does not specifically disclose wherein identifying the action further comprises using a generative artificial intelligence model to select the action to be executed based on the historical execution plan. However, Song teaches wherein identifying the action further comprises using a generative artificial intelligence model [RestGPT] to select the action to be executed based on the historical execution plan (see e.g., p.2 for RestGPT comprising three main modules: a Planner, an API Selector, and an Executor and p. 4 for in each step t, the planner P leveraging commonsense knowledge to generate a natural language (NL) sub-task pt based on the user instruction q, previous NL plans (p1,...,pt−1), and execution results (r1,...,rt−1), thereby constructing a high-level NL plan. Identifying the subtask includes using RestGPT to select the subtask to be executed based on the previous NL plan.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein identifying the action further comprises using a generative artificial intelligence model to select the action to be executed based on the historical execution plan, as taught by Song, for the benefit of significantly enhancing the ability to decompose tasks (see e.g., Song, p. 5). As to claim 4, the limitations of parent claims 1-3 have been discussed above. Vescovi teaches determining that at least one input argument slot of the set of input argument slots cannot be filled using the one or more parameters, wherein the one or more parameters is missing at least one parameter (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, according to the ontology, a structured query for a “restaurant reservation” domain including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, in some examples, based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 generating a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”}, and however, in this example, the user's utterance containing insufficient information to complete the structured query associated with the domain. It is determined that parameters are missing.); extracting the at least one parameter from the conversation history (see e.g., [0237] for the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user and [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information. A missing parameter is extracted from the prior dialogue.); and filling the at least one input argument slot using the at least one parameter (see e.g., [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information. The missing parameters are filled.). Vescovi in view of Wang does not specifically disclose extracting, using the generative artificial intelligence model, the at least one parameter. However, Song teaches extracting, using the generative artificial intelligence model, the at least one parameter (see e.g., p.2 for RestGPT comprising three main modules: a Planner, an API Selector, and an Executor and p. 5 for the executor E consisting of a caller and a response parser and the caller reading the API documents carefully and generating correct parameters or request body for the API call. RestGPT extracts the parameter.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang to extract, using the generative artificial intelligence model, the at least one parameter, as taught by Song, for the benefit of calling RESTful APIs (see e.g., Song, abstract). As to claim 11, the limitations of parent claim 10 have been discussed above. Vescovi teaches wherein the operation of receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (i) a conversation history [prior dialogue] associated with the user, and wherein identifying the action comprises identifying the action based on the input query and the conversation history (see e.g., [0237] for in addition to the sequence of words or tokens obtained from STT processing module 730, natural language processing module 732 also receiving contextual information associated with the user request, e.g., from I/O processing module 728, the natural language processing module 732 using the contextual information to clarify, supplement, and/or further define the information contained in the token sequence received from STT processing module 730, and the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user, [0246] for natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform, and [0247] for natural language processing module 732 using the user-specific information to supplement the information contained in the user input to further define the user intent. The natural language processing module receives prior dialogue associated with the user and identifies a task based on the user request and the prior dialogue.). Vescovi in view of Wang does not specifically disclose wherein the operation of receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan, and wherein identifying the action comprises identifying the action based on the historical execution plan. However, Song teaches wherein the operation of receiving the input query [user instruction] further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan [previous NL plan], and wherein identifying the action [NL sub-task] comprises identifying the action based on the historical execution plan (see e.g., p. 4 for in each step t, the planner P leveraging commonsense knowledge to generate a natural language (NL) sub-task pt based on the user instruction q, previous NL plans (p1,...,pt−1), and execution results (r1,...,rt−1), thereby constructing a high-level NL plan. The planner receives the user instruction with a previous NL plan. The NL sub-task is identified based on the previous NL plan.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein the operation of receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan, and wherein identifying the action comprises identifying the action based on the historical execution plan, as taught by Song, for the benefit of significantly enhancing the ability to decompose tasks (see e.g., Song, p. 5). As to claim 12, the limitations of parent claims 10 and 11 have been discussed above. Vescovi teaches wherein the operation of identifying the action further comprises selecting the action, among the candidate actions, to be executed based on the input query and the conversation history (see e.g., [0237] for in addition to the sequence of words or tokens obtained from STT processing module 730, natural language processing module 732 also receiving contextual information associated with the user request, e.g., from I/O processing module 728, the natural language processing module 732 using the contextual information to clarify, supplement, and/or further define the information contained in the token sequence received from STT processing module 730, and the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user, [0246] for natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform, and [0247] for natural language processing module 732 using the user-specific information to supplement the information contained in the user input to further define the user intent. The natural language processing module identifies a task, among the actionable intents, to be executed based on the user request and the prior dialogue.), and wherein the operations further comprise: determining that at least one input argument slot of the set of input argument slots cannot be filled using the one or more parameters, wherein the one or more parameters is missing at least one parameter (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, according to the ontology, a structured query for a “restaurant reservation” domain including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, in some examples, based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 generating a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”}, and however, in this example, the user's utterance containing insufficient information to complete the structured query associated with the domain. It is determined that parameters are missing.); extracting the at least one parameter from the conversation history (see e.g., [0237] for the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user and [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information. A missing parameter is extracted from the prior dialogue.); and filling the at least one input argument slot using the at least one parameter (see e.g., [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information. The missing parameters are filled.). Vescovi in view of Wang does not specifically disclose wherein the operation of identifying the action further comprises using a generative artificial intelligence model to select the action to be executed based on the historical execution plan; and extracting, using the generative artificial intelligence model, the at least one parameter. However, Song teaches wherein the operation of identifying the action further comprises using a generative artificial intelligence model [RestGPT] to select the action to be executed based on the historical execution plan (see e.g., p.2 for RestGPT comprising three main modules: a Planner, an API Selector, and an Executor and p. 4 for in each step t, the planner P leveraging commonsense knowledge to generate a natural language (NL) sub-task pt based on the user instruction q, previous NL plans (p1,...,pt−1), and execution results (r1,...,rt−1), thereby constructing a high-level NL plan. Identifying the subtask includes using RestGPT to select the subtask to be executed based on the previous NL plan.); and extracting, using the generative artificial intelligence model, the at least one parameter (see e.g., p.2 for RestGPT comprising three main modules: a Planner, an API Selector, and an Executor and p. 5 for the executor E consisting of a caller and a response parser and the caller reading the API documents carefully and generating correct parameters or request body for the API call. RestGPT extracts the parameter.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein the operation of identifying the action further comprises using a generative artificial intelligence model to select the action to be executed based on the historical execution plan; and to extract, using the generative artificial intelligence model, the at least one parameter, as taught by Song, for the benefit of calling RESTful APIs (see e.g., Song, abstract). As to claim 19, the limitations of parent claim 18 have been discussed above. Vescovi teaches wherein the operation of receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (i) a conversation history [prior dialogue] associated with the user, and wherein identifying the action comprises identifying the action based on the input query and the conversation history (see e.g., [0237] for in addition to the sequence of words or tokens obtained from STT processing module 730, natural language processing module 732 also receiving contextual information associated with the user request, e.g., from I/O processing module 728, the natural language processing module 732 using the contextual information to clarify, supplement, and/or further define the information contained in the token sequence received from STT processing module 730, and the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user, [0246] for natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform, and [0247] for natural language processing module 732 using the user-specific information to supplement the information contained in the user input to further define the user intent. The natural language processing module receives prior dialogue associated with the user and identifies a task based on the user request and the prior dialogue.). Vescovi in view of Wang does not specifically disclose wherein the operation of receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan, and wherein identifying the action comprises identifying the action based on the historical execution plan. However, Song teaches wherein the operation of receiving the input query [user instruction] further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan [previous NL plan], and wherein identifying the action [NL sub-task] comprises identifying the action based on the historical execution plan (see e.g., p. 4 for in each step t, the planner P leveraging commonsense knowledge to generate a natural language (NL) sub-task pt based on the user instruction q, previous NL plans (p1,...,pt−1), and execution results (r1,...,rt−1), thereby constructing a high-level NL plan. The planner receives the user instruction with a previous NL plan. The NL sub-task is identified based on the previous NL plan.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein the operation of receiving the input query further comprises receiving contextual information, wherein the contextual information comprises (ii) a historical execution plan, and wherein identifying the action comprises identifying the action based on the historical execution plan, as taught by Song, for the benefit of significantly enhancing the ability to decompose tasks (see e.g., Song, p. 5). As to claim 20, the limitations of parent claims 18 and 19 have been discussed above. Vescovi teaches wherein the operation of identifying the action further comprises selecting the action, among the candidate actions, to be executed based on the input query and the conversation history (see e.g., [0237] for in addition to the sequence of words or tokens obtained from STT processing module 730, natural language processing module 732 also receiving contextual information associated with the user request, e.g., from I/O processing module 728, the natural language processing module 732 using the contextual information to clarify, supplement, and/or further define the information contained in the token sequence received from STT processing module 730, and the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user, [0246] for natural language processing module 732 selecting one of the actionable intents as the task that the user intended the digital assistant to perform, and [0247] for natural language processing module 732 using the user-specific information to supplement the information contained in the user input to further define the user intent. The natural language processing module identifies a task, among the actionable intents, to be executed based on the user request and the prior dialogue.), and wherein the operations further comprise: determining that at least one input argument slot of the set of input argument slots cannot be filled using the one or more parameters, wherein the one or more parameters is missing at least one parameter (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, according to the ontology, a structured query for a “restaurant reservation” domain including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, in some examples, based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 generating a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”}, and however, in this example, the user's utterance containing insufficient information to complete the structured query associated with the domain. It is determined that parameters are missing.); extracting the at least one parameter from the conversation history (see e.g., [0237] for the contextual information including prior interactions (e.g., dialogue) between the digital assistant and the user and [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information. A missing parameter is extracted from the prior dialogue.); and filling the at least one input argument slot using the at least one parameter (see e.g., [0249] for natural language processing module 732 populating some parameters of the structured query with received contextual information. The missing parameters are filled.). Vescovi in view of Wang does not specifically disclose wherein the operation of identifying the action further comprises using a generative artificial intelligence model to select the action to be executed based on the historical execution plan; and extracting, using the generative artificial intelligence model, the at least one parameter. However, Song teaches wherein the operation of identifying the action further comprises using a generative artificial intelligence model [RestGPT] to select the action to be executed based on the historical execution plan (see e.g., p.2 for RestGPT comprising three main modules: a Planner, an API Selector, and an Executor and p. 4 for in each step t, the planner P leveraging commonsense knowledge to generate a natural language (NL) sub-task pt based on the user instruction q, previous NL plans (p1,...,pt−1), and execution results (r1,...,rt−1), thereby constructing a high-level NL plan. Identifying the subtask includes using RestGPT to select the subtask to be executed based on the previous NL plan.); and extracting, using the generative artificial intelligence model, the at least one parameter (see e.g., p.2 for RestGPT comprising three main modules: a Planner, an API Selector, and an Executor and p. 5 for the executor E consisting of a caller and a response parser and the caller reading the API documents carefully and generating correct parameters or request body for the API call. RestGPT extracts the parameter.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein the operation of identifying the action further comprises using a generative artificial intelligence model to select the action to be executed based on the historical execution plan; and to extract, using the generative artificial intelligence model, the at least one parameter, as taught by Song, for the benefit of calling RESTful APIs (see e.g., Song, abstract). Claims 5 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Vescovi et al. (US Publication No. 2017/0132199) in view of Wang et al. (US Publication No. 2006/0074631) as applied to claims 1, 6-10, and 14-18 above, and further in view of Ackerman et al. (US Patent No. 7,680,742). As to claim 5, the limitations of parent claim 1 have been discussed above. Vescovi teaches determining that at least one input argument slot of the set of input argument slots cannot be filled using the one or more parameters (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, according to the ontology, a structured query for a “restaurant reservation” domain including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, in some examples, based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 generating a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”}, and however, in this example, the user's utterance containing insufficient information to complete the structured query associated with the domain. It is determined that one of the parameters cannot be filled.) Vescovi in view of Wang does not specifically disclose wherein the version of the one or more parameters does not conform to the schema; adjusting the version of the one or more parameters to conform to the schema; and filling the at least one input argument slot using the adjusted version of the one or more parameters in the schema. However, Ackerman teaches wherein the version of the one or more parameters does not conform to the schema (see e.g., col. 8, lines 51-67 for a network-based process beginning with a license request (step 515) where the manufacturer, or one of its resellers, receives a customer order 510 for a new license or a license upgrade, next follows license generation (step 520), where a license 525 conforming to the customer's order is generated by formatting the required data in accordance with a license XML schema 527, and the schema formatting the license information into the arrangement of fields, as described in FIG. 4, and validating the information as conforming to the established data-type parameters. The version of the parameters received from the customer order does not conform to the schema.); adjusting the version of the one or more parameters to conform to the schema (see e.g., col. 8, lines 51-67 for a network-based process beginning with a license request (step 515) where the manufacturer, or one of its resellers, receives a customer order 510 for a new license or a license upgrade, next follows license generation (step 520), where a license 525 conforming to the customer's order is generated by formatting the required data in accordance with a license XML schema 527, and the schema formatting the license information into the arrangement of fields, as described in FIG. 4, and validating the information as conforming to the established data-type parameters. The version of the parameters received from the customer order are adjusted to conform to the schema.); and filling the at least one input argument slot [field] using the adjusted version of the one or more parameters in the schema (see e.g., col. 8, lines 51-67 for a network-based process beginning with a license request (step 515) where the manufacturer, or one of its resellers, receives a customer order 510 for a new license or a license upgrade, next follows license generation (step 520), where a license 525 conforming to the customer's order is generated by formatting the required data in accordance with a license XML schema 527, and the schema formatting the license information into the arrangement of fields, as described in FIG. 4, and validating the information as conforming to the established data-type parameters. The fields are filled using the adjusted version of the parameters in the schema.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein the version of the one or more parameters does not conform to the schema; to adjust the version of the one or more parameters to conform to the schema; and to fill the at least one input argument slot using the adjusted version of the one or more parameters in the schema, as taught by Ackerman, for the benefit of validating the information as conforming to the established data-type parameters (see e.g., Ackerman, col. 8, lines 51-67). As to claim 13, the limitations of parent claim 10 have been discussed above. Vescovi teaches determining that at least one input argument slot of the set of input argument slots cannot be filled using the one or more parameters (see e.g., [0249] for the user saying “Make me a dinner reservation at a sushi place at 7,” in this case, natural language processing module 732 being able to correctly identify the actionable intent to be “restaurant reservation” based on the user input, according to the ontology, a structured query for a “restaurant reservation” domain including parameters such as {Cuisine}, {Time}, {Date}, {Party Size}, and the like, in some examples, based on the speech input and the text derived from the speech input using STT processing module 730, natural language processing module 732 generating a partial structured query for the restaurant reservation domain, where the partial structured query includes the parameters {Cuisine=“Sushi”} and {Time=“7pm”}, and however, in this example, the user's utterance containing insufficient information to complete the structured query associated with the domain. It is determined that one of the parameters cannot be filled.) Vescovi in view of Wang does not specifically disclose wherein the version of the one or more parameters does not conform to the schema; adjusting the version of the one or more parameters to conform to the schema; and filling the at least one input argument slot using the adjusted version of the one or more parameters in the schema. However, Ackerman teaches wherein the version of the one or more parameters does not conform to the schema (see e.g., col. 8, lines 51-67 for a network-based process beginning with a license request (step 515) where the manufacturer, or one of its resellers, receives a customer order 510 for a new license or a license upgrade, next follows license generation (step 520), where a license 525 conforming to the customer's order is generated by formatting the required data in accordance with a license XML schema 527, and the schema formatting the license information into the arrangement of fields, as described in FIG. 4, and validating the information as conforming to the established data-type parameters. The version of the parameters received from the customer order does not conform to the schema.); adjusting the version of the one or more parameters to conform to the schema (see e.g., col. 8, lines 51-67 for a network-based process beginning with a license request (step 515) where the manufacturer, or one of its resellers, receives a customer order 510 for a new license or a license upgrade, next follows license generation (step 520), where a license 525 conforming to the customer's order is generated by formatting the required data in accordance with a license XML schema 527, and the schema formatting the license information into the arrangement of fields, as described in FIG. 4, and validating the information as conforming to the established data-type parameters. The version of the parameters received from the customer order are adjusted to conform to the schema.); and filling the at least one input argument slot [field] using the adjusted version of the one or more parameters in the schema (see e.g., col. 8, lines 51-67 for a network-based process beginning with a license request (step 515) where the manufacturer, or one of its resellers, receives a customer order 510 for a new license or a license upgrade, next follows license generation (step 520), where a license 525 conforming to the customer's order is generated by formatting the required data in accordance with a license XML schema 527, and the schema formatting the license information into the arrangement of fields, as described in FIG. 4, and validating the information as conforming to the established data-type parameters. The fields are filled using the adjusted version of the parameters in the schema.). It would have been obvious to one of ordinary skill in the art prior to the effective filing date of the claimed invention to modify the digital assistant of Vescovi in view of Wang wherein the version of the one or more parameters does not conform to the schema; to adjust the version of the one or more parameters to conform to the schema; and to fill the at least one input argument slot using the adjusted version of the one or more parameters in the schema, as taught by Ackerman, for the benefit of validating the information as conforming to the established data-type parameters (see e.g., Ackerman, col. 8, lines 51-67). Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Dressler, II (US Publication No. 2024/0403567) for “after identifying the intended action to be performed, the agent management component 410 of the personalization agent service 400 utilizes the user's personal model 460, prior execution plans 464 and potentially other user data 406 maintained in the database 106 to generate a grounded personalized input prompt requesting an execution plan for performing the intended action to be provided to the LLM chatbot 152 or another suitable AI system, such as a GPT-based chatbot or the like” (see [0062]). Any inquiry concerning this communication or earlier communications from the examiner should be directed to DARA J GLASSER whose telephone number is (571)270-3666. The examiner can normally be reached Monday-Thursday, 10:00am-2:00pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Apu Mofiz can be reached at (571)272-4080. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. 04-27-2026 /DARA J GLASSER/Examiner, Art Unit 2161 /APU M MOFIZ/Supervisory Patent Examiner, Art Unit 2161
Read full office action

Prosecution Timeline

Sep 13, 2024
Application Filed
May 04, 2026
Non-Final Rejection mailed — §103
Jun 03, 2026
Interview Requested
Jun 24, 2026
Applicant Interview (Telephonic)
Jun 24, 2026
Examiner Interview Summary

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12650959
Schema Validation with Data Synthesis
2y 7m to grant Granted Jun 09, 2026
Patent 12625772
Remote Backup Restore with a Local Dedupe Engine
2y 11m to grant Granted May 12, 2026
Patent 12572554
SYSTEMS, METHODS, AND COMPUTER READABLE MEDIA FOR DATA AUGMENTATION
4y 9m to grant Granted Mar 10, 2026
Patent 12468669
TECHNIQUES FOR BUILDING AND VALIDATING DATABASE SOFTWARE IN A SHARED MANAGEMENT ENVIRONMENT
4y 0m to grant Granted Nov 11, 2025
Patent 12443588
METHODS AND SYSTEMS FOR TRANSACTIONAL SCHEMA CHANGES
4y 1m to grant Granted Oct 14, 2025
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
58%
Grant Probability
99%
With Interview (+54.8%)
3y 6m (~1y 8m remaining)
Median Time to Grant
Low
PTA Risk
Based on 166 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month