DETAILED ACTION
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
2. This Office Action is responsive to the Applicant’s amendment filed on March 23, 2026.3. Claims 1-20 are pending, of which claims presented for examination 1, 12, and 19 are in independent form.
4. Claims 1,12, and 19 are amended.
Information Disclosure Statement
5. The information disclosure statement (IDS) submitted on January 10, 2026 and May 12, 2026. The submission is in compliance with the provisions of 37 CFR 1.07.
Response to Arguments
6. Applicant’s arguments, see “Double Patenting Rejections”, filed on March 23, 2026 have been carefully considered, but is not persuasive. Applicant asserts that the amendment render the rejection moot. However, independents claim 12 and 19 continue to recite the same subject matter and are of identical scope. Although amendments were made to the claims, the amendments do not create and patentable distinction between claims 12 and 19. Because claims 12 and 19 define the same invention, the rejection is maintained. The fact that the claims have been amended does not overcome the rejection where the claims remain identical in scope after amendment. Accordingly, the rejection of claims 12 and 19 for claiming the same invention is maintained.
7. Applicant’s arguments, see “Rejection of Claims 1-20 under 35 §101”, filed on March 23, 2026 have been carefully considered and based on claim amendments. The amendment added: a) nodal data structure, b) noun/verb schema identifiers, c) shared knowledge language, d) heterogeneous application integration, and e) transform into shared-language identifiers. Accordingly, the 35 U.S.C. §101 rejection is withdrawn.8. Applicant’s argument, see “Rejections under 35 U.S.C. § 103”, filed on February 17, 2026, have been carefully considered. The arguments are related to newly amended claim limitations and are addressed in the rejection below. Examiner applied a new reference for the newly amended limitations.
Double Patenting
9. A rejection based on double patenting of the “same invention” type finds its support in the language of 35 U.S.C. 101 which states that “whoever invents or discovers any new and useful process... may obtain a patent therefor...” (Emphasis added). Thus, the term “same invention,” in this context, means an invention drawn to identical subject matter. See Miller v. Eagle Mfg. Co., 151 U.S. 186 (1894); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Ockert, 245 F.2d 467, 114 USPQ 330 (CCPA 1957).
10. Claims 12 and 19 are worded exactly the same, word for word. Because the wording is identical, their legal scope (what they cover as an invention) is also identical.
11. A statutory type (35 U.S.C. 101) double patenting rejection can be overcome by canceling or amending the claims that are directed to the same invention so they are no longer coextensive in scope. The filing of a terminal disclaimer cannot overcome a double patenting rejection based upon 35 U.S.C. 101. See the comparison table below:
Claim 12
Claim 19
12. (Currently Amended) A system comprising: one or more processors; and a non-transitory computer-readable medium having a set of instructions that when executed, cause the one or more processors to: receive a user query for a personalized response associated with a profile; interpret the user query by executing a machine-learning model;
generate a data query corresponding to the user query by executing the machine-learning model, the data query configured for execution in a computer model comprising a nodal data structure stored in a non-transitory computer-readable medium, the nodal data structure comprising one or more nodes and edges representing entities and relationship consolidated from a plurality of heterogeneous applications, each node having: a first identifier corresponding to a noun schema associated with a shared knowledge language that standardizes a data type across the plurality of heterogeneous application; anda second identifier corresponding to one or more verb schemas associated with a shared knowledge language and specifying software capabilities applicable to the data type, wherein generating the data query comprises translation the user query into query expressed in terms of the noun and verb identifiers of the shared knowledge language so that the user query me executed uniformity across data originating from different source application;receive a first node of the computer model, wherein the first node is associated with the profile and generated based at least in part on an application accessed by the profile; and present the personalized response, wherein the personalized response comprises an indication of the first node of the computer model.
19. (Currently Amended) A system comprising: one or more processors; and a non-transitory computer-readable medium having a set of instructions that when executed, cause the one or more processors to: receive a user query for a personalized response associated with a profile; interpret the user query by executing a machine-learning model; generate a data query corresponding to the user query by executing the machine-learning model, the data query configured for execution in a computer model comprising a nodal data structure stored in a non-transitory computer-readable medium, the nodal data structure comprising one or more nodes and edges representing entities and relationship consolidated from a plurality of heterogeneous applications, each node having:; a first identifier corresponding to a noun schema associated with a shared knowledge language that standardizes a data type across the plurality of heterogeneous application; and
a second identifier corresponding to one or more verb schemas associated with a shared knowledge language and specifying software capabilities applicable to the data type,
wherein generating the data query comprises translation the user query into query expressed in terms of the noun and verb identifiers of the shared knowledge language so that the user query me executed uniformity across data originating from different source application;
receive a first node of the computer model, wherein the first node is associated with the profile and generated based at least in part on an application accessed by the profile; and present the personalized response, wherein the personalized response comprises an indication of the first node of the computer model.
As a result, claim 12 and claim 19 are rejected under 35 U.S.C. 101 as being directed to the same invention in violation of the prohibition against statutory double patenting.
Claim Rejections - 35 USC § 103
12. 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.
13. 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.
14. 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.
15. Claims 1-20 are rejected under 35 U.S.C. 103 as being unpatentable over Osmon et al. US 20220050864 A1 (hereinafter Osmon) in view of Boulter et al. US 20120210296 A1(hereinafter Boulter) further in view of Noura et al. “Automatic Knowledge Extraction to Build Semantic Web of Things Applications” (hereinafter Noura).
Regarding claim 1, Osman discloses a computer-implemented method comprising: receiving, by one or more processors, a user query for a personalized response associated with a profile (Osmon [0004] e.g., “The method generally includes receiving a long-tail query comprising a natural language utterance from a user of an application associated with a set of topics and providing the natural language utterance to a natural language model configured to identify nodes of a knowledge graph, wherein the knowledge graph is associated with a knowledge engine configured to respond to queries associated with the set of topics…”, see also [0028] e.g., “…tracks the user's progress through user application…”. Osmon discloses personalized queries linked to application progress/profile. The user progress/profile data personalizes the response); interpreting, by the one or more processors, the user query by executing a machine-learning model Osmon [0004] e.g., “…a set of topics and providing the natural language utterance to a natural language model…”, see also [0031] e.g., “Natural language model 120 is a software module used to identify nodes of the knowledge graph corresponding to one or more natural language utterances;…”. Osman teaches use Standard ML interpretation); generating, by the one or more processors, a data query corresponding to the user query by executing the machine-learning model (Osmon [0031] e.g., “ Natural language model 120 outputs one or more node identifiers corresponding to the identified nodes of the knowledge graph…”, see also [0044] e.g., “At 340, natural language model 120 transmits the identified node ID to response orchestrator 110. Thereafter, at 350, response orchestrator requests node data associated with the node ID received at 340, from knowledge engine 130….”. The natural language model (NLM) outputs a node identifier used as input (a query) for the knowledge engine), the data query configured for execution in a computer model comprising a nodal data structure stored in a non-transitory computer-readable medium (Osmon e.g., “… a knowledge graph, a representational data structure used to store many types of data”, see also [0029] e.g., “… knowledge graph includes a plurality of nodes…”. This is a strong support for a graph-based data structure), the nodal data structure comprising one or more nodes (Osman [0029] e.g., “… the knowledge graph includes a plurality of nodes used to store information … “, see also [0034] e.g., “Node 212 includes text strings … and node ID 2216…”. Osman teaches the claimed nodal data structured and nodes); and receiving, by the one or more processors, a first node of the computer model, wherein the first node is associated with the profile and generated based at least in part on an application accessed by the profile (Osman [0028] e.g., “… racks the user's progress through user application 150 ..” and the knowledge graph is associated with user application 150. See also [0029] e.g., “… the knowledge graph includes a plurality of nodes used to store information related to particular aspects of user application 150 … one node of the knowledge graph may correspond to a particular aspect of tax preparation”. Osman teaches receiving a node from a computer model (knowledge graph), wherein the node is associated with the user’s application context and profile because the knowledge graph stores information related to a particular aspect of the user application and the system track the user’s progress through the application to retrieve relevant node information); and presenting, by the one or more processors, the personalized response, wherein the personalized response comprises an indication of the first node of the computer model (Osman [0035] e.g., “Text strings 214 may be obtained by executing a knowledge engine associated with knowledge graph 210 using node ID 216…”, see also [0044] e.g., “… natural language model 120 transmits the identified node ID to response orchestrator 110”, see also [0044] e.g., “… response orchestrator requests node data associated with the node ID …”, see also [00415] e.g., “… response orchestrator 110 transmits the response to user device 302. response orchestrator 110 transmits the response to user device 302.”. Osmon teaches presenting a personalized response based on the identified node because the natural language model identifies a node of the knowledge graph, the response orchestrator retrieves node data associated with that node identifier, generates a response based on the node data, and transmits the response to the user. Thus, the presented response comprises information derived from and indicative of the identified node of the computer model). Osman does not clearly disclose edges representing entities and relationships consolidated from a plurality of heterogenous application each node having: a first identifier corresponding to a noun schema associated with a shared knowledge language that standardizes a data type;
a second identifier corresponding to one or more verb schemas, associated with [a shared knowledge language] and specifying software capabilities applicable to the data type. [consolidated from a plurality of heterogeneous applications]; wherein generating the data query comprises translating the user query into a query expressed in terms of the noun and verb identifiers of the shared knowledge language so that the user query may be executed uniformly across data originating from different source applications.
However, Boulter discloses edges representing entities and relationships [consolidated from a plurality of heterogeneous applications] (Boulter et al. [0034] e.g., “ The user may build the business application by identifying nouns and the relationships between them”. This maps to “entities and relationships”. The section explicitly states that nouns represent entities, and the user identifies relationships between the nouns. Thus, Boulter teaches entities and relationship. See also [0036] e.g., “The combination of verbs and nouns … products … customers … with a relationship between them”. This shows primarily “entities and relationships”, specifically, product = entity, customer = entity, relationship between them = relationship. See also [0044] e.g., “…rules for how to relate the tables in a schema part to tables in other schema parts in order to combine schema parts in a predictable fashion”. This maps to “relationships consolidated from a plurality of heterogeneous application); a first identifier corresponding to a noun schema associated with [a shared knowledge language] that standardizes a data type (Boulter [0034] e.g., “The user may identify the nouns that are used by the business application. … A noun may represent an entity within the business application”, see also [0039] e.g., “ Descriptive information: nouns …associated with a schema part.”. This clearly shows noun-schema teaching), across the plurality heterogenous application (Noura [I. Introduction, page[8447] 2nd column] e.g., “…shared vocabulary.”, see also [page 8448], 1st column] e.g., “… a unified schema in a specific domain …semantic interoperability”. This supplies the “shared knowledge language” and standardization concepts); and a second identifier corresponding to one or more verb schemas, associated with [a shared knowledge language] and specifying software capabilities applicable to the data type (Boulter [0034] e.g., “The user may identify the nouns that are used by the business application. … A noun may represent an entity within the business application”, see also [0039] e.g., “ Descriptive information: nouns …associated with a schema part.”. This clearly shows noun-schema teaching), [a shared knowledge language (Noura [I. Introduction, page[8447] 2nd column] e.g., “…shared vocabulary.”, see also [page 8448], 1st column] e.g., “… a unified schema in a specific domain …semantic interoperability”) wherein generating the data query comprises translating the user query into a query expressed in terms of the noun and verb identifiers of the shared knowledge language so that the user query may be executed uniformly across data originating from different source applications (Boulter [0006] e.g., “… automatically creating business applications from business process descriptions provided by a user. The application builder tool may be customized using metadata. The metadata provides a set of business terms to the user and the information for generating an application from those terms. The user may either select terms from the list or enter new business terms to describe the business problem they want the application to automate.”. See (Boulter [0034], [0036] , [0039], & [0072]) Boulter analyzing user-provided terms, using metadata associated with those terms, interpreting user choices based on the metadata, and employing nouns, verbs, and schema parts to represent business entities and relationship; edges representing entities and relationships [consolidated from a plurality of heterogeneous applications] (Boulter et al. US20120210296A1 [0034] e.g., “ The user may build the business application by identifying nouns and the relationships between them”. This maps to “entities and relationships”. The section explicitly states that nouns represent entities, and the user identifies relationships between the nouns. Thus, Boulter teaches entities and relationship. See also [0036] e.g., “The combination of verbs and nouns … products … customers … with a relationship between them”. This shows primarily “entities and relationships”, specifically, product = entity, customer = entity, relationship between them = relationship. See also [0044] e.g., “…rules for how to relate the tables in a schema part to tables in other schema parts in order to combine schema parts in a predictable fashion”. This maps to “relationships consolidated from a plurality of heterogeneous application).
It would have been obvious to one of the ordinary skill in the art before the effective filing date of the claimed invention to modify Osmon’s knowledge graph system to incorporate the schema-base noun, verb, entity, relationship and metadata framework of Boulter because Boulter teaches organizing information using nouns, verbs, relationships, and schema parts that may be analyzed and interpreted to generate structured application components. Such modification would improve the semantic organizational of Osmon’s graph-based information model and facilitate interpretation of user queries using structured entity and relationship information.
The combined teachings of Osmon and Boulter does not explicitly discloses consolidated from a plurality of heterogeneous applications and a shared knowledge.
Noura discloses consolidated from a plurality of heterogeneous applications and a shared knowledge (Noura [Introduction, page[8447] 2nd column] e.g., “…shared vocabulary.”, see also [page 8448], 1st column] e.g., “… a unified schema in a specific domain …semantic interoperability”. This supplies the “shared knowledge language” and standardization concepts). Noura discloses employing a shared vocabulary and unified schema to achieve semantic interoperability among heterogeneous, cross-platform applications and data sources. It would have been further obvious to incorporate the semantic interoperability techniques of Noura int the modified system because Noura teaches using shared vocabularies and unified schemas to enable interoperability across heterogeneous, cross platform application and data sources. Applying such teachings the combined Osmon and Boulter system would have been enabled information originating from heterogeneous application to be represented, related, and queried through a common semantic representation, thereby improving interoperability integration of disparate application data sources, and uniform execution of queries across heterogeneous application environments, yielding predictable results.
Claims 12 and 19 incorporate substantively all the limitations of claim 1 in a system comprising one or more processors (Osmon [Figure 6, element 602]) and a non-transitory computer readable medium having a set of instructions (Osmon [Figure 6, element 608 and 610]) and rejected under the rationale.
Regarding claim 2, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a computer-implemented method, further comprising: receiving, by the one or more processors, a second indication indicative of a context associated with a computing device associated with the profile (Osmon [0046] e.g., “the application server receives a long-tail query… from a user of a web-accessible application associated with a set of topics.”. This ties the incoming request to the user’s device/application and topic space, i.e., a contextual indication associated with the user’s computing environment); determining, by the one or more processors, a second node of the computer model, the second node associated with the context displayed by the computing device (Osmon [0047] e.g., “provides the natural language utterance to a natural language model configured to identify nodes of a knowledge graph… “, see also [0048] [and] “…identifies a node of the knowledge graph associated with the natural language utterance, based on output of the natural language model.”. The system selects the node corresponding to the user/device context carried by the utterance, thus determining the (second) node associated with the context); generating, by the one or more processors, a personalized prompt based on the second node, wherein the personalized prompt is a second output of the machine-learning model (Osmon [0050] e.g., “the application server receives a response associated with the node of the knowledge graph from the knowledge engine. As discussed, in other examples the application server may instead generate a response based on node data…”, see also [0045] e.g., “… generating the response may involve… constructing a response… along with user data and application progress data.”. The response is generated specifically from the identified node and optionally tailored with user/app progress data, yielding a personalized prompt based on that node); and presenting, by the one or more processors, the personalized prompt (Osmon [0051] e.g., “the application server transmits the response to the user… via the chatbot application.” This explicitly presents the personalized response to the user/device).
Regarding claim 3, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, wherein the computer model further comprises a nodal data structure of a set of nodes where each node corresponds to data identified as associated with each application within a set of applications accessed and used by each computing device, each node having an identifier corresponding to a series of nouns and verbs generated in accordance with the schema associated with the shared knowledge language (Boulter [0006] e.g., “… automatically creating business applications from business process descriptions provided by a user. The application builder tool may be customized using metadata. The metadata provides a set of business terms to the user and the information for generating an application from those terms. The user may either select terms from the list or enter new business terms to describe the business problem they want the application to automate.”. See (Boulter [0034], [0036] , [0039], & [0072]) Boulter analyzing user-provided terms, using metadata associated with those terms, interpreting user choices based on the metadata, and employing nouns, verbs, and schema parts to represent business entities and relationship, wherein the series of nouns define one or more types of data and the series of verbs define one or more software processes (Boulter [0034] e.g., “ The user may build the business application by identifying nouns and the relationships between them”. This maps to “entities and relationships”. The section explicitly states that nouns represent entities, and the user identifies relationships between the nouns. Thus, Boulter teaches entities and relationship. See also [0036] e.g., “The combination of verbs and nouns … products … customers … with a relationship between them”. This shows primarily “entities and relationships”, specifically, product = entity, customer = entity, relationship between them = relationship. See also [0044] e.g., “…rules for how to relate the tables in a schema part to tables in other schema parts in order to combine schema parts in a predictable fashion”. This maps to “relationships consolidated from a plurality of heterogeneous application), the computer model transforming the data generated as a result of at least one computing device accessing and using one or more applications from the set of applications into a series of nouns and verbs using the schema (Osmon [0046] e.g., “Method 400 maps natural language to stored information… “, see also [0021] e.g., “A natural language model is a machine learning model trained to identify natural language utterances …a natural language model identifies a node (second output)… The response orchestrator then provides the user query to the natural language model, the natural language model having been previously trained using the nodes of the knowledge graph” Osmon’s NL-to-node mapping and response composition operationalize transforming user/app data into schema-driven terms that correspond to noun/verb semantics).
Regarding claim 4, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, wherein the user query is provided in a natural language syntax (Osmon [0046] e.g., “receiving a long-tail query comprising a natural language utterance… providing the natural language utterance to a natural language model.”, see also [0042] e.g., “…user device 302 transmits a query including a natural language utterance to response orchestrator 310..” This directly discloses the user query being in a natural language).
Regarding claim 5, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, further comprising: executing, by the one or more processors, the machine-learning model to review one or more search results from the data query (Osmon [0048] e.g., “the natural language model may output a plurality of node identifiers along with confidence values…”); and selecting, by the one or more processors, a search result from the one or more search results that satisfies a threshold (Osmon [0048] e.g., “…the application server may apply a confidence threshold to identify all node identifiers which may be suitably related to the natural language utterance to include in a response. In other cases, the application server may select a highest confidence value of the plurality of confidence values.”. Confidence-scored outputs and thresholding constitute model-based review of candidates and selection of a result meeting a threshold).
Regarding claim 6, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, wherein generating the data query further comprises: parsing, by the one or more processors, the user query into one or more search elements (Osmon [0046] e.g., “FIG. 4 is a flow chart… mapping natural language to stored information… where the application server receives a long-tail query from including at least one natural language utterance from a user of a web-accessible application associated with a set of topics”. The natural language model processes the long-tail query and outputs the node identifier and confidence); and determining, by the one or more processors, one or more search parameters associated with the one or more search elements (Osmon [0048] e.g., “…the application server may apply a confidence threshold to identify all node identifiers which may be suitably related to the natural language utterance to include in a response” . Confidence thresholds, selected node IDs, and use of application progress/data operate as parameters derived from parsed elements to guide retrieval/composition).
Regarding claim 7, the rejection of claim 5 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, further comprising: responsive to receiving a selection of the personalized response, generating, by the one or more processors, a second query based on the search result, wherein the second query is associated with the personalized response (Osmon [0046] e.g., “…where the application server receives a long-tail query from including at least one natural language utterance from a user of a web-accessible application associated with a set of topics…”, see also [0045] e.g., “…generating the response may involve constructing a response based on node data that is not a complete response along with user data and application progress data received from user device”); querying, by the one or more processors, the computer model based at least on the second query Osmon [0046] e.g., “…where the application server receives a long-tail query from including at least one natural language utterance from a user of a web-accessible application associated with a set of topics…”; receiving, by the one or more processors, a second node linked to the first node of the computer model (Osman [0028] e.g., “… racks the user's progress through user application 150 ..” and the knowledge graph is associated with user application 150. See also [0029] e.g., “… the knowledge graph includes a plurality of nodes used to store information related to particular aspects of user application 150 … one node of the knowledge graph may correspond to a particular aspect of tax preparation”. Osman teaches receiving a node from a computer model (knowledge graph), wherein the node is associated with the user’s application context and profile because the knowledge graph stores information related to a particular aspect of the user application and the system track the user’s progress through the application to retrieve relevant node information); and presenting, by the one or more processors, a second personalized response, the second personalized response corresponding to the second node (Osmon [0042] e.g., “Constructing a response based on node data… response orchestrator 110 transmits the response to user device 302.”. Osmon’s response composition and presentation flow applies again to the second node’s data to present a second personalized response).
Regarding claim 8, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, wherein at least one node of the one or more nodes represents contextual data associated with a previous response (Osmon [0045 ] e.g., “…generating the response may involve… constructing a response… along with user data and application progress data.”. Incorporating user/application progress data shows responses leveraging context from prior interactions).
Regarding claim 9, the rejection of claim 5 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, wherein the personalized response further comprises a verb from the shared knowledge language, the verb associated with the first node of the computer model (Noura [Introduction, page[8447] 2nd column] e.g., “…shared vocabulary.”, see also [page 8448], 1st column] e.g., “… a unified schema in a specific domain …semantic interoperability”. This supplies the “shared knowledge language” and standardization concepts). Noura discloses employing a shared vocabulary and unified schema to achieve semantic interoperability among heterogeneous, cross-platform applications and data sources. Therefore, the combination teaches translating user-supported terms into noun- and verb-based schema representations expressed in a shared semantic vocabulary, thereby enabling uniform execution of queries across information originating from heterogeneous application environments).
Regarding claim 10, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, further comprising: generating, by the one or more servers, the personalized response by: determining, by the one or more servers, a user interface format for displaying the personalized response (Osmon [0045] e.g., “…generating the response may involve constructing a response based on node data that is not a complete response along with user data and application progress data received from user device 302. Then, at 380, response orchestrator 110 transmits the response to user device 302.” Constructing a response for device display implies determining the UI format appropriate for presenting the personalized content); and rendering, by the one or more servers, a user interface with one or more graphical elements representing the first node of the computer model (Osmon [0046] e.g., “ Method 400 may be performed by an application server executing a response orchestrator, … “, see also [0045] e.g., “Then, at 380, response orchestrator 110 transmits the response to user device 302”. The node-based response construction rendered to the device necessarily presents graphical elements derived from selected node’s data).
Regarding claim 11, the rejection of claim 1 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses, further comprising: executing, by the one or more processors, a machine learning agent to perform one or more actions within a computing environment, wherein the one or more actions correspond to the first node indicated in the personalized response (Osmon [0045] e.g., “…generating the response may involve constructing a response based on node data that is not a complete response along with user data and application progress data received from user device 302. Then, at 380, response orchestrator 110 transmits the response to user device 302.” Constructing a response for device display implies determining the UI format appropriate for presenting the personalized content).
Regarding claim 13, the rejection of claim 12 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a system, wherein the set of instructions further cause the one or more processors to: receive a second indication indicative of a context displayed by a computing device associated with the profile (Osmon [0046] e.g., “the application server receives a long-tail query… from a user of a web-accessible application associated with a set of topics.”. This ties the incoming request to the user’s device/application and topic space, i.e., a contextual indication associated with the user’s computing environment); determine a second node of the computer model, the second node associated with the context displayed by the computing device (Osmon [0047] e.g., “provides the natural language utterance to a natural language model configured to identify nodes of a knowledge graph… “, see also [0048] [and] “…identifies a node of the knowledge graph associated with the natural language utterance, based on output of the natural language model.”. The system selects the node corresponding to the user/device context carried by the utterance, thus determining the (second) node associated with the context); generate a personalized prompt based on the second node, wherein the personalized prompt is a second output of the machine-learning model (Osmon [0050] e.g., “the application server receives a response associated with the node of the knowledge graph from the knowledge engine. As discussed, in other examples the application server may instead generate a response based on node data…”, see also [0045] e.g., “… generating the response may involve… constructing a response… along with user data and application progress data.”. The response is generated specifically from the identified node and optionally tailored with user/app progress data, yielding a personalized prompt based on that node); and present the personalized prompt Osmon [0051] e.g., “the application server transmits the response to the user… via the chatbot application.” This explicitly presents the personalized response to the user/device).
Regarding claim 14, the rejection of claim 12 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a system, wherein the computer model further comprises a nodal data structure of a set of nodes where each node corresponds to data identified as associated with each application within a set of applications accessed and used by each computing device, each node having an identifier corresponding to a series of nouns and verbs generated in accordance with a schema associated with a shared knowledge language (Boulter [0006] e.g., “… automatically creating business applications from business process descriptions provided by a user. The application builder tool may be customized using metadata. The metadata provides a set of business terms to the user and the information for generating an application from those terms. The user may either select terms from the list or enter new business terms to describe the business problem they want the application to automate.”. See (Boulter [0034], [0036] , [0039], & [0072]) Boulter analyzing user-provided terms, using metadata associated with those terms, interpreting user choices based on the metadata, and employing nouns, verbs, and schema parts to represent business entities and relationship (Boulter [0034] e.g., “ The user may build the business application by identifying nouns and the relationships between them”. This maps to “entities and relationships”. The section explicitly states that nouns represent entities, and the user identifies relationships between the nouns. Thus, Boulter teaches entities and relationship. See also [0036] e.g., “The combination of verbs and nouns … products … customers … with a relationship between them”. This shows primarily “entities and relationships”, specifically, product = entity, customer = entity, relationship between them = relationship. See also [0044] e.g., “…rules for how to relate the tables in a schema part to tables in other schema parts in order to combine schema parts in a predictable fashion”. This maps to “relationships consolidated from a plurality of heterogeneous application), wherein the series of nouns define one or more types of data and the series of verbs define one or more software processes, the computer model transforming the data generated as a result of at least one computing device accessing and using one or more applications from the set of applications into a series of nouns and verbs using the schema.
Regarding claim 15, the rejection of claim 12 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a system, wherein the user query is provided in a natural language syntax (Osmon [0046] e.g., “receiving a long-tail query comprising a natural language utterance… providing the natural language utterance to a natural language model.”, see also [0042] e.g., “…user device 302 transmits a query including a natural language utterance to response orchestrator 310..” This directly discloses the user query being in a natural language).
Regarding claim 16, the rejection of claim 12 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a system, wherein the set of instructions further cause the one or more processors to: execute the machine-learning model to review one or more search results from the data query (Osmon [0048] e.g., “the natural language model may output a plurality of node identifiers along with confidence values…”); and select a search result from the one or more search results that satisfies a threshold (Osmon [0048] e.g., “…the application server may apply a confidence threshold to identify all node identifiers which may be suitably related to the natural language utterance to include in a response. In other cases, the application server may select a highest confidence value of the plurality of confidence values.”. Confidence-scored outputs and thresholding constitute model-based review of candidates and selection of a result meeting a threshold).
Regarding claim 17, the rejection of claim 12 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a system, wherein the set of instructions further cause the one or more processors to: parse the user query into one or more search elements (Osmon [0046] e.g., “FIG. 4 is a flow chart… mapping natural language to stored information… where the application server receives a long-tail query from including at least one natural language utterance from a user of a web-accessible application associated with a set of topics”. The natural language model processes the long-tail query and outputs the node identifier and confidence); and determine one or more search parameters associated with the one or more search elements (Osmon [0048] e.g., “…the application server may apply a confidence threshold to identify all node identifiers which may be suitably related to the natural language utterance to include in a response” . Confidence thresholds, selected node IDs, and use of application progress/data operate as parameters derived from parsed elements to guide retrieval/composition).
Regarding claim 18, the rejection of claim 16 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a system, wherein the set of instructions further cause the one or more processors to: responsive to receiving a selection of the personalized response, generate a second query based on the search result, wherein the second query is associated with the personalized response (Osmon [0046] e.g., “…where the application server receives a long-tail query from including at least one natural language utterance from a user of a web-accessible application associated with a set of topics…”, see also [0045] e.g., “…generating the response may involve constructing a response based on node data that is not a complete response along with user data and application progress data received from user device”); query the computer model based at least on the second query; receive a second node linked to the first node of the computer model (Osmon [0031] e.g. “Natural language model 120 is a software module used to identify nodes of the knowledge graph corresponding to one or more natural language utterances, such as, in this example, a user query. As described in further detail with respect to FIG. 2 below, natural language model 120 may be previously trained using data obtained from the knowledge graph. As a result, when provided with natural language utterances, natural language model 120 is capable of identifying one or more nodes of the knowledge graph corresponding to the natural language utterances.”. The user’s natural language query is sent to the model. The response orchestrator uses the identified node to directly access the structured knowledge); and present a second personalized response, the second personalized response corresponding to the second node (Osmon [0042] e.g., “Constructing a response based on node data… response orchestrator 110 transmits the response to user device 302.”. Osmon’s response composition and presentation flow applies again to the second node’s data to present a second personalized response).
Regarding claim 20, the rejection of claim 19 hereby incorporated by reference, the combination of Osmon, Boulter, and Noura discloses a system, wherein the computer model further comprises a nodal data structure of a set of nodes where each node corresponds to data identified as associated with each application within a set of applications accessed and used by each computing device, each node having an identifier corresponding to a series of nouns and verbs generated in accordance with a schema associated with the shared knowledge language (Boulter [0006] e.g., “… automatically creating business applications from business process descriptions provided by a user. The application builder tool may be customized using metadata. The metadata provides a set of business terms to the user and the information for generating an application from those terms. The user may either select terms from the list or enter new business terms to describe the business problem they want the application to automate.”. See (Boulter [0034], [0036] , [0039], & [0072]) Boulter analyzing user-provided terms, using metadata associated with those terms, interpreting user choices based on the metadata, and employing nouns, verbs, and schema parts to represent business entities and relationship) wherein the series of nouns define one or more types of data and the series of verbs define one or more software processes (Boulter [0034] e.g., “ The user may build the business application by identifying nouns and the relationships between them”. This maps to “entities and relationships”. The section explicitly states that nouns represent entities, and the user identifies relationships between the nouns. Thus, Boulter teaches entities and relationship. See also [0036] e.g., “The combination of verbs and nouns … products … customers … with a relationship between them”. This shows primarily “entities and relationships”, specifically, product = entity, customer = entity, relationship between them = relationship. See also [0044] e.g., “…rules for how to relate the tables in a schema part to tables in other schema parts in order to combine schema parts in a predictable fashion”. This maps to “relationships consolidated from a plurality of heterogeneous application), the computer model transforming the data generated as a result of at least one computing device accessing and using one or more applications from the set of applications into a series of nouns and verbs using the schema.
Conclusion
13. THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to BERHANU MITIKU whose telephone number is (571)270-1983. The examiner can normally be reached Monday – Friday 8:30AM – 4: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, Ajay Bhatia can be reached at 571-272-3906. 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.
/BERHANU MITIKU/Examiner, Art Unit 2156
/AJAY M BHATIA/Supervisory Patent Examiner, Art Unit 2156