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 01/29/2025 and 09/02/2026 were filed. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-11 and 15-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Fader (US PG Pub 20190236143). As per claims 1, 15 and 18, Fader discloses:
A method, a non-transitory machine-readable medium having instructions stored therein, and a data processing system, comprising: a processor (Fader; p. 0045 - Although the first admin device 110A and user device 120 are shown as smartphones and the second admin device 110B is shown as a laptop, it should be clear that any suitable devices can used as admin devices 110 and/or user devices 120. For example, in some embodiments an admin devices 110 and/or user devices 120 can include a smartphone, laptop computer, desktop computer, tablet computer, gaming device, smart television, wearable computer, and the like (devices that typically comprise a processor and memory coupled to the processor)); and a memory coupled to the processor to store instructions, which when executed by the processor (Fader; p. 0045 - Although the first admin device 110A and user device 120 are shown as smartphones and the second admin device 110B is shown as a laptop, it should be clear that any suitable devices can used as admin devices 110 and/or user devices 120. For example, in some embodiments an admin devices 110 and/or user devices 120 can include a smartphone, laptop computer, desktop computer, tablet computer, gaming device, smart television, wearable computer, and the like (devices that typically comprise a processor and memory coupled to the processor)), cause operations for managing a distributed system to be performed (Fader; p. 0044 - While the example of a single user device 120 is provided in FIG. 1 for purposes of simplicity, further embodiments can include deploying an app to a large plurality of user devices 120 with the app being managed by one or more admin device 110 via the application server 130 (managing a distributed system); see also p. 0042- Additionally, the following disclosure includes example systems methods for creating an application (e.g., a mobile app, chatbot, webpage, content management system, etc.), from a high-level, natural language description (e.g., text, speech, or other informal representation)), the operations comprising: obtaining a set of statements from a statement repository (Fader; p. 0052-0053 - a natural language input can comprise a plurality of statements. For example, in the context of the method 200 of FIG. 2, in one embodiment the input of statements 1-5 (300) shown in FIG. 3a can be received at 210), the set of statements comprising at least one tacit statement (Fader; p. 0100 - an inference step can allow a user to provide a terse description of a desired app, and the system read between lines to generate a complete app that is consistent with their description having both elements that are explicitly defined by the user in one or more statements and also elements that are implied (tacit) in the statements or that would be inherent or desirable in an app having the explicit or implied elements; see also p. 0081; see also p. 0137 - the app creator describes the app using one or more natural language statements); obtaining intermediate representations for the set of statements (Fader; p. 0081-0084 - an inference step can be responsible for filling in implicit parts of one or more statement for the app that the user does not explicitly include in the one or more statements. An inference step can operate on the formal meaning representation of the user's description statement(s) and can extend such one or more statements with additional assertions. In the following example, the inference step expands a single descriptive sentence with over ten additional assertions about the app… Example Intermediate Representation (sketch of semantic parsing output): There is a relationship between “Order” and “Customer” that is one-to-many; see also p. 0138 - …parsing the one or more statements and translating the one or more statements into a new meaning representation or incorporating into an existing meaning representation…); obtaining an intent based on the intermediate representations (Fader; p. 0076 - Intents—declaration of an action that an agent can take in the app (e.g., You can view all Customers (built-in actions); You can view a map of Customers (actions that have special behavior); You can Open a Closed Order (actions that change states); You can change the Priority of a Customer from Low to High (actions that change states); A Customer can change their own Email Address (actions with constraints on which agent can perform the action); An Admin can edit all Customers; and the like); see also p. 0138 - …parsing the one or more statements and translating the one or more statements into a new meaning representation or incorporating into an existing meaning representation…); obtaining a policy based on the intent (Fader; p. 0111-0113 - In various embodiments, both the deductive and inductive reasoning can combine the formal meaning representation of the user with a collection of background knowledge. The background knowledge can be a combination of rules and statistics (policy). Rule-Based Background Knowledge can include one or more of the following non-limiting examples: “Person” type entities should have a Name, Address, Photo, and the like; If there is an “Order” entity, then there should be a “Line Item” entity; Every entity should have a view; If you can view a map of an entity X, then X should have an Address; and If X has an Address, then you can view a map of X; see also p. 0172; see also p. 0139 - combining or adding background knowledge to the one or more statements and/or to the meaning representation); updating operation of the distributed system based on the policy to obtain an updated distributed system (Fader; p. 0114 - Such background knowledge can come from various sources. For example, the partial app that has been constructed so far can provide a source of relevance and can indicate next steps for subsequent changes to the app (updating operation of the distributed system based on the policy); see also p. 0140 - recommending useful, desirable or necessary changes…); and providing computer implemented services using the updated distributed system (Fader; p. 0133 - At 260, a preview of the app is generated. For example, as discussed in more detail herein, a simulation of the app (computer implemented service) can be presented in a user interface that an app creator is interacting with).
As per claims 2, 16 and 19, Fader discloses: The method, non-transitory machine-readable medium and data processing system of claims 1, 15 and 18, wherein the set of statements further comprises at least one derived tacit statement based on public information regarding an operator of the distributed system (Fader; p. 0110 - …In another example, where an input statement includes “The mechanic can look up the car information,” an inference can be made that the desired app is an app for an auto mechanic; that cars are looked up via VIN numbers; and that VIN numbers are “Code 39” barcodes. Accordingly, the app can be configured to add the ability to scan Code 39 barcodes and lookup VIN numbers based on such scanned barcodes (public information regarding an operator of the distributed system)…).
As per claims 3, 17 and 20, Fader discloses: The method, non-transitory machine-readable medium and data processing system of claims 2, 16 and 19, wherein the at least one tacit statement indicates a goal of a stakeholder with respect to the distributed system that is to be accomplished (Fader; p. 0063-0068 – Shows examples of statements that tacitly indicate a goal of a stakeholder, wherein the stakeholder corresponds to a customer placing an order and the goal is to accurately set the priority of an order).
As per claim 4, Fader discloses: The method of claim 3, wherein the goal is not defined in terms of the operation of the distributed system (Fader; p. 0101-0110 – Examples of the types of inferences, implications, or addition of desirable elements… (goals that are not defined in terms of the operation of the distributed system but are inferred by the system)).
As per claim 5, Fader discloses: The method of claim 1, wherein obtaining the intermediate representation comprises: analyzing the set of statements using a schema to define a plurality of typified information elements (Fader; p. 0036 - This incomplete semantic model can be augmented with schemas for each of the entities and initial data sets (plurality of typified information elements) that respect the data model including the relationships between the data entities; see also p. 0176).
As per claim 6, Fader discloses:
The method of claim 5, wherein analyzing the set of statements comprises: processing the set of statements using natural language processing to subdivide the set of statements into clauses (Fader; p. 0062 - Turning to FIGS. 5 and 6, FIG. 5 illustrates a statement input being parsed into eight constituent parts 501, 502, 503, 504, 505, 506, 507, 508 (subdivide the set of statements into clauses), which are converted into the meaning representation 600 of FIG. 6 having corresponding constituent parts 501, 502, 503, 504, 505, 506, 507, 508); processing each of the clauses using natural language processing and a schema to identify a type of information corresponding to each clause (Fader; p. 0068 - In some embodiments, semantic parsing can be performed by rules and/or by a black-box statistical method. In various embodiments, a meaning representation can encode one or more of the following types of example assertions about a user's app and the elements thereof); and populating the plurality of typified information elements based on the type of information corresponding to each clause and content of each clause (Fader; p. 0068 - In some embodiments, semantic parsing can be performed by rules and/or by a black-box statistical method. In various embodiments, a meaning representation can encode one or more of the following types of example assertions about a user's app and the elements thereof).
As per claim 7, Fader discloses:
The method of claim 6, wherein analyzing the set of statements further comprises: resolving information conflicts between the set of statements prior to populating the plurality of typified information elements (Fader; p. 0063-0068 - …a semantic parser can be responsible for resolving syntactic and semantic ambiguities… (resolving information conflicts)).
As per claim 8, Fader discloses: The method of claim 5, wherein the schema defines a plurality of types of information elements and relationships between the plurality of types of information elements (Fader; p. 0036 - This incomplete semantic model can be augmented with schemas for each of the entities and initial data sets (plurality of typified information elements) that respect the data model including the relationships between the data entities; see also p. 0176).
As per claim 9, Fader discloses: The method of claim 8, wherein the relationships define a first portion of the types of information elements as properties of a second portion of the type of information elements (Fader; p. 0056 - …For example, referring to FIGS. 3a and 3b, the “Order” (first portion) circle of the semantic network 301 is connected to the “Line Item” (second portion) circle with a “parts” arrow (property definition), which can be a relationship parsed directly from statement 1 of the set of statements 300, namely “an Order is made up of Line items.”…).
As per claim 10, Fader discloses:
The method of claim 1, wherein the intent is a static, complete statement defined in terms of operation of the distributed system (Fader; p. 0076 - Intents—declaration of an action that an agent can take in the app (e.g., You can view all Customers (built-in actions); You can view a map of Customers (actions that have special behavior); You can Open a Closed Order (actions that change states); You can change the Priority of a Customer from Low to High (actions that change states); A Customer can change their own Email Address (actions with constraints on which agent can perform the action); An Admin can edit all Customers; and the like); see also p. 0138 - …parsing the one or more statements and translating the one or more statements into a new meaning representation or incorporating into an existing meaning representation…).
As per claim 11, Fader discloses:
The method of claim 1, wherein the policy is obtained in response to a change to the distributed system or the statement repository (Fader; p. 0114 - Such background knowledge (policy) can come from various sources. For example, the partial app that has been constructed so far can provide a source of relevance and can indicate next steps for subsequent changes to the app (policy obtained in response to a change to the distributed system or the statement repository)).
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 12- 14 are rejected under 35 U.S.C. 103 as being unpatentable over Fader in view of Bhowmick (US PG Pub 20140351184).
As per claim 12, Fader discloses: The method of claim 1, upon which claim 12 depends. Fader, however, fails to explicitly disclose wherein updating the operation of the distributed system comprises: interpreting the policy and existing characteristics of the distributed system to identify at least one deviation; identifying a corrective action based on the at least one deviation; and performing the corrective action to modify the operation of the distributed system to obtain the updated distributed system. Bhowmick does teach wherein updating the operation of the distributed system comprises: interpreting the policy and existing characteristics of the distributed system to identify at least one deviation; identifying a corrective action based on the at least one deviation; and performing the corrective action to modify the operation of the distributed system to obtain the updated distributed system (Bhowmick; p. 0068 - …The plan deviation detector component 109(c) works in collaboration with the plan execution monitor 108 to probe whether there is a deviation from the scheduled plan. The plan revision module of the plan execution decider module is implemented through goal task regression strategy by backtracking from the goal state in HTN network. The backtracking is stopped as soon as the current state is reached without any threat to goal and it starts re-planning from the current state (identifying and performing corrective actions based on the detected deviation); otherwise, backtracking is halted at the state which shows the possibilities of violating the goal conditions and re-planning is done from this state. This strategy ensures the optimality of plan revision with respect to the number of steps needed to be revised). Therefore, it would have been obvious to one of ordinary skill in the art to modify the method of Fader to include wherein updating the operation of the distributed system comprises: interpreting the policy and existing characteristics of the distributed system to identify at least one deviation; identifying a corrective action based on the at least one deviation; and performing the corrective action to modify the operation of the distributed system to obtain the updated distributed system, as taught by Bhowmick, in order to ensure the optimality of plan revision with respect to the number of steps needed to be revised (Bhowmick; p. 0068).
As per claim 13, Fader in view of Bhowmick discloses: The method of claim 12, wherein the corrective action is identified using an automation framework hosted by at least one data processing system of the distributed system (Bhowmick; p. 0068 - …The plan deviation detector component 109(c) works in collaboration with the plan execution monitor 108 to probe whether there is a deviation from the scheduled plan. The plan revision module of the plan execution decider module is implemented through goal task regression strategy (automation framework) by backtracking from the goal state in HTN network. The backtracking is stopped as soon as the current state is reached without any threat to goal and it starts re-planning from the current state; otherwise, backtracking is halted at the state which shows the possibilities of violating the goal conditions and re-planning is done from this state. This strategy ensures the optimality of plan revision with respect to the number of steps needed to be revised). Therefore, it would have been obvious to one of ordinary skill in the art to modify the method of Fader to include wherein the corrective action is identified using an automation framework hosted by at least one data processing system of the distributed system, as taught by Bhowmick, in order to ensure the optimality of plan revision with respect to the number of steps needed to be revised (Bhowmick; p. 0068).
As per claim 14, Fader in view of Bhowmick discloses: The method of claim 13, wherein the data processing system is a production system of the distributed system that contributed to, at least in part, primary computer implemented services provided by the distributed system (Fader; p. 0040 - various embodiments can include the automated generation of functioning apps that are automatically deployable on one or more user devices, without human interaction aside from input by an administrator of the app. In other words, various embodiments can include a system (e.g., an app server) configured to receive human language input from app administrators or creators, and automatically generate, configure and deploy operable apps to user devices without human interaction at the system).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. The prior art made of record and not relied upon includes:
Franchitti (US PG Pub 202190171438) discloses: A method includes receiving a text description of a system capability request, and converting the text description into a normalized description of the system capability request. A repository is then queried, based on the normalized description and using a search algorithm, to identify multiple candidate application software units (ASUs). The candidate ASUs are displayed to a user for selection. The user-selected ASU is then deployed, either locally or to at least one remote compute device, in response to receiving the user selection. Deployment can include the user-selected candidate ASU being integrated into a local or remote software package, thus defining a modified software package that is configured to provide the system capability (Franchitti; Abstract).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Rodrigo A Chavez whose telephone number is (571)270-0139. The examiner can normally be reached Monday - Friday 9-6 ET.
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, Richemond Dorvil can be reached at 5712727602. 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.
/RODRIGO A CHAVEZ/Examiner, Art Unit 2658
/RICHEMOND DORVIL/Supervisory Patent Examiner, Art Unit 2658