Prosecution Insights
Last updated: October 02, 2026
Application No. 17/546,426

COMPUTER-IMPLEMENTED METHOD, COMPUTER PROGRAM PRODUCT AND COMPUTER SYSTEM FOR PROBLEM-SOLVING BASED ON KNOWLEDGE GRAPHS

Non-Final OA §101§103
Filed
Dec 09, 2021
Priority
Nov 15, 2021 — EU 21208109.5
Examiner
PHAM, JESSICA THUY
Art Unit
2121
Tech Center
2100 — Computer Architecture & Software
Assignee
SAP SE
OA Round
3 (Non-Final)
18%
Grant Probability
At Risk
3-4
OA Rounds
0m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants only 18% of cases
18%
Career Allowance Rate
2 granted / 11 resolved
-36.8% vs TC avg
Strong +90% interview lift
Without
With
+90.0%
Interview Lift
resolved cases with interview
Typical timeline
4y 0m
Avg Prosecution
20 currently pending
Career history
46
Total Applications
across all art units

Statute-Specific Performance

§101
28.5%
-11.5% vs TC avg
§103
38.5%
-1.5% vs TC avg
§102
10.7%
-29.3% vs TC avg
§112
20.4%
-19.6% vs TC avg
Black line = Tech Center average estimate • Based on career data from 11 resolved cases

Office Action

§101 §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 . Continued Examination Under 37 CFR 1.114 A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 11/06/2025 has been entered. Status of Claims/Response to Amendment Claims 1, 8, and 15 were amended. Claims are pending and examined herein. Claims 1-20 are rejected under 35 U.S.C. 101 as being directed to an abstract idea without significantly more. Claims 1-20 are rejected under 35 U.S.C. 103. Response to Arguments Applicant’s arguments, see pages 11-12, filed 11/06/2025, with respect to the objection of claim 15 have been fully considered and are persuasive. The objection of claim 15 has been withdrawn. Applicant's arguments filed 11/06/2025 regarding the 35 U.S.C. 101 rejection for being directed to an abstract idea without significantly more have been fully considered but they are not persuasive. Applicant argues that the claims as amended do not correspond to examples of the mental processes subject matter grouping. Examiner respectfully disagrees. See updated 35 U.S.C. 101 rejection for a listing of abstract ideas recited in the amended claims. Applicant further argues that the claims are directed to a technical improvement. Examiner respectfully disagrees. Applicant cites the specification for evidence of the technical improvement. Particularly, page 12, lines 21-25 is cited for pointing out the field of improvement, “Therefore the method described heretofore has the advantageous technical effects that a problem can be efficiently and effectively addressed. In particular, the use of the rules provides a clear insight into possible problems which leads to an effective solution thereto. In this way, the method can assist a user in performing a technical task, e.g. troubleshooting a device, by means of a guided human-machine interaction process.” The improvement that is evident by this citation is an improvement to problem solving. This is further evident by the example given, troubleshooting a device. Problem solving is an abstract idea; in particular, it is a mental process of evaluation. Troubleshooting a device is also problem solving, and is also a mental process. MPEP § 2106.05(a) states “However, it is important to keep in mind that an improvement in the abstract idea itself (e.g. a recited fundamental economic concept) is not an improvement in technology. For example, in Trading Technologies Int’l v. IBG, 921 F.3d 1084, 1093-94, 2019 USPQ2d 138290 (Fed. Cir. 2019), the court determined that the claimed user interface simply provided a trader with more information to facilitate market trades, which improved the business process of market trading but did not improve computers or technology.” Therefore, the claims are not directed to a technical improvement. Applicant’s arguments, see pages 15-19, filed 11/06/2025, with respect to the rejection(s) of claim(s) 1-20 under 35 U.S.C. 103 have been fully considered and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made in view of Yeh et al., US 2015/0379414 A1, hereinafter “Yeh”, Jacopo Urbani et al., "DynamiTE: Parallel Materialization of Dynamic RDF Data", 2013, Springer-Verlag, ISWC 2013, Part 1. pp. 657-672, hereinafter “Urbani, "Lookup Table", November 2, 2021, Wikipedia, hereinafter “Wikipedia”, and Vanessa Lopez et al., “PowerAqua: Fishing the Semantic Web”, 2013, Springer-Verlaj, ISWC 2013, Part I, LNCS 8218, pp. 393-410, hereinafter “Lopez”. Claim Interpretation The applicant is advised that this application contains claims having contingent limitations. According to MPEP § 2111.04(II), “The broadest reasonable interpretation of a method (or process) claim having contingent limitations requires only those steps that must be performed and does not include steps that are not required to be performed because the condition(s) precedent are not met.” Claims 2 and 5 are both directed to a method and contain contingent limitations and are therefore subject to this interpretation. Additionally, MPEP § 2111.04(II) further states “The broadest reasonable interpretation of a system (or apparatus or product) claim having structure that performs a function, which only needs to occur if a condition precedent is met, requires structure for performing the function should the condition occur. The system claim interpretation differs from a method claim interpretation because the claimed structure must be present in the system regardless of whether the condition is met and the function is actually performed.” Claims 9 and 12 are both directed to a system and contain contingent limitations and are therefore subject to this interpretation. Further, claims 16 and 19 are both directed to a product and contain contingent limitations and are therefore subject to this interpretation. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. MPEP § 2109(III) sets out steps for evaluating whether a claim is drawn to patent-eligible subject matter. The analysis of claims 1-20, in accordance with these steps, follows. Step 1 Analysis: Step 1 is to determine whether the claim is directed to a statutory category (process, machine, manufacture, or composition of matter. Claims 1-7 are directed to a process, claims 8-15 are directed to an article of manufacture, and claims 15-20 are directed to an article of manufacture. As all claims are to statutory categories analysis proceeds to Step 2A Prong 1. Step 2A Prong One, Step 2A Prong Two, and Step 2B Analysis: Step 2A Prong One asks if the claim recites a judicial exception (abstract idea, law of nature, or natural phenomenon). If the claim recites a judicial exception, analysis proceeds to Step 2A Prong Two, which asks if the claim recites additional elements that integrate the abstract idea into a practical application. If the claim does not integrate the judicial exception, analysis proceeds to Step 2B, which asks if the claim amounts to significantly more than the judicial exception. If the claim does not amount to significantly more than the judicial exception, the claim is not eligible subject matter under 35 U.S.C. 101. None of the claims represent an improvement to technology. Regarding claim 1, the following claim elements are abstract ideas: determining whether the event comprises a trigger event, based on information stored in the lookup table, (Given the data, one could practically perform this determination in the human mind. This is the mental process of evaluation.) automatically determining that the event has occurred and comprises a trigger event, and in response to determining that the event comprises the trigger event: (Determining that an event has occurred and comprises a trigger event can be practically performed in the human mind. This is a mental process.) selecting a knowledge graph, from a plurality of knowledge graphs, to query based on the trigger data; (Selecting a knowledge graph to query based on the trigger data can be practically performed in the human mind. This is a mental process, obtaining problem data by querying the selected knowledge graph using the at least one rule and the at least one trigger concept, wherein the selected knowledge graph comprises a plurality of nodes and a plurality of edges, each node being associated with a respective concept and each edge being associated with a respective label, and wherein at least one node is associated with the at least one trigger concept; (This is a mental process of evaluation. A query of a knowledge graph represented in the mind or on paper can be traversed using the rule and concept.) obtaining solution data based on the problem data; and (This is a mental process of evaluation.) The following claim elements are additional elements which, taken alone or in combination with the other additional elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception: A computer-implemented method comprising: (This is mere instructions to apply an exception on a generic computer. See MPEP § 2106.05(f).) receiving trigger data based on one or more user interactions with a computing device, the trigger data comprising at least one trigger concept, wherein the trigger data comprises information about an event; (This is mere data gathering, an insignificant extra-solution activity. See MPEP § 2106.05(g). Basing the trigger data on user interactions with a computing device is a field of use limitation, as it simply limits the use of the abstract idea to the field of user interactions with computing. See 2106.05(h). Limiting the trigger data to information about an event is the insignificant extra-solution activity of selecting a particular data source. See MPEP § 2106.059(g), ‘Selecting a particular data source or type of data to be manipulated’, ex. i-iv.) accessing a lookup table stored in a memory device and (Accessing a lookup table stored in memory is a known process on a computer. This amounts to mere instructions to apply an exception.) wherein the trigger event comprises at least one of: (Specifying the trigger event is the insignificant extra-solution activity of selecting a particular data source. See MPEP § 2106.059(g), ‘Selecting a particular data source or type of data to be manipulated’, ex. i-iv.) a first action performed by a user interacting with the computing device or by a piece of software or hardware, or (Specifying the trigger event is the insignificant extra-solution activity of selecting a particular data source. See MPEP § 2106.059(g), ‘Selecting a particular data source or type of data to be manipulated’, ex. i-iv.) a change in state of a component of the computing device; (Specifying the trigger event is the insignificant extra-solution activity of selecting a particular data source. See MPEP § 2106.059(g), ‘Selecting a particular data source or type of data to be manipulated’, ex. i-iv.) retrieving at least one rule based on the trigger data, wherein a rule comprises: a main label relating two concept variables, and a concatenated set of defining labels, each defining label relating two concept variables; (This is the insignificant extra-solution activity of retrieving information in memory. See MPEP § 2106.05(d)(II)(i).) performing a second action based on the solution data. (This is mere instructions to apply an exception on a generic computer. See MPEP § 2106.05(f).) Regarding claim 2, the rejection of claim 1 is incorporated herein. Further, claim 2 recites the following abstract ideas: checking whether the main label of the at least one rule is associated with any edge of the knowledge graph connected to the node associated with the at least one trigger concept; (This is a mental process of evaluation.) if the main label of the at least one rule is associated with any edge of the knowledge graph connected to the node associated with the at least one trigger concept, retrieving the concept associated with the other node connected to the edge associated with the main label; and (This is a mental process of evaluation.) if the main label of the at least one rule is not associated with any edge of the knowledge graph connected to the node associated with the at least one trigger concept: tracing a path in the knowledge graph starting from the node associated with the at least one trigger concept by using the concatenated set of defining labels, thereby retrieving the concept associated with the last node of the path; and (This is a mental process of evaluation.) updating the knowledge graph by inserting an edge associated with the main label that connects the node associated with the at least one trigger concept and the last node of the path. (This is a mental process. Using a pen and paper, a human could add an edge connecting nodes and label it.) Claim 2 does not recite any additional elements. Regarding claim 3, the rejection of claim 2 is incorporated herein. Further, claim 3 recites the following abstract ideas: wherein obtaining the solution data comprises evaluating a solution rule using the knowledge graph. (This is a mental process of evaluation.) Claim 3 does not recite any additional elements. Regarding claim 4, the rejection of claim 3 is incorporated herein. The following claim elements are additional elements which, taken alone or in combination with the other additional elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception: further comprising storing the solution data in the knowledge graph. (This is the insignificant extra-solution activity of storing information in memory. See MPEP § 2106.05(d)(II)(i).) Claim 4 does not recite any additional elements. Regarding claim 5, the rejection of claim 1 is incorporated herein. Part of claim 5 recites substantially similar subject matter as claim 2; see claim 2 for explanation of those limitations. Further, claim 5 recites the following abstract ideas: performing a plurality of inference steps for the plurality of rules in sequence, each inference step comprising, for a respective rule: (Inference is a mental process, and a human could practically perform a plurality of inference steps in the mind.) if the concatenated set of defining labels is associated with at least a subset of adjacent edges of the knowledge graph connected to the node associated with the at least one trigger concept, directly proceeding to a subsequent inference step; (This is a mental process, as judging whether the defining labels are associated with a subset of adjacent edges and then proceeding to a subsequent inference step could be performed in the human mind, or using a pen and paper. once the plurality of inference steps have been performed, determining whether the knowledge graph was updated; and (This is a mental process of judgement.) if the knowledge graph was updated, re-performing the plurality of inference steps for the plurality of rules in sequence. (Inference is a mental process, and a human could practically perform a plurality of inference steps in the mind.) Claim 5 does not recite any additional elements. Regarding claim 6, the rejection of claim 1 is incorporated herein. Further, claim 6 recites the following abstract ideas: obtaining additional problem data by querying an additional knowledge graph using the at least one rule and the at least one trigger concept, wherein the solution data are obtained further based on the additional problem data. (This is a mental process of evaluation.) Claim 6 does not recite any additional elements. Regarding claim 7, the rejection of claim 1 is incorporated herein. Further, claim 7 recites the following abstract ideas: generating supplementary data by querying the knowledge graph using each of the plurality of universal rules; and (This is a mental process of evaluation.) updating the knowledge graph using the supplementary data. (This can practically be done in the human mind, or in the human mind with a pen and paper. This is a mental process.) The following claim elements are additional elements which, taken alone or in combination with the other additional elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception: retrieving a plurality of universal rules; (This is mere data gathering, an insignificant extra-solution activity. See MPEP § 2106.05(g). Regarding claim 8, the following is an additional element: A system comprising: (This is the equivalent of mere instructions to apply an exception. See MPEP § 2106.05(f).) a processor configured to: (This is mere instructions to apply an exception.) The rest of claim 8 and claims 9-14 recite substantially similar subject matter as claims 1-7 respectively, and are rejected with the same rationale, mutatis mutandis. Regarding claim 15, the following is an additional element: An article comprising: a non-transitory computer-readable instructions that, when executed on a computer, cause the computer to: (This is the equivalent of mere instructions to apply an exception. See MPEP § 2106.05(f).) The rest of claim 15 and claims 16-20 recite substantially similar subject matter as claims 1-5 and 7 respectively, and are rejected with the same rationale, mutatis mutandis. 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. Claims 1, 8, and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Yeh et al., US 2015/0379414 A1, hereinafter “Yeh”, Jacopo Urbani et al., "DynamiTE: Parallel Materialization of Dynamic RDF Data", 2013, Springer-Verlag, ISWC 2013, Part 1. pp. 657-672, hereinafter “Urbani, "Lookup Table", November 2, 2021, Wikipedia, hereinafter “Wikipedia”, and Vanessa Lopez et al., “PowerAqua: Fishing the Semantic Web”, 2013, Springer-Verlaj, ISWC 2013, Part I, LNCS 8218, pp. 393-410, hereinafter “Lopez”. Regarding claim 1, Yeh teaches A computer-implemented method comprising: ([0026] states "The knowledge scaling system 200 may include one or more software modules and one or more databases embodied on one or distributed across multiple components (e.g., the data server 103, the web server 105, the client computers 107, 109, and/or any other computing device).") receiving trigger data based on one or more user interactions with a computing device, the trigger data comprising at least one trigger concept, wherein the trigger data comprises information about an event ([0080] states "FIG. 6 illustrates a flowchart of a method for performing inferences on topics of interest and generating natural language explanation in accordance with one or more illustrative aspects discussed herein. In one or more embodiments, the method of FIG. 6 and/or one or more steps thereof may be performed by a computing device (e.g., the data server 103, the web server 105, the client computers 107, 109, and/or any other computing device)." [0081] states "As seen in FIG. 6, the method may begin at step 605 in which IPEE 225 may monitor input utterances for inference triggers. For example, in step 605, the IPEE 225 may receive user requests from the natural language understanding module 230. The natural language understanding module 230 may, in response to receiving an input utterance from the user 240, generate user requests representing the input utterance of the user 240 and send the user requests to the IPEE 225. The IPEE 225 may, using the rule repository 220 of inference paths, determine whether the user request (and/or input utterance) has triggered one or more of the stored inference paths based on inference triggers." As the user interacts with the natural language understanding module, which is implemented by a computing device, the trigger data (the input utterance) is based on the user interactions with a computing device. The inference trigger is interpreted as the trigger concept. The event is the user interaction, and the trigger data includes the information about the user interaction as it records the input utterance.) determining whether the event comprises a trigger event, … wherein the trigger event comprises at least one of: (As stated above, the event is the user interaction/user request. [0081] states "As seen in FIG. 6, the method may begin at step 605 in which IPEE 225 may monitor input utterances for inference triggers. For example, in step 605, the IPEE 225 may receive user requests from the natural language understanding module 230. The natural language understanding module 230 may, in response to receiving an input utterance from the user 240, generate user requests representing the input utterance of the user 240 and send the user requests to the IPEE 225. The IPEE 225 may, using the rule repository 220 of inference paths, determine whether the user request (and/or input utterance) has triggered one or more of the stored inference paths based on inference triggers." Therefore, the system determines whether the event was a trigger event based on the input utterance.) a first action performed by a user interacting with the computing device or by a piece of software or hardware, or ([0080] states "In one or more embodiments, the method of FIG. 6 and/or one or more steps thereof may be performed by a computing device (e.g., the data server 103, the web server 105, the client computers 107, 109, and/or any other computing device). In some embodiments, the method illustrated in FIG. 6 and/or one or more steps thereof may be embodied in computer-executable instructions that are stored in a computer-readable medium, such as non-transitory computer-readable memory." [0081] states "As seen in FIG. 6, the method may begin at step 605 in which IPEE 225 may monitor input utterances for inference triggers. For example, in step 605, the IPEE 225 may receive user requests from the natural language understanding module 230. The natural language understanding module 230 may, in response to receiving an input utterance from the user 240, generate user requests representing the input utterance of the user 240 and send the user requests to the IPEE 225." Therefore, the user interacts with the computing device, which is hardware, or software (the computer-executable instructions).) a change in state of a component of the computing device; ([0081] states "For example, in step 605, the IPEE 225 may receive user requests from the natural language understanding module 230. The natural language understanding module 230 may, in response to receiving an input utterance from the user 240, generate user requests representing the input utterance of the user 240 and send the user requests to the IPEE 225." As the natural language understanding module receives the user request, the event here is the change in the memory of the computing device, which would now include the user request.) automatically determining that the event has occurred and comprises a trigger event, and, in response to determining that the event comprises the trigger event: (As stated above, the event is the user interaction/user request. [0081] states "As seen in FIG. 6, the method may begin at step 605 in which IPEE 225 may monitor input utterances for inference triggers. For example, in step 605, the IPEE 225 may receive user requests from the natural language understanding module 230. The natural language understanding module 230 may, in response to receiving an input utterance from the user 240, generate user requests representing the input utterance of the user 240 and send the user requests to the IPEE 225. The IPEE 225 may, using the rule repository 220 of inference paths, determine whether the user request (and/or input utterance) has triggered one or more of the stored inference paths based on inference triggers." Therefore, the system determines whether the event was a trigger event based on the input utterance.) retrieving at least one rule based on the trigger data, ([0028] further states "In response to a determination that one or more triggers have found (i.e., triggered), the IPEE 225 may look up one or more inference paths that correspond to the found one or more triggers and may apply these inference paths to the knowledge graph 215." The inference paths are interpreted as rules.) obtaining problem data by querying the selected knowledge graph using the at least one rule and the at least one trigger concept, ([0085] states "For example, in step 620, the IPEE 225 may detect an entity associated with the input utterance and/or user request. The IPEE 225 may map a surface form of the detected entity (e.g., spy) to the corresponding instance in knowledge graph 215." The entity associated with the input utterance and/or user request is interpreted as the trigger concept. [0086] states "For example, in step 625, IPEE 225 may apply an inference path by starting at a start instance for the detected entity and traversing the knowledge graph 215 guided by the inference path.” Applying the inference path is interpreted as querying. The intermediate instances are interpreted as the problem data, as it is data related to the query, which is interpreted as the problem. Additionally, [0093] states, "For example, in step 645, IPEE 225 may, for each inference path that lead to a conclusion, use a natural language template corresponding to the inference path to generate a natural language explanation." Here, the intermediate instances are used to generate a natural language explanation, meaning that problem data are obtained.) wherein the selected knowledge graph comprises a plurality of nodes and a plurality of edges, ([0031] states "For example, in step 310, IPME 210 may receive knowledge graph 215 (e.g., an ontology), which may be a directed, labeled graph including multiple nodes connected by multiple edges." each node being associated with a respective concept and ([0031] further states "The nodes may represent entities (e.g., concepts, etc.) and may be associated with corresponding types (e.g., types of object, classes associated with a collection of objects, etc.)”. each edge being associated with a respective label, and ([0031] further states "The edges (e.g., relations) may include domain constraints, range constraints, relationships between entities (e.g., acted in, born at, etc.) and the inverses of these relations." wherein at least one node is associated with the at least one trigger concept; ([0085] states "For example, in step 620, the IPEE 225 may detect an entity associated with the input utterance and/or user request. The IPEE 225 may map a surface form of the detected entity (e.g., spy) to the corresponding instance in knowledge graph 215." The entity associated with the input utterance and/or user request is interpreted as the trigger concept.) obtaining solution data based on the problem data; ([0089] states "IPEE 225 may record the instance as the conclusion of applying the applicable inference path and each of the other traversed instances (e.g., the starting instance and the one or more intermediate instances traversed using the inference path)." The instance recorded as the conclusion is interpreted as the solution data.) and performing a second action based on the solution data. ([0093] states "For example, in step 645, IPEE 225 may, for each inference path that lead to a conclusion, use a natural language template corresponding to the inference path to generate a natural language explanation." The generation of the natural language explanation is interpreted as the second action performed based on the solution data.) Yeh does not appear to teach access a lookup table stored in a memory device and [determining] based on information stored in the lookup table; automatically determining that the event has occurred and comprises a trigger event, and in response to determining that the event comprises the trigger event: selecting a knowledge graph, from a plurality of knowledge graphs, to query based on the trigger data; wherein a rule comprises: a main label relating two concept variables, and a concatenated set of defining labels, each defining label relating two concept variables; However, Urbani—directed to analogous art—teaches wherein a rule comprises: a main label relating two concept variables, and (Section 2, Table 1 lists inference rules for a knowledge graph. Section 2 states "A literal is composed of a predicate (e.g. R i ) and a tuple of terms w i := t i , …, t m ." The predicate is interpreted as a label, as it describes the relationship between two nodes. Section 2 further states that rules are in the form “ R 1 ( w 1 ) ← R 2 ( w 2 ), R 3 ( w 3 ), ..., R n ( w n ), where each component R i ( w i ) is called a literal.” Therefore, since the body of the rule maps to the head of the rule, the predicate at the head of the rule is interpreted as the main label.) a concatenated set of defining labels, each defining label relating two concept variables; (The predicates in the body of the rules are interpreted as the defining labels, and the concepts that it relates are listed in the rule. See Section 2, Table 1.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the method of Yeh with the concepts taught by Urbani because, as taught by Urbani in the introduction, "One of the main advantages of using semantically annotated data is that machines can reason on it, deriving new, implicit, knowledge from existing information." The combination of Yeh and Urbani does not appear to explicitly teach access a lookup table stored in a memory device and [determining] based on information stored in the lookup table However, Wikipedia—directed to analogous art—teaches access a lookup table stored in a memory device and [determining] based on information stored in the lookup table (Page 1 states "In computer science, a lookup table (LUT) is an array that replaces runtime computation with a simpler array indexing operation. … The savings in processing time can be significant, because retrieving a value from memory is often faster than carrying out an "expensive" computation or input/output operation. The tables may be precalculated and stored in static program storage, calculated (or "pre-fetched") as part of a program's initialization phase (memoization), or even stored in hardware in application-specific platforms." Page 1 further states "Lookup tables are also used extensively to validate input values by matching against a list of valid (or invalid) items in an array and, in some programming languages, may include pointer functions (or offsets to labels) to process the matching input." Validating input values is interpreted as determining based on the information stored in the lookup table.) It would have been obvious for one of ordinary skill in the art before the effective filing date of this application to combine the teachings of Yeh and Urbani with the lookup tables taught by Wikipedia because, as stated by Wikipedia on page 1, “The savings in processing time can be significant, because retrieving a value from memory is often faster than carrying out an "expensive" computation or input/output operation.” The combination of Yeh, Urbani, and Wikipedia does not appear to explicitly teach selecting a knowledge graph, from a plurality of knowledge graphs, to query based on the [data]; However, Lopez directed to analogous art—teaches selecting a knowledge graph, from a plurality of knowledge graphs, to query based on the [data]; (Page 394 states "AquaLog [4] is a fully implemented ontology-driven QA system, which takes an ontology and a NL query as an input and returns answers drawn from semantic markup compliant with the input ontology." Pages 398-399 state "A criterion for filtering candidate ontologies is to select the ones that present potential candidates mappings for all the terms within a triple, if any. In other words, if ontology 1 presents a possible complete translation of a query triple, while ontology 2 only presents a partial translation of the same triple, the later will be discarded. Similarly, the coverage of an ontology given the search terms is used as a measure in the ontology ranking approach on AKTiveRank [11]. Consider the query “Which wine is appropriate with chicken?”. The term “wine” has a syntactic mapping with the term “wine” belonging to an ontology of colors, and with the term “wines” related to an ontology of food and wines. Similarly, the term “chicken” maps to an ontology of farming and to the same food and wine ontology. Since the food and wine ontology presents a complete potential translation for the triple we retain it, and we discard both the farming and color ontologies, which only present partial translations." Fig. 2 shows that the selected ontologies are used to produce an answer, meaning that the selected ontologies are queried. Thus, an ontology is selected to query for an answer based on the NL query. Page 406 shows examples of ontologies, which are knowledge graphs.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the teachings of Yeh, Urbani, and Wikipedia with the teachings of Lopez because as stated by Lopez on page 395, "As already pointed out, the semantic web is heterogeneous in nature and it is not possible to determine in advance which ontologies will be relevant to a particular query. Moreover, it is often the case that queries can only be solved by composing heterogeneous information derived from multiple information sources that are autonomously created and maintained." Regarding claim 8, Yeh teaches A system comprising: ([0017] states "FIG. 1 illustrates one example of a network architecture and data processing device that may be used to implement one or more illustrative aspects described herein." a processor configured to: ([0023] states "Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device.") The remainder of claim 8 recites substantially similar subject matter as claims 1, and is rejected with the same rationale, mutatis mutandis. Regarding claim 15, Yeh teaches A computer program product comprising computer-readable instructions that, when executed on a computer, cause the computer to: ([0023] states "One or more aspects described herein may be executable instructions, such as in one or more program modules, executed by one or more computers or other devices as described herein.") The remainder of claim 15 recites substantially similar subject matter as claim 1, and is rejected with the same rationale, mutatis mutandis. Claims 2, 5, 9, 12, 16 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Yeh, Urbani, Wikipedia, and Lopez as applied to claim 1 above, and further in view of Kang et al., US 2021/0192372 A2, hereinafter “Kang”. Regarding claim 2, the rejection of claim 1 is incorporated herein. Yeh teaches tracing a path in the knowledge graph starting from the node associated with the at least one trigger concept by using the [rule], thereby retrieving the concept associated with the last node of the path; and ([0085] states "For example, in step 620, the IPEE 225 may detect an entity associated with the input utterance and/or user request. The IPEE 225 may map a surface form of the detected entity (e.g., spy) to the corresponding instance in knowledge graph 215." The entity associated with the input utterance and/or user request is interpreted as the trigger concept. [0086] states "For example, in step 625, IPEE 225 may apply an inference path by starting at a start instance for the detected entity and traversing the knowledge graph 215 guided by the inference path." [0089] states, in reference to the last node of the path, "IPEE 225 may record the instance as the conclusion of applying the applicable inference path and each of the other traversed instances (e.g., the starting instance and the one or more intermediate instances traversed using the inference path).") [obtaining a result of the inference using] the last node of the path ([0089] states, in reference to the last node of the path, "IPEE 225 may record the instance as the conclusion of applying the applicable inference path and each of the other traversed instances (e.g., the starting instance and the one or more intermediate instances traversed using the inference path).") Yeh does not appear to teach the concatenated set of defining labels the main label of the at least one rule However, Urbani—directed to analogous art—teaches the concatenated set of defining labels (See rejection of claim 1.) the main label of the at least one rule (See rejection of claim 1.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the method of Yeh with the concepts taught by Urbani because of the same reason given above in regards to claim 1. The combination of Yeh, Urbani, Wikipedia, and Lopez does not appear to teach checking whether the [label of the rule] is associated with any edge of the knowledge graph connected to the node associated with the at least one [concept]; if the main label of the at least one [rule] is associated with any edge of the knowledge graph connected to the node associated with the at least one trigger concept, retrieving the concept associated with the other node connected to the edge associated with the [label of the rule]; and if the [label of the rule] is not associated with any edge of the knowledge graph connected to the node associated with the at least one trigger concept: [performing an inference task] updating the knowledge graph by inserting an edge associated with the [label of the rule] that connects the node associated with the [concept] and [result of the inference] However, Kang—directed to analogous art—teaches checking whether the [label of the rule] is associated with any edge of the knowledge graph connected to the node associated with the at least one [concept]; ([0099] states that "the graph knowledge metadata is based on a graph in which a semantic vector is a node and a relation is an edge". [0100] states "The knowledge retrieval processing unit 80 performs a graph search in the graph knowledge storage unit 30 according to the knowledge request to determine whether the corresponding knowledge exists, that is, whether a knowledge triple (S-P-O) exists." The predicate (P) of the knowledge triple is interpreted as the label of the rule, and the node associated with a concept is interpreted as the subject (S). [0079] states "Inference in which S-P is given as an inference query and valid O is obtained, inference in which S-O is given as an inference query and valid P is obtained, or inference in which P-O is given as an inference query and valid S is obtained is may be considered." Therefore, given a node associated with a concept, the system will check if the label of the rule is one of the edges in order to find the object.) if the [label of the rule] is associated with any edge of the knowledge graph connected to the node associated with the at least one trigger concept, retrieving the concept associated with the other node connected to the edge associated with the [label of the rule]; and ([0100] states "If the knowledge exists, the knowledge retrieval processing unit 80 fetches and outputs the knowledge from the knowledge storage unit 30." Given the subject and predicate, the system will output the object, which is the concept associated with the other node connected to the edge associated with the label.) if the [label of the rule] is not associated with any edge of the knowledge graph connected to the node associated with the at least one trigger concept: [performing an inference task] ([0100] states "If there is no corresponding knowledge, the knowledge retrieval processing unit 80 may search for knowledge elements related to the corresponding knowledge through the inference processing unit 70 to perform a search for a plurality of other graphs.") updating the knowledge graph by inserting an edge associated with the [label of the rule] that connects the node associated with the [concept] and [result of the inference] ([0113] states "New graph knowledge is created according to this relation inference. That is, new graph knowledge is created using the newly inferred relation as an edge and related semantic vectors as nodes.") It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the teachings of Yeh, Urbani, Wikipedia, and Lopez with the teachings of Kang because, as stated by Kang in [0088], "Knowledge can be grown by using this multi-level knowledge inference. By performing multi-level knowledge inference from new facts extracted from interaction information such as new learning data or conversation, missing knowledge about current learning data is completed, and knowledge can be grown." Claims 9 and 16 recite substantially similar subject matter as claim 2, and are rejected with the same rationale, mutatis mutandis. Regarding claim 5, the rejection of claim 1 is incorporated herein. Part of claim 5 recites substantially similar subject matter as claim 2; see claim 2 for explanation of those limitations. Further, Yeh teaches the node associated with the at least one trigger concept Yeh does not appear to teach performing a plurality of inference steps for the plurality of rules in sequence, each inference step comprising, for a respective rule: if the concatenated set of defining labels is associated with at least a subset of adjacent edges of the knowledge graph connected to [the node], directly proceeding to a subsequent inference step; once the plurality of inference steps have been performed, determining whether the knowledge graph was updated; and if the knowledge graph was updated, re-performing the plurality of inference steps for the plurality of rules in sequence. However, Urbani—directed to analogous art—teaches performing a plurality of inference steps for the plurality of rules in sequence, each inference step comprising, for a respective rule: (Section 4.2 Incremental Materialization considers multiple rules.) if the concatenated set of defining labels is associated with at least a subset of adjacent edges of the knowledge graph connected to [the node], directly proceeding to a subsequent inference step; (Section 4.2 states "Our system performs this operation incrementally, fully exploiting the existing materialization T ω P (I). The process can be divided into three main steps: (i) Load the update into a set called δ, which is stored in main memory. (ii) Perform a semi-naive evaluation on T ω P (I) ∪ δ to derive new triples. In this case a rule is instantiated only if at least one fact is contained in δ. (iii) Add all the new derivations into the B-Tree indices, making them available for querying." In regards to step (ii), "At every iteration, these blocks consider only rules where at least one literal in the body can be instantiated from a triple in δ". According to Section 1, a fact is a literal, which is composed of a predicate and a tuple of terms, where all the terms are constants and not variables. Since the update is loaded into δ, the next rule (inference step) will happen only if at least one adjacent edge to the current node is in the rule.) once the plurality of inference steps have been performed, determining whether the knowledge graph was updated; and (Section 4.3 states "After launching the execution of these blocks on different threads, DynamiTE waits for them to finish, removes the duplicates, and continues to iterate until no new derivation is produced." By checking to see if no new derivation is produced, the system determines whether the knowledge graph was updated.) if the knowledge graph was updated, re-performing the plurality of inference steps for the plurality of rules in sequence. (As stated in the above limitation, DynamiTE continues to iterate until there are no more updates, performing the inference steps again.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the method of Yeh with the concepts taught by Urbani because, as taught by Urbani in the introduction, "With this paper, we contribute to this area by considering the problem of incrementally maintaining a large materialized knowledge base in the presence of frequent changes, using monotonic rule-based reasoning as the method to derive new information." Claims 12 and 19 recite substantially similar subject matter as claim 5, and are rejected with the same rationale, mutatis mutandis. Claims 3, 4, 10, 11, 17, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Yeh, Urbani, Wikipedia, and Lopez as applied to claim 1 above, further in view of Kang as applied to claim 2 above, and further in view of Bo Hu et al., US 2015/0379409 A1, hereinafter “Hu”. Regarding claim 3, the rejection of claim 2 is incorporated herein. Further, the combination of Yeh, Urbani, and Kang do not appear to teach wherein obtaining the solution data comprises evaluating a solution rule using the knowledge graph. However, Hu—directed to analogous art—teaches wherein obtaining the solution data comprises evaluating a solution rule using the knowledge graph. ([0050] states "Embodiments of another aspect include a method for the automated integration of non-conceptual data items into a data graph, the data graph being composed of graph elements including graph nodes and graph edges, the method comprising: for each of a plurality of non-conceptual data items: representing, as a graph node of the data graph, a behavior handler defining a procedure for using the non-conceptual data item to update the data graph in response to an occurrence of a specified trigger event, the graph node representing the behavior handler being stored in association with the non-conceptual data item; executing the procedure defined by the behavior handler in response to an occurrence of the specified trigger event; and identifying graph elements modified as a consequence of the execution of the procedure, and recording the identified graph elements as members of a set of modifications attributed to the behavior handler defining the executed procedure." Additionally [0075] states "The association between the behavior handler and non-conceptual data item used by the behavior handler to update the data graph may be stored in the form of an explicit link having the form of a graph edge or node." The non-conceptual data item is interpreted as the solution data because, according to [0017], "Non-conceptual data items may be defined as data items which manifest or implement the resources modeled in the data graph in machine readable or executable form." When executed, the non-conceptual data item will be found using the explicit link/edge in the knowledge graph. This is interpreted as evaluating the solution rule, as it is a rule having one label. This label can be seen in Figure 3, where it is labelled as “Implementation”, connecting the behavior handler 10 and the non-conceptual data item 12.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the teachings of Yeh, Urbani, Wikipedia, Lopez, and Kang with the teachings of Hu because, as stated by Hu in [0013] "Advantageously, the procedure followed by embodiments enables the semantics of both conceptual knowledge, being knowledge represented in the data graph, and non-conceptual knowledge, being knowledge represented by non-conceptual data items linked to surrogate entities in the data graph, to be unified and described in a single ontology." Regarding claim 4, the rejection of claim 3 is incorporated herein. Further, the combination of Yeh, Urbani, Wikipedia, Lopez, and Kang does not appear to teach further comprising storing the solution data in the knowledge graph. However, Hu—directed to analogous art—teaches further comprising storing the solution data in the knowledge graph. (As described above, [0075] states that the non-conceptual data, interpreted as solution data, are stored in the knowledge graph.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the teachings of Yeh, Urbani, Wikipedia, Lopez, and Kang with the teachings of Hu for the reasons given above in regards to claim 3. Claims 10 and 17 recite substantially similar subject matter as claim 3 and are rejected with the same rationale, mutatis mutandis. Claims 11 and 18 recite substantially similar subject matter as claim 4 and are rejected with the same rationale, mutatis mutandis. Claims 6 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Yeh, Urbani, Wikipedia, and Lopez as applied to claim 1 above, and further in view of Lavery et al., US 2023/0094042 A1, hereinafter “Lavery”. Regarding claim 6, the rejection of claim 1 is incorporated herein. Yeh teaches querying [a knowledge graph] using the at least one rule and the at least one trigger concept (See explanation of corresponding limitation in claim 1.) The combination of Yeh and Urbani do not appear to teach obtaining additional problem data by querying an additional knowledge graph …, wherein the solution data are obtained further based on the additional problem data. However, Lavery—directed to analogous art—teaches obtaining additional problem data by querying an additional knowledge graph … , wherein the solution data are obtained further based on the additional problem data. ([0040] states "In some implementations, at least one of the external data sources 150-1 through 150-N includes a first knowledge graph comprising a personal or subjective knowledge graph and a second knowledge graph comprising an objective knowledge graph." [0041] states "The personal knowledge graph can be used to identify the primary attributes of the primary attribute category. For example, with respect to the natural language query ‘Create a spreadsheet of my favorite restaurants’ having the primary attribute category ‘Restaurants’, the personal knowledge graph can be used to identify the names of the user's favorite restaurants. The objective knowledge graph can then be used to find the secondary attributes for each of the restaurants (e.g., average price, food type, hours of operation, etc.)." The objective knowledge graph is interpreted as the additional knowledge graph, and the secondary attributes are considered the additional problem data. [0042] states "Once data is obtained from the at least one of the external data sources 150-1 through 150-N, the personalized document creation manager 122 can create the personalized document 124." The personalized document is interpreted as the solution data.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the teachings of Yeh, Urbani, Wikipedia, and Lopez with the teachings of Lee because, as taught by Lee, the knowledge graphs could correspond to different domains of knowledge. In the case of Lee, the domains are personal and objective. Claim 13 recites substantially similar subject matter as claim 6, and is rejected with the same rationale, mutatis mutandis. Claim 7, 14, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over over Yeh, Urbani, Wikipedia, and Lopez as applied to claim 1 above, further in view of “RDF Semantic Graph Developer’s Guide”, March 2019, Oracle, hereinafter “Oracle”). Regarding claim 7, the rejection of claim 1 is incorporated herein. retrieving a plurality of universal rules; (Section 2.2.9 uses the universal rules defined in OWLPRIME, listed in Table 2-2, to perform the following actions.) generating supplementary data by querying the knowledge graph using each of the plurality of universal rules; and (The EXECUTE query in Section 2.2.9 generates supplementary data using the OWLPRIME set of rules.) updating the knowledge graph using the supplementary data. (The EXECUTE queries in Section 2.2.9 update the knowledge graph every time a new triple is added.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of this application to combine the teachings of Yeh and Urbani with the teachings of Oracle because universal rules, such the ones included in the OWL ontology, allow for the use of semantic operators to query relational data, as taught by Oracle, Chapter 2. Claims 14 and 20 recite substantially similar subject matter as claim 7, and are rejected with the same rationale, mutatis mutandis. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to JESSICA THUY PHAM whose telephone number is (571)272-2605. The examiner can normally be reached Monday - Friday, 9 A.M. - 5:00 P.M.. 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, Li Zhen can be reached on (571) 272-3768. 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. /J.T.P./Examiner, Art Unit 2121 /Li B. Zhen/Supervisory Patent Examiner, Art Unit 2121
Read full office action

Prosecution Timeline

Show 3 earlier events
Jun 26, 2025
Examiner Interview Summary
Jul 03, 2025
Response Filed
Sep 12, 2025
Final Rejection mailed — §101, §103
Nov 06, 2025
Response after Non-Final Action
Dec 12, 2025
Request for Continued Examination
Dec 22, 2025
Response after Non-Final Action
Dec 30, 2025
Response Filed
Aug 26, 2026
Non-Final Rejection mailed — §101, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12711363
SYSTEM FOR DYNAMIC AUTHENTICATION AND PROCESSING OF ELECTRONIC ACTIVITIES BASED ON PARALLEL NEURAL NETWORK PROCESSING
4y 10m to grant Granted Aug 18, 2026
Study what changed to get past this examiner. Based on 1 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

3-4
Expected OA Rounds
18%
Grant Probability
99%
With Interview (+90.0%)
4y 0m (~0m remaining)
Median Time to Grant
High
PTA Risk
Based on 11 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