DETAILED ACTION
This Office Action is in response to Preliminary Amendment for Continuation Application # 19/249,559 filed on June 25, 2025 in which claims 1-3, 5-18 and 20 are presented for examination.
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 .
Priority
Applicant’s claim for the benefit of a prior-filed application under 35 U.S.C. 119(e) or under 35 U.S.C. 120, 121, 365(c), or 386(c) is acknowledged. The Provisional Application# 63/455,642 filed on March 30, 2023.
Status of claims
Claims 1-3, 5-18 and 20 are pending, of which claims 1-3, 5-18 and 20 are rejected under 35 U.S.C. 101 and also claims 1-3, 5-18 and 20 are rejected under Double Patenting.
Claims 1-2, 5-10 and 18 are amended.
Claims 4 and 19 are canceled.
No claims are newly added.
Obviousness Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the claims at issue are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); and In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on a nonstatutory double patenting ground provided the reference application or patent either is shown to be commonly owned with this application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO internet Web site contains terminal disclaimer forms which may be used. Please visit http://www.uspto.gov/forms/. The filing date of the application will determine what form should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to http://www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-3, 5-18 and 20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-19 of U.S. Patent 12,373,496 B2 (‘496).
With respect to the above, the instant Application are performing an obvious variant of the features claimed in the ‘496 application.
19/249,559
U.S. 12,373,496 B2
Claim 1:
Claim 1:
A system for executing a search in a dataset comprising: a set of storage elements configured to store:
a directed property graph that is derived from the dataset, wherein the directed property graph comprises a plurality of value vertices, a plurality of entity vertices, and a plurality of edges, wherein each edge couples an entity vertex to a value vertex and comprises a label that is indicative of an association between the entity vertex and the value vertex, and wherein each entity vertex corresponds to an entity of the dataset, an associated edge corresponds to a property of the entity, and an associated value vertex corresponds to a data value of the property;
a value index table comprising a mapping between each unique data value of the directed property graph and a value identifier (ID) assigned to the corresponding unique data value; and
a vertex index table comprising a mapping between the value ID assigned to each unique data value and a vertex ID of the corresponding value vertex; and
processing circuitry that is coupled to at least one of the set of storage elements, and is configured to:
receive a search query that comprises a first reference value;
identify, from the plurality of value vertices, a first value vertex having a first data value that is associated with the first reference value, wherein the identification is based on the value index table and the vertex index table;
track (i) a first set of edges, of the plurality of edges, coupled to the first value vertex and (ii) a first set of entity vertices, of the plurality of entity vertices, coupled to the first value vertex by way of the first set of edges; and
generate a response to the search query based on the first data value, a first set of labels of the first set of edges, and a first set of entities of the dataset represented by the first set of entity vertices.
A system for executing a search in a dataset, the system comprising:
a first storage element configured to store a directed property graph that is derived from the dataset, wherein the directed property graph comprises a plurality of value vertices, a plurality of entity vertices, and a plurality of edges, wherein each edge couples an entity vertex to a value vertex and comprises a label that is indicative of an association between the entity vertex and the value vertex, and wherein each entity vertex corresponds to an entity of the dataset, an associated edge corresponds to a property of the entity, and an associated value vertex corresponds to a data value of the property;
a second storage element configured to store a value index table comprising a mapping between each unique data value of the directed property graph and a value identifier (ID) assigned to the corresponding unique data value;
a third storage element configured to store a vertex index table comprising a mapping between the value ID assigned to each unique data value and a vertex ID of the corresponding value vertex; and
processing circuitry that is coupled to the first storage element, and configured to:
receive a search query that comprises a first reference value;
identify, from the plurality of value vertices, a first value vertex having a first data value that is associated with the first reference value, wherein the identification is based on the value index table and the vertex index table; track (i) a first set of edges, of the plurality of edges, coupled to the first value vertex and (ii) a first set of entity vertices, of the plurality of entity vertices, coupled to the first value vertex by way of the first set of edges; and
generate a response to the search query based on the first data value, a first set of labels of the first set of edges, and a first set of entities of the dataset represented by the first set of entity vertices.
“Omission of element and its function in combination is obvious expedient if theremaining elements perform same functions as before.” See In re Karlson (CCPA) 136USPQ 184, decide Jan 16, 1963, Appl. No. 6857, U.S. Court of Customs and Patent Appeals.
It would have been obvious at the time the invention was made to storage in first, second and third storage elements having ordinary skill in the art to which said subject matter. Doing so would have enhanced the ‘496 patent.
With respect to claims 2-3, 5-18 and 20 they are also rejected since this claims are similar to 2-19 of the ‘496 patent.
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-3, 5-18 and 20 are rejected under 35 U.S.C. 101. because the claims are directed to an abstract idea; and because the claims as a whole, considering all claim elements both individually and in combination, do not amount to significantly more than the abstract idea, see Alice Corporation Pty. Ltd. v. CLS Bank International, et al, 573 U.S. (2014). In determining whether the claims are subject matter eligible, the Examiner applies the 2019 USPTO Patent Eligibility Guidelines. (2019 Revised Patent Subject Matter Eligibility Guidance, 84 Fed. Reg. 50, Jan. 7, 2019.)
Step 1: Is the claim to a process, machine, manufacture, or composition of matter? Yes—Claims 1-3, 5-18 and 20 recite a method, device and readable medium respectively.
The analysis of claim 1 is as follows:
Step 2A, prong one: Does claim 1 recite an abstract idea, law of nature or natural phenomenon? Yes—the limitations of “executing a search in a dataset, comprising: a set of storage elements configured to store:
a directed property graph that is derived from the dataset, wherein the directed property graph comprises a plurality of value vertices, a plurality of entity vertices, and a plurality of edges, wherein each edge couples an entity vertex to a value vertex and comprises a label that is indicative of an association between the entity vertex and the value vertex, and wherein each entity vertex corresponds to an entity of the dataset, an associated edge corresponds to a property of the entity, and an associated value vertex corresponds to a data value of the property;
a value index table comprising a mapping between each unique data value of the directed property graph and a value identifier (ID) assigned to the corresponding unique data value; and
a vertex index table comprising a mapping between the value ID assigned to each unique data value and a vertex ID of the corresponding value vertex; and
processing circuitry that is coupled to at least one of the set of storage elements, and is configured to:
receive a search query that comprises a first reference value;
identify, from the plurality of value vertices, a first value vertex having a first data value that is associated with the first reference value, wherein the identification is based on the value index table and the vertex index table;
track (i) a first set of edges, of the plurality of edges, coupled to the first value vertex and (ii) a first set of entity vertices, of the plurality of entity vertices, coupled to the first value vertex by way of the first set of edges; and
generate a response to the search query based on the first data value, a first set of labels of the first set of edges, and a first set of entities of the dataset represented by the first set of entity vertices” as drafted, are mental steps based on various processes can be performed in a human mind of performing search to generate response based on directed property graph (acts of thinking, decision making). These limitations, therefore fall within the human mind processes group and with a pen & paper.
Step 2A, prong two: Does the claim recite additional elements that integrate the judicial exception into a practical application? No—the judicial exception is not integrated into a practical application as just stated as related to the technical field of computer science . Although the claim recites that the recited functionality includes “method”, “system” and “readable medium”, these computer components are recited at a high-level of generality such that it amounts to no more than a mere instructions to apply the exception using generic computer component. In addition, the claim recites “executing a search in a dataset, comprising: a set of storage elements configured to store:
a directed property graph that is derived from the dataset, wherein the directed property graph comprises a plurality of value vertices, a plurality of entity vertices, and a plurality of edges, wherein each edge couples an entity vertex to a value vertex and comprises a label that is indicative of an association between the entity vertex and the value vertex, and wherein each entity vertex corresponds to an entity of the dataset, an associated edge corresponds to a property of the entity, and an associated value vertex corresponds to a data value of the property;
a value index table comprising a mapping between each unique data value of the directed property graph and a value identifier (ID) assigned to the corresponding unique data value; and
a vertex index table comprising a mapping between the value ID assigned to each unique data value and a vertex ID of the corresponding value vertex; and
processing circuitry that is coupled to at least one of the set of storage elements, and is configured to:
receive a search query that comprises a first reference value;
identify, from the plurality of value vertices, a first value vertex having a first data value that is associated with the first reference value, wherein the identification is based on the value index table and the vertex index table;
track (i) a first set of edges, of the plurality of edges, coupled to the first value vertex and (ii) a first set of entity vertices, of the plurality of entity vertices, coupled to the first value vertex by way of the first set of edges; and
generate a response to the search query based on the first data value, a first set of labels of the first set of edges, and a first set of entities of the dataset represented by the first set of entity vertices” are mere gathering data and applying process steps (i.e., generating response to search query); the computers that perform those functions and the mental steps are recited at a high level of generality that do not impose a meaningful limitation on the judicial exception and are insufficient to integrate the mental steps into a practical application. Although the claim recites the additional functionality “generate a response to the search query based on the first data value, a first set of labels of the first set of edges, and a first set of entities of the dataset represented by the first set of entity vertices“, the gathering and determining are also recited at a high level of generality and merely generally link to respective technological environments (e.g., generate response) and therefore likewise amounts to no more than a mere instructions to apply the exception using generic computer components and is insufficient to integrate the steps into a practical application.
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception? No— The recitation in the preamble is insufficient to transform a judicial exception to a patentable invention because the preamble elements are recited at a high level of generality that simply links to a field of use, see MPEP 2106.05(h). The claimed extra-solution of operation based on generating response from a search query based on directed property graph is acknowledged to be well-understood, routine, conventional activity (see, e.g., court recognized WURC examples in MPEP 2106.05(d)(II)(i). Similarly, the gathering and generating are also recited at a high level of generality and merely generally link to respective technological environments. The claim thus recites computing components only at a high-level of generality such that it amounts to no more than mere instructions to apply the exception using generic computer components. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept.
Taken alone, their additional elements do not amount to significantly more than the above- identified judicial exception (the abstract idea). Looking at the limitations as an ordered combination adds nothing that is not already present when looking at the elements taken individually. There is no indication that the combination of elements improves the functioning of a computer or improves any other technology. Their collective functions merely provide conventional computer implementation.
For the reasons above, claim 1 is rejected as being directed to non-patentable subject matter under §101.
The analysis of claims 2-3, 5-18 and 20 are as follows:
Step 2A, prong one: Does claims 2-3, 5-18 and 20 recite an abstract idea, law of nature or natural phenomenon? Yes—the limitations of “
Claim 2 recites wherein the dataset comprises a plurality of entities, one or more properties associated with each entity, and one or more data values of the one or more properties, respectively, wherein the processing circuitry is further configured to generate the directed property graph based on the dataset and store the directed property graph in the at least one of the set of storage elements, and wherein, to generate the directed property graph, the processing circuitry is further configured to (i) instantiate one entity vertex for each entity of the plurality of entities, and one value vertex for each unique data value of the dataset, and (ii) create one or more edges between each entity vertex and one or more value vertices having the corresponding one or more data values, with the one or more edges being indicative of the one or more properties associated with the corresponding entity vertex, respectively.
Claim 3 recites wherein the processing circuitry is further configured to identify, for each entity vertex of the first set of entity vertices, one or more additional value vertices coupled thereto by way of one or more additional edges, respectively, and wherein the response is generated further based on one or more labels associated with the one or more additional edges and one or more data values associated with the one or more additional value vertices, of each entity vertex of the first set of entity vertices, respectively.
Claim 5 recites wherein the value ID assigned to each unique data value is an encrypted version of the corresponding unique data value.
Claim 6 recites wherein the processing circuitry is further configured to: search the value index table to identify the first data value that matches the first reference value of the search query; determine a first value ID mapped to the first data value; search the vertex index table to identify the first value ID; determine a first vertex ID mapped to the first value ID; and search the directed property graph to identify the first value vertex having the first vertex ID.
Claim 7 recites wherein the first value vertex is in an encrypted format, wherein in the vertex index table, each vertex ID is further mapped to a decryption technique associated with the corresponding value vertex, and wherein the processing circuitry is further configured to identify a first decryption technique mapped to a first vertex ID of the first value vertex in the vertex index table and decrypt the first value vertex using the first decryption technique to obtain the first data value thereof.
Claim 8 recites wherein the processing circuitry is further configured to: identify, for each entity vertex of the first set of entity vertices, one or more additional value vertices coupled thereto by way of one or more additional edges, respectively, wherein the one or more additional value vertices are in an encrypted format; search the vertex index table to identify one or more vertex IDs of the one or more additional value vertices, respectively, wherein in the vertex index table, each vertex ID is further mapped to a decryption technique associated with the corresponding value vertex; determine one or more decryption techniques and one or more value IDs mapped to the one or more vertex IDs, respectively; and decrypt the one or more additional value vertices to obtain one or more data values thereof based on the one or more value IDs and the one or more decryption techniques, respectively, wherein the response is generated further based on one or more labels associated with the one or more additional edges and the one or more data values associated with the one or more additional value vertices, of each entity vertex of the first set of entity vertices, respectively.
Claim 9 recites wherein the processing circuitry is further configured to: identify, for each entity vertex of the first set of entity vertices, one or more additional value vertices coupled thereto by way of one or more additional edges, respectively, wherein the one or more additional value vertices are in encrypted format; search the vertex index table to identify one or more vertex IDs of the one or more additional value vertices, respectively; determine one or more value IDs mapped to the one or more vertex IDs, respectively; search the value index table to identify the one or more value IDs; and determine one or more data values mapped to the one or more value IDs, respectively, wherein the response is further generated based on one or more labels associated with the one or more additional edges and the one or more data values associated with the one or more additional value vertices, of each entity vertex of the first set of entity vertices, respectively.
Claim 10 recites wherein the processing circuitry is further configured to: identify, based on the search query, a second value vertex in conjunction with the first value vertex; and track (i) a second set of edges, of the plurality of edges, coupled to the second value vertex and (ii) a second set of entity vertices, of the plurality of entity vertices, coupled to the second value vertex by way of the second set of edges, wherein the processing circuitry generates the response further based on a second set of labels of the second set of edges and a second set of entities of the dataset represented by the second set of entity vertices.
Claim 11 recites wherein the response corresponds to an output of a database operation executed on (i) the first set of labels and the first set of entities and (ii) the second set of labels and the second set of entities.
Claim 12 recites wherein the search query further comprises a similarity indicator to indicate that the search is to be executed for the first reference value and at least one data value that is similar to the first reference value, wherein in the value index table, each unique data value of the directed property graph and the associated value ID are further mapped to a similarity code assigned thereto, where an identical similarity code of two or more data values is indicative of similarity therebetween, wherein the second value vertex is similar to the first value vertex such that the second value vertex has a second data value that is similar to the first data value, and wherein the processing circuitry identifies the second value vertex based on the value index table and the vertex index table.
Claim 13 recites wherein the processing circuitry is further configured to: search the value index table to identify the first data value that matches the first reference value of the search query; determine a first similarity code mapped to the first data value; detect, in the value index table, the second data value that has the first similarity code mapped thereto; determine a first value ID mapped to the first data value and a second value ID mapped to the second data value; search the vertex index table to identify the first value ID and the second value ID; determine a first vertex ID mapped to the first value ID and a second vertex ID mapped to the second value ID; and search the directed property graph to identify the first value vertex having the first vertex ID and the second value vertex having the second vertex ID.
Claim 14 recites wherein the first reference value comprises a data string and a wildcard string, and wherein the processing circuitry is further configured to: search the value index table to identify the first data value and a second data value of the second value vertex such that a first string of the first data value and a second string of the second data value match the data string of the first reference value; determine a first value ID mapped to the first data value and a second value ID mapped to the second data value; search the vertex index table to identify the first value ID and the second value ID; determine a first vertex ID mapped to the first value ID and a second vertex ID mapped to the second value ID; and search the directed property graph to identify the first value vertex having the first vertex ID and the second value vertex having the second vertex ID.
Claim 15 recites wherein the search query further comprises a second reference value, and wherein the processing circuitry is further configured to: search the value index table to identify the first data value and a second data value of the second value vertex such that the first data value and the second data value match the first reference value and the second reference value, respectively; determine a first value ID mapped to the first data value and a second value ID mapped to the second data value; search the vertex index table to identify the first value ID and the second value ID; determine a first vertex ID mapped to the first value ID and a second vertex ID mapped to the second value ID; and search the directed property graph to identify the first value vertex having the first vertex ID and the second value vertex having the second vertex ID.
Claim 16 recites wherein the search query further comprises a hint associated with the first reference value, wherein the processing circuitry is further configured to (i) identify, from the first set of edges and the second set of edges, a first subset of edges and a second subset of edges that are associated with the hint, respectively, and (ii) identify, from the first set of entity vertices and the second set of entity vertices, a first subset of entity vertices and a second subset of entity vertices that are coupled to the first subset of edges and the second subset of edges, respectively, and wherein the response is generated based on (i) a first subset of labels, of the first set of labels, associated with the first subset of edges, (ii) a first subset of entities, of the first set of entities, represented by the first subset of entity vertices, (iii) a second subset of labels, of the second set of labels, associated with the second subset of edges, and (iv) a second subset of entities, of the second set of entities, represented by the second subset of entity vertices.
Claim 17 recites wherein the response corresponds to an output of a database operation executed on (i) the first subset of labels and the first subset of entities and (ii) the second subset of labels and the second subset of entities.
Claim 18 recites wherein the value index table and the vertex index table are encrypted, and wherein the processing circuitry is further configured to decrypt the value index table and the vertex index table before searching the value index table and the vertex index table.
Claim 20 recites wherein the first value vertex comprises metadata that is a descriptor of the first data value, and wherein the response for the search query is generated further based on the metadata of the first value vertex” as drafted, are mental steps based on various processes can be performed in a human mind of performing search to generate response based on directed property graph (acts of thinking, decision making). These limitations, therefore fall within the human mind processes group and with a pen & paper.
Step 2A, prong two: Does the claim recite additional elements that integrate the judicial exception into a practical application? No—the judicial exception is not integrated into a practical application as just stated as related to the technical field of computer science . Although the claim recites that the recited functionality includes “method”, “system” and “readable medium”, these computer components are recited at a high-level of generality such that it amounts to no more than a mere instructions to apply the exception using generic computer component. In addition, the claim recites “Claim 2 recites wherein the dataset comprises a plurality of entities, one or more properties associated with each entity, and one or more data values of the one or more properties, respectively, wherein the processing circuitry is further configured to generate the directed property graph based on the dataset and store the directed property graph in the at least one of the set of storage elements, and wherein, to generate the directed property graph, the processing circuitry is further configured to (i) instantiate one entity vertex for each entity of the plurality of entities, and one value vertex for each unique data value of the dataset, and (ii) create one or more edges between each entity vertex and one or more value vertices having the corresponding one or more data values, with the one or more edges being indicative of the one or more properties associated with the corresponding entity vertex, respectively.
Claim 3 recites wherein the processing circuitry is further configured to identify, for each entity vertex of the first set of entity vertices, one or more additional value vertices coupled thereto by way of one or more additional edges, respectively, and wherein the response is generated further based on one or more labels associated with the one or more additional edges and one or more data values associated with the one or more additional value vertices, of each entity vertex of the first set of entity vertices, respectively.
Claim 5 recites wherein the value ID assigned to each unique data value is an encrypted version of the corresponding unique data value.
Claim 6 recites wherein the processing circuitry is further configured to: search the value index table to identify the first data value that matches the first reference value of the search query; determine a first value ID mapped to the first data value; search the vertex index table to identify the first value ID; determine a first vertex ID mapped to the first value ID; and search the directed property graph to identify the first value vertex having the first vertex ID.
Claim 7 recites wherein the first value vertex is in an encrypted format, wherein in the vertex index table, each vertex ID is further mapped to a decryption technique associated with the corresponding value vertex, and wherein the processing circuitry is further configured to identify a first decryption technique mapped to a first vertex ID of the first value vertex in the vertex index table and decrypt the first value vertex using the first decryption technique to obtain the first data value thereof.
Claim 8 recites wherein the processing circuitry is further configured to: identify, for each entity vertex of the first set of entity vertices, one or more additional value vertices coupled thereto by way of one or more additional edges, respectively, wherein the one or more additional value vertices are in an encrypted format; search the vertex index table to identify one or more vertex IDs of the one or more additional value vertices, respectively, wherein in the vertex index table, each vertex ID is further mapped to a decryption technique associated with the corresponding value vertex; determine one or more decryption techniques and one or more value IDs mapped to the one or more vertex IDs, respectively; and decrypt the one or more additional value vertices to obtain one or more data values thereof based on the one or more value IDs and the one or more decryption techniques, respectively, wherein the response is generated further based on one or more labels associated with the one or more additional edges and the one or more data values associated with the one or more additional value vertices, of each entity vertex of the first set of entity vertices, respectively.
Claim 9 recites wherein the processing circuitry is further configured to: identify, for each entity vertex of the first set of entity vertices, one or more additional value vertices coupled thereto by way of one or more additional edges, respectively, wherein the one or more additional value vertices are in encrypted format; search the vertex index table to identify one or more vertex IDs of the one or more additional value vertices, respectively; determine one or more value IDs mapped to the one or more vertex IDs, respectively; search the value index table to identify the one or more value IDs; and determine one or more data values mapped to the one or more value IDs, respectively, wherein the response is further generated based on one or more labels associated with the one or more additional edges and the one or more data values associated with the one or more additional value vertices, of each entity vertex of the first set of entity vertices, respectively.
Claim 10 recites wherein the processing circuitry is further configured to: identify, based on the search query, a second value vertex in conjunction with the first value vertex; and track (i) a second set of edges, of the plurality of edges, coupled to the second value vertex and (ii) a second set of entity vertices, of the plurality of entity vertices, coupled to the second value vertex by way of the second set of edges, wherein the processing circuitry generates the response further based on a second set of labels of the second set of edges and a second set of entities of the dataset represented by the second set of entity vertices.
Claim 11 recites wherein the response corresponds to an output of a database operation executed on (i) the first set of labels and the first set of entities and (ii) the second set of labels and the second set of entities.
Claim 12 recites wherein the search query further comprises a similarity indicator to indicate that the search is to be executed for the first reference value and at least one data value that is similar to the first reference value, wherein in the value index table, each unique data value of the directed property graph and the associated value ID are further mapped to a similarity code assigned thereto, where an identical similarity code of two or more data values is indicative of similarity therebetween, wherein the second value vertex is similar to the first value vertex such that the second value vertex has a second data value that is similar to the first data value, and wherein the processing circuitry identifies the second value vertex based on the value index table and the vertex index table.
Claim 13 recites wherein the processing circuitry is further configured to: search the value index table to identify the first data value that matches the first reference value of the search query; determine a first similarity code mapped to the first data value; detect, in the value index table, the second data value that has the first similarity code mapped thereto; determine a first value ID mapped to the first data value and a second value ID mapped to the second data value; search the vertex index table to identify the first value ID and the second value ID; determine a first vertex ID mapped to the first value ID and a second vertex ID mapped to the second value ID; and search the directed property graph to identify the first value vertex having the first vertex ID and the second value vertex having the second vertex ID.
Claim 14 recites wherein the first reference value comprises a data string and a wildcard string, and wherein the processing circuitry is further configured to: search the value index table to identify the first data value and a second data value of the second value vertex such that a first string of the first data value and a second string of the second data value match the data string of the first reference value; determine a first value ID mapped to the first data value and a second value ID mapped to the second data value; search the vertex index table to identify the first value ID and the second value ID; determine a first vertex ID mapped to the first value ID and a second vertex ID mapped to the second value ID; and search the directed property graph to identify the first value vertex having the first vertex ID and the second value vertex having the second vertex ID.
Claim 15 recites wherein the search query further comprises a second reference value, and wherein the processing circuitry is further configured to: search the value index table to identify the first data value and a second data value of the second value vertex such that the first data value and the second data value match the first reference value and the second reference value, respectively; determine a first value ID mapped to the first data value and a second value ID mapped to the second data value; search the vertex index table to identify the first value ID and the second value ID; determine a first vertex ID mapped to the first value ID and a second vertex ID mapped to the second value ID; and search the directed property graph to identify the first value vertex having the first vertex ID and the second value vertex having the second vertex ID.
Claim 16 recites wherein the search query further comprises a hint associated with the first reference value, wherein the processing circuitry is further configured to (i) identify, from the first set of edges and the second set of edges, a first subset of edges and a second subset of edges that are associated with the hint, respectively, and (ii) identify, from the first set of entity vertices and the second set of entity vertices, a first subset of entity vertices and a second subset of entity vertices that are coupled to the first subset of edges and the second subset of edges, respectively, and wherein the response is generated based on (i) a first subset of labels, of the first set of labels, associated with the first subset of edges, (ii) a first subset of entities, of the first set of entities, represented by the first subset of entity vertices, (iii) a second subset of labels, of the second set of labels, associated with the second subset of edges, and (iv) a second subset of entities, of the second set of entities, represented by the second subset of entity vertices.
Claim 17 recites wherein the response corresponds to an output of a database operation executed on (i) the first subset of labels and the first subset of entities and (ii) the second subset of labels and the second subset of entities.
Claim 18 recites wherein the value index table and the vertex index table are encrypted, and wherein the processing circuitry is further configured to decrypt the value index table and the vertex index table before searching the value index table and the vertex index table.
Claim 20 recites wherein the first value vertex comprises metadata that is a descriptor of the first data value, and wherein the response for the search query is generated further based on the metadata of the first value vertex” are mere gathering data and applying process steps (i.e., generating response to search query); the computers that perform those functions and the mental steps are recited at a high level of generality that do not impose a meaningful limitation on the judicial exception and are insufficient to integrate the mental steps into a practical application. Although the claim recites the additional functionality “generate a response to the search query based on the first data value, a first set of labels of the first set of edges, and a first set of entities of the dataset represented by the first set of entity vertices“, the gathering and determining are also recited at a high level of generality and merely generally link to respective technological environments (e.g., generate response) and therefore likewise amounts to no more than a mere instructions to apply the exception using generic computer components and is insufficient to integrate the steps into a practical application.
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception? No— The recitation in the preamble is insufficient to transform a judicial exception to a patentable invention because the preamble elements are recited at a high level of generality that simply links to a field of use, see MPEP 2106.05(h). The claimed extra-solution of operation based on generating response from a search query based on directed property graph is acknowledged to be well-understood, routine, conventional activity (see, e.g., court recognized WURC examples in MPEP 2106.05(d)(II)(i). Similarly, the gathering and generating are also recited at a high level of generality and merely generally link to respective technological environments. The claim thus recites computing components only at a high-level of generality such that it amounts to no more than mere instructions to apply the exception using generic computer components. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept.
Taken alone, their additional elements do not amount to significantly more than the above- identified judicial exception (the abstract idea). Looking at the limitations as an ordered combination adds nothing that is not already present when looking at the elements taken individually. There is no indication that the combination of elements improves the functioning of a computer or improves any other technology. Their collective functions merely provide conventional computer implementation.
For the reasons above, claims 2-3, 5-18 and 20 are rejected as being directed to non-patentable subject matter under §101.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PAVAN MAMILLAPALLI whose telephone number is (571)270-3836. The examiner can normally be reached on M-F. 8am - 4pm, EST.
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, Ann J Lo can be reached on (571) 272-9767. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/PAVAN MAMILLAPALLI/
Primary Examiner, Art Unit 2159