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 .
Detailed Action
This is a first final Office Action for application 18/442,085, in response to arguments and amendments filed on 02/23/2026. Claims 1, 2, 4, 9, 17, and 18 are currently amended. Claim 19 has been added by amendment. Claims 1-19 are pending and examined below.
Response to Arguments
Applicant's arguments filed 02/23/2026 have been fully considered but they are not persuasive.
While examiner agrees that primary art Lin does not disclose amended claim 1 language
A data query method, comprising: receiving a graph query without non-graph query, the graph query defining a graph relationship between target entities within a to-be-queried database
applicant further argues that Naufel does not disclose this new language as well.
However, Naufel discloses that in some examples the user intent is provided in a graph format (Par. [0264]). Therefore argument is unpersuasive.
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.
Claim(s) 1-2, 4-19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Lin (US Pub. 2025/0209072) in view of Naufel (US Pub. 2024/0362208).
Regarding claim 1, Lin teaches
A data query method, comprising:
traversing the to-be-queried database using the graph query through a graph analytics engine to obtain a plurality of output entries, each output entry including a plurality of data items matching the graph relationship defined by the graph query, wherein: the graph analytics engine includes an auxiliary component for the graph query, the auxiliary component including a plurality of vertices and a plurality of edges associated with the to-be-queried database, each edge linking two vertices; and (Figs. 2-4; Par. [0006, 23-24, 42] at step S22, the query is parsed and at step S23, the system executes the query (i.e. traversing the database using the query to obtain entries), including the SQL and Gremlin graph components (i.e. auxiliary components including a plurality of vertices and a plurality of edges) )
generating a graph-based representation of the plurality of output entries. (Figs. 2-4; Par. [0006, 23-24, 42] at step S22, the query is parsed and at step S23, the system executes the query (i.e. traversing the database using the query to obtain output entries), including the SQL and Gremlin graph components)
Lin does not explicitly teach
receiving a graph query without non-graph query, the graph query defining a graph relationship between target entities within a to-be-queried database;
However, from the same field, Naufel teaches
receiving a graph query without non-graph query, the graph query defining a graph relationship between target entities within a to-be-queried database; (Par. [0264] in some examples, a structured query data contextualized with user intent is generated in a Graph Query Language)
It would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to combine the formats of Naufel into the query method of Lin. The motivation for this combination would have been to improve graph database technology as explained in Naufel (Par. [0007]).
Regarding claim 2, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein traversing the to-be- queried database using the graph query through the graph analytics engine further comprises: mapping the graph query into a logical data plan in accordance with the auxiliary component; (Fig. 3; Par. [0044-6] the Gremlin graph query is used to obtain graph operators (i.e. logical data plan in accordance with auxiliary component))
translating the logical data plan to a physical data plan; and (Fig. 3; Par. [0044-6] the Gremlin graph query is used to obtain graph operators (i.e. logical data plan in accordance with auxiliary component))
querying, based on the physical data plan, the to-be-queried database through an execution node. (Fig. 3; Par. [0044-6, 50-1] the fused set of SQL and Gremlin operators are turned into an execution plan output at step 33)
Regarding claim 4, Lin and Naufel teach claim 1 as shown above, and Naufel further teaches
The data query method of claim 1, wherein the graph query is written in a graph query language. (Par. [0264] in some examples, a structured query data contextualized with user intent is generated in a Graph Query Language)
Regarding claim 5, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein the to-be-queried database is built in accordance with a data architecture, the data architecture including at least one of relational database, data warehouse, or data lake. (Fig. 1; Par. [0018] relational table (i.e. relational database; #11) is included in the data storage area of the queried database)
Regarding claim 6, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein the to-be-queried database defines the graph relationship between the target entities in a tabular form. (Par. [0021] SQL query is fused with a Gremlin graph query in such a way that a graph query operator and a SQL query operator and SQL operator can be converted (i.e. relationship defined between graph and tabular form) into each other)
Regarding claim 7, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein the to-be-queried database is compatible with structured query language (SQL). (Par. [0021] SQL query is fused with a Gremlin graph query in such a way that a graph query operator and a SQL query operator and SQL operator can be converted into each other)
Regarding claim 8, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein the to-be-queried database includes a non-SQL (NoSQL) database. (Par. [0021] SQL query is fused with a Gremlin graph query (i.e. no SQL) in such a way that a graph query operator and a SQL query operator and SQL operator can be converted into each other)
Regarding claim 9, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein traversing the to-be-queried database using the graph query through the graph analytics engine further comprises: obtaining catalogs, schemas, and attributes, based on the graph relationship between the target entities; (Par. [0021, 25] based on a SQL type system, basic types in a graph model (i.e. obtained from a catalog) are extended, and a point type (i.e. attribute), an edge type, and a path type (i.e. schemas) are added)
defining the plurality of vertices and the plurality of edges in form of arrays, based on the catalogs, schemas, and attributes; and (Figs. 2-4; Par. [0006, 23-24, 42] at step S22, the query is parsed and at step S23, the system executes the query (i.e. traversing the database using the query to obtain entries in the form of arrays), including the SQL and Gremlin graph components (i.e. auxiliary components including a plurality of vertices and a plurality of edges) )
generating the auxiliary component, based on the plurality of vertices and the plurality of edges. (Figs. 2-4; Par. [0006, 23-24, 42] at step S22, the query is parsed and at step S23, the system executes the query (i.e. traversing the database using the query to obtain entries in the form of arrays), including the SQL and Gremlin graph components (i.e. auxiliary components including a plurality of vertices and a plurality of edges) )
Regarding claim 10, Lin and Naufel teach claim 9 as shown above, and Lin further teaches
The data query method of claim 9, wherein the auxiliary component is a human-readable file. (Figs. 2-4; Par. [0006, 23-24, 42] at step S22, the query is parsed and at step S23, the system executes the query, including the SQL and Gremlin graph components (i.e. auxiliary components including a plurality of vertices and a plurality of edges contained in a human readable file))
Regarding claim(s) 11, Lin and Naufel teach claim 1 as shown above, and Naufel further teaches
The data query method of claim 10, wherein the human-readable file is in a standard text-based format, including at least one of JavaScript Object Notation (JSON), Human-Optimized Config Object Notation (HOCON), or Extensible Markup Language (XML). (Par. [0163] any of the user reports can be generated in a variety of formats, including pure JSON)
Regarding claim(s) 12, Lin and Naufel teach claim 1 as shown above, and Naufel further teaches
The data query method of claim 9, wherein a respective edge linking two adjacent vertices of the plurality of vertices is directed or undirected. (Par. [0074] the edges can be single (i.e. undirected) or directed)
Regarding claim 13, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 12, wherein the respective edge linking two adjacent vertices of the plurality of vertices includes a weight component. (Par. [0032] the weight fields associated with the edges are obtained )
Regarding claim(s) 14, Lin and Naufel teach claim 1 as shown above, and Naufel further teaches
The data query method of claim 9, wherein the auxiliary component is created through a user interface associated with the auxiliary component. (Par. [0163] any of the user reports can be generated in a variety of formats, including pure JSON)
Regarding claim(s) 15, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein generating the graph-based representation of the plurality of output entries further comprises: obtaining a respective graph relationship of the plurality of output entries; (Par. [0021] SQL query is fused with a Gremlin graph query in such a way that a graph query operator and a SQL query operator and SQL operator can be converted into each other)
Lin further teaches
optimizing the respective graph relationship of the plurality of output entries for scalability; and (Par. [0046, 82] the query execution paths of the SQL and graph query can be fused for global path optimization (i.e. optimizing for scalability))
Naufel further teaches
visualizing the optimized respective graph relationship of the plurality of output entries. (Par. [0163] any of the user reports can be generated in a variety of formats)
Regarding claim 16, Lin and Naufel teach claim 1 as shown above, and Lin further teaches
The data query method of claim 1, wherein the receiving, the traversing, and the generating are performed via an application or a user interface. (Par. [0054] the Gremlin API can be used for calling)
Regarding claim 17, while worded slightly differently, is rejected under the same rationale as claim 1. Lin further teaches
one or more processors (Fig. 6; Par. [0007] system includes processors (61) and memory (#62))
memory storing one or more programs (Fig. 6; Par. [0007] system includes processors (61) and memory (#62))
Regarding claim 18, while worded slightly differently, is rejected under the same rationale as claim 17.
Regarding claim 19, Lin and Naufel teach claim 1 as shown above, and Naufel further teaches
The data query method of claim 1, wherein the graph analytics engine utilizes a schema that defines a hierarchy of target entities and the hierarchy reflects a graph relationship of the target entities within the to-be-queried database. (Par. [0264] in some examples, a structured query data contextualized with user intent is generated in a Graph Query Language (i.e. defines a hierarchy of target entities))
Claim(s) 3 is/are rejected under 35 U.S.C. 103 as being unpatentable over Lin (US Pub. 2025/0209072) in view of Naufel (US Pub. 2024/0362208), and further in view of Allin et al. (US Pat. 11,188,434).
Regarding claim(s) 3, Lin and Naufel teach claim 2 as shown above, but do not explicitly teach
The data query method of claim 2, wherein the graph analytics engine includes a plurality of execution nodes, each execution node being associated with a respective to-be-queried database. However, from the same field Allin teaches
The data query method of claim 2, wherein the graph analytics engine includes a plurality of execution nodes, each execution node being associated with a respective to-be-queried database. (Fig. 3; Col. 10 [Lines 3-13] the input nodes (#302-4) and sink node (#314) are joined, sorted, etc. (i.e. processes are executed with respective nodes))
It would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to combine the nodes of Allin into the query method of Lin. The motivation for this combination would have been to optimize the SQL query as explained in Allin (Col. 4 [Lines 23-37]).
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to J MITCHELL CURRAN whose telephone number is (469)295-9081. The examiner can normally be reached M-F 8:00am - 5:00pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Sherief Badawi can be reached at (571) 272-9782. 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 MITCHELL CURRAN/Examiner, Art Unit 2161
/SHERIEF BADAWI/Supervisory Patent Examiner, Art Unit 2169