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 .
Status of Claims
Claims 1, 21-39 are pending of which claims 1, and 30 are in independent form.
Claims 1, 21-23, 25, 29, 30-33, 35, 39 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph.
Claims 1, 21-39 are rejected under 35 U.S.C. 101.
Claims 1, 21-39 are rejected under 35 U.S.C. 103.
Response to Arguments
Applicant’s arguments with respect to claim(s) 1, and 21-39 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 1, 21-23, 25, 29, 30-33, 35, 39 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention.
Regarding claims 1 and 30, the claims recite “wherein the columnar data includes a plurality of columns of data process format of the query identifier in accordance with a global database identification protocol to produce a global identifier for the query: perform a hash function on the global identifier to produce a hash value for the query: determine whether the hash value for the query exists in a list of query hash values; and when the hash value exists in the list of query hash values: access the list based on the hash value to retrieve a query resultant of the query based on the hash value”, however, applicant could not find support for the newly added amendments, additionally, applicant did not provide support for the amendments in the response.
Regarding claims 21 and 31, the claims recite “a protocol to establish a unified format for query identifiers, wherein the unified format eliminates built-in tolerances employed to accommodate variations in database semantics”, however, applicant could not find support for the newly added amendments, additionally, applicant did not provide support for the amendments in the response.
Regarding claims 22 and 32, the claims recite “wherein the unified format comprises one or more of: removing extraneous white space from the query identifier; adding unique user identification information to the query identifier; converting keywords of the query identifier to a consistent case; and removing parameters from the query identifier”, however, applicant could not find support for the newly added amendments, additionally, applicant did not provide support for the amendments in the response.
Regarding claims 23 and 33, the claims recite “wherein the set of processing core resources is further operable to: when the hash value does not exist in the list of query hash values: determine a schema of a plurality of schemas associated with the query, wherein the schema is regarding related data of the dataset that are referenced by qualified identifiers; modify the global identifier based on the schema to produce a modified global identifier; perform a second hash function on the modified global identifier to produce a second hash value for the query; determine whether the second hash value for the query exists in the list of query hash values; and when the second hash value exists in the list of query hash values: access the list based on the second hash value to retrieve the query resultant of the query based on the second hash value.”, however, applicant could not find support for the newly added amendments, additionally, applicant did not provide support for the amendments in the response.
Regarding claims 23 and 33, the claims recite “wherein the set of processing core resources is further operable to: when the hash value does not exist in the list of query hash values: determine a schema of a plurality of schemas associated with the query, wherein the schema is regarding related data of the dataset that are referenced by qualified identifiers; modify the global identifier based on the schema to produce a modified global identifier; perform a second hash function on the modified global identifier to produce a second hash value for the query; determine whether the second hash value for the query exists in the list of query hash values; and when the second hash value exists in the list of query hash values: access the list based on the second hash value to retrieve the query resultant of the query based on the second hash value”, however, applicant could not find support for the newly added amendments, additionally, applicant did not provide support for the amendments in the response.
Regarding claims 25 and 35, the claims recite “when the second hash value does not exist in the list of query hash values: process the query in accordance with a query processing procedure of the database system to produce the query resultant”, however, applicant could not find support for the newly added amendments, additionally, applicant did not provide support for the amendments in the response.
Regarding claims 29 and 39, the claims recite “when the hash value does not exist in the list of query hash values: process the query in accordance with a query processing procedure of the database system to produce the query resultant; determine whether the global identifier uniquely identifies the query; and when the global identifier does uniquely identify the query, add the hash value and the query resultant to the list of query hash value”, however, applicant could not find support for the newly added amendments, additionally, applicant did not provide support for the amendments in the response.
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, and 21-39 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
The claim(s) recite(s) system and method for generating guardrail data structure in a LLM chatbot system.
With respect to step 1 of the patent subject matter eligibility analysis, the claims are directed to a process, machine, manufacture, or composition of matter.
Independent claims 1, is directed to a system, which comprises, one or more processors.
Independent claims 30 are directed to a “computer-readable memory”, which the specification ¶ [0556] has defined as non-transitory.
Independent All other claims depend on claims 1, and 30. As such, claims 1, 21-39 are directed to a statutory category.
Regarding claims 1, and 30:
With respect to step 2A, prong one (Judicial Exception), it is noted that the independent claims recite an abstract idea falling within the Mental Health grouping of abstract ideas. Specifically, the following limitations recite mathematical concepts and/or mental processes and/or certain methods of organizing human activity.
The claims recite the following limitations directed to an abstract idea:
receiving a query
generating a global identifier for the query
performing a hash function on the identifier
determining whether the hash exists in a list
receiving or computing a query result based on that determination
storing results and identifiers
the claims are directed to: identifying, comparing and managing query identifiers and associated results using rules (hashing, lookup, and storage decisions)
The claims fall within:
Mental Process (determining, comparing, deciding)
Mathematical Algorithm/Concept (hash functions)
With respect to step 2A, Prong Two (Particular Application), the claims do not recite additional elements that integrate the judicial exception into a practical application. The following limitations are considered “additional elements” and explanation will be given as to why these “additional elements” do not integrate the judicial exception into a practical application.
The claims recite the use of:
A database
Processing core resources
A query/response subsystem
Storage structure (lists, hash value)
The processor merely executes the abstract steps. The database is used in a routine storage and retrieval. The hashing is a conventional identifier technique. The list of hash values is a standard lookup/cache structure.
The claims do not:
Improve database architecture
Improve hashing algorithm
Improve query execution at a technical level
Introduce a new data structure
Reduce computational complexity in a technical way.
There are no improvements to computer functionality or any specific technical solution to a computer centric problem. Instead, the computer and semiconductor environment are used as tools to execute abstract mathematical encoding, data analysis, and decision making, with the result merely being applied in a generic manner.
There is no recitation of, a new data structure that changes computer operation, improved network functioning, an unconventional indexing technique, a specific hardware solution.
Instead, the claims recite conventional and generic computer functions performed in a routine manner, which does not amount to a practical application.
With respect to Step 2B. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. The recited components are merely generic computer/database elements performing their routine, well-understood, and conventional functions. See Alive, MPEP 2016.05(d).
The steps mentioned in the independent claims are merely generic processor, generic storage, conventional hashing, routine caching/lookup logic. Courts have consistently helped such high-level information management operations are conventional.
The claims recite only functional, result oriented language (“detecting”, “propagating”, “transferring”,…), without specifying any technical mechanism for performing these operations in a non-conventional manner.
Considering claims as a whole, the ordered combination of elements also reflects nothing more than the typical workflow of distributed systems, and therefore DOES NOT add “significantly more” than the abstract idea.
Such generic, high‐level, and nominal involvement of a computer or computer‐based elements for carrying out the invention merely serves to tie the abstract idea to a particular technological environment, which is not enough to render the claims patent‐eligible, as noted at pg.74624 of Federal Register/Vol. 79, No. 241, citing Alice, which in turn cites Mayo. Further, See, e.g., Alice Corp. Pty. Ltd. v. CLS Bank Int'l, 134 S. Ct. 2347, 2359‐60, 110 USPQ2d 1976, 1984 (2014). See also OIP Techs. v. Amazon.com, 788 F.3d 1359, 1364, 115 USPQ2d 1090, 1093‐94 (Fed. Cir. 2015) ("Just as Diehr could not save the claims in Alice, which were directed to 'implement[ing] the abstract idea of intermediated settlement on a generic computer', it cannot save O/P's claims directed to implementing the abstract idea of price optimization on a generic computer.") (citations omitted). See also, Affinity Labs of Texas LLC v. DirecTV LLC, 838 F.3d 1253, 1257‐1258 (Fed. Cir. 2016) (mere recitation of a GUI does not make a claimpatent‐eligible); Intellectual Ventures I LLC v. Capital One Bank, 792 F.3d 1363, 1370 (Fed. Cir. 2015) ("the interactive interface limitation is a generic computer element".).
The additional elements are broadly applied to the abstract idea at a high level of generality ("similar to how the recitation of the computer in the claims in Alice amounted to mere instructions to apply the abstract idea of intermediated settlement on a generic computer,") as explained in MPEP § 2106.05(f)) and they operate in a well‐understood, routine, and conventional manner.
MPEP § 2106.0S(d)(II) sets forth the following:
The courts have recognized the following computer functions as well-understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity.
• Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec ... ; TLI Communications LLC v. AV Auto. LLC ... ; OIP Techs., Inc., v. Amazon.com, Inc ... ; buySAFE, Inc. v. Google, Inc ... ;
• Performing repetitive calculations, Flook ... ; Bancorp Services v. Sun Life ... ;
• Electronic recordkeeping, Alice Corp ... ; Ultramercial ... ;
• Storing and retrieving information in memory, Versata Dev. Group, Inc. v. SAP Am., Inc ... ;
• Electronically scanning or extracting data from a physical document, Content Extraction and Transmission, LLC v. Wells Fargo Bank ... ; and
• A web browser's back and forward button functionality, Internet Patent
• Corp. v. Active Network, Inc. ...
. . . Courts have held computer-implemented processes not to be significantly more than an abstract idea (and thus ineligible) where the claim as a whole amounts to nothing more than generic computer functions merely used to implement an abstract idea, such as an idea that could be done by a human analog (i.e., by hand or by merely thinking).
In addition, when taken as an ordered combination, the ordered combination adds nothing that is not already present as when the elements are taken individually. There is no indication that the combination of elements integrate the abstract idea into a practical application. Their collective functions merely provide conventional computer implementation. Therefore, when viewed as a whole, these additional claim elements do not provide meaningful limitations to transform the abstract idea into a practical application of the abstract idea or that the ordered combination amounts to significantly more than the abstract idea itself.
The dependent claims have been fully considered as well, however, similar to the findings for claims above, these claims are similarly directed to the “Mental Processes” grouping of abstract ideas set forth in the 2019 PEG, without integrating it into a practical application and with, at most, a general purpose computer that serves to tie the idea to a particular technological environment, which does not add significantly more to the claims. The ordered combination of elements in the dependent claims (including the limitations inherited from the parent claim(s)) add nothing that is not already present as when the elements are 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. Accordingly, the subject matter encompassed by the dependent claims fails to amount to significantly more than the abstract idea.
Looking at the claim as a whole does not change this conclusion and the claim is ineligible.
Regarding claims 21, 22, 31 and 32 (Query Normalization/Canonicalization),
The claim recites:
Establishing unified format for query identifiers, estimating variation (tolerance) in representation (claim 21 and 31)
Performing a normalization operation: removing whitespace, converting to a consistent case, removing parameters, and adding identifier information (claims 22 and 32)
This merely formats and standardizes data prior to comparison. There are no changes to: how queries are executed, how results are computed, or any database engine functionality. These fall under: Mental Process (data standardization/normalization), and Data Manipulation.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 23-25, and 33-35 (Conventional Reprocessing/Retry Logic),
The claim recites:
Performing conditional logic when a match is not found (claims 23 and 33)
Using context (schema/session) to influence processing (claims 24 and 34)
Fallback to normal query execution when no match exists (claims 25 and 35)
This merely applies if/then decision making and retry logic. There are no changes to: how hashing works, how queries are executed technically, or any underlaying system architecture. These fall under: Mental Process (Evaluation, decision making), and Rule based data processing.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 26, 27, 29, 36, 37 and 39 (Storing, Caching, and Uniqueness Handling),
The claim recites:
Storing query results and identifiers (claims 26 and 36)
Executing queries on processing resources (claims 27 and 37)
Determining uniqueness of identifiers and storing results conditionally (claims 29 and 39)
This merely performs: storing results, checking uniqueness, reusing stored data. There are no changes to: memory architecture, caching mechanism, or processing operation. These fall under: Mental Process (record-keeping, comparison), and Data storage and retrieval.
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Regarding claims 28, and 38 (Access Control/Permission Evaluation),
The claim recites:
Verifying whether the user has permission to access data before returning a result
This merely applies a rule-based access decision. There are no changes to: security technology, authentication mechanism, or system architecture. These fall under: Mental Process (Rule Evaluation), and Method of organizing human activity (access control).
This does not change the nature of the abstract idea. It does not add a technical improvement to an abstract idea, such as improving computer functionality, data structure, or processing architecture.
There is no practical application, and no inventive step, the claims are still considered abstract.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1, 21, 22, 27, 30, 31, 32, and 37 are rejected under 35 U.S.C. 103 as being unpatentable over Vogelsgesang; Adrian et al. (US 20200201860 A1) [Vogelsgesang] in view of Stoddard; Joshua F. et al. (US 20190361843 A1) [Stoddard].
Regarding claims 1 and 30, Vogelsgesang discloses, a query and response sub-system of a database system (receiving a database query and executing via operator tree [Abstract], ¶ [0005] , generating result set corresponding to the query ¶ [0035]) comprises: a plurality of computing device clusters, wherein a computing device cluster of the plurality of computing device clusters includes a plurality of computing devices, wherein a computing device of the plurality of computing devices includes a plurality of computing nodes, wherein a computing node of the plurality of computing nodes includes a plurality of processing core resources (Fig. 1, client device, database server, execution components ¶ [0035], computing device including CPUs, memory, etc.. ¶ [0032]), wherein a set of processing core resources of the computing device cluster is operable to:
receive a query regarding data of a dataset, [wherein the query has a query identifier] (receives a database query ¶ [0003], receiving a database query ¶ [0035], execution selector identifies query characteristics ¶ [0051], [0053]);
wherein the dataset includes a plurality of rows of columnar data, wherein the columnar data includes a plurality of columns of data (SQL queries include SELECT...FROM…WHERE… specifying columns ¶ [0003], tuples (e.g. rows in database 112) ¶ [0052], columns from different join sides [0063]);
when the hash value exists in the list of query hash values (reuse/replace duplicate operators ¶ [0055], hash mapping…eliminate duplicate fragments ¶ [0005], [0012], [0055], [0079]);
access the list based on the hash value (the computed value is stored in a register of the CPU(s) 202. In some implementations, the compiler 242 and/or the optimizer 242 store data structures, such as hash maps and lists of the dependencies between query operators 228 in the memory 214, to support or guide the optimization passes ¶ [0040]. Subsequently, the optimization pass 308-D traverses the query operator tree 228 in breadth-first post-order 322, guided by a hash map 324 (e.g., indexed by the query operator signatures) and/or a list of dependencies 320. In some implementations, the dependencies list 320 and/or the hash map 324 are updated during the course of the tree traversal 322 ¶ [0050]).
However, Vogelsgesang does not explicitly facilitate wherein the query has a query identifier; process format of the query identifier in accordance with a global database identification protocol to produce a global identifier for the query; perform a hash function on the global identifier to produce a hash value for the query; determine whether the hash value for the query exists in a list of query hash values; to retrieve a query resultant of the query based on the hash value.
Stoddard discloses, wherein the query has a query identifier (similarity search query includes hashed token identifiers ¶ [0017], hash token user as identifiers ¶ [0080], [0082]);
process format of the query identifier in accordance with a global database identification protocol to produce a global identifier for the query (tokens hashed via one-way hash function generating unique values ¶ [0078], similarity search query transmitted across machines ¶ [0194], global dictionary maps hashed token values consistently across machines ¶ [0195], distributing global representations across nodes ¶ [0196]);
perform a hash function on the global identifier to produce a hash value for the query (inverse document index is indexed by hashed token identifiers, hashed using a predefined one-way hash function, and the similarity search query includes hashed token identifiers corresponding to tokens in the target document ¶ [0017], [0074], one way hash function produces a hashed token ¶ [0078], token hashed to produce hashed token identifiers ¶ [0082], FIGS. 3A, 3B, 3C and 3D illustrate examples of a reverse index, similarity search query, local dictionary and global dictionary, respectively, in accordance with some embodiments ¶ [0027], [0084], [0087], [0143]-[0144]);
determine whether the hash value for the query exists in a list of query hash values (hash token used to locate corresponding entries in reverse index ¶ [0082], hash tokens identify entries in index [0080]);
to retrieve a query resultant of the query based on the hash value (similarity search returns matching files based on hash tokens ¶ [0082], [0196]).
It would have been obvious to one ordinary skilled in the art before the effective filing date of the claimed invention to combine the teachings of the cited references because Stoddard’s system would have allowed Vogelsgesang to facilitate wherein the query has a query identifier; process format of the query identifier in accordance with a global database identification protocol to produce a global identifier for the query; perform a hash function on the global identifier to produce a hash value for the query; determine whether the hash value for the query exists in a list of query hash values; to retrieve a query resultant of the query based on the hash value. The motivation to combine is apparent in the Vogelsgesang’s reference, because there is a need to improve secure search and management of computers in computer networks.
Regarding claims 21 and 31, the combination of Vogelsgesang and Stoddard discloses, wherein the global database identification protocol comprises: a protocol to establish a unified format for query identifiers (Stoddard: each token is hashed to produce hash token and use it to identify an entry ¶ [0080], similarity search module identifying files based on similarity query ¶ [0116], adding entries and updating reverse index ¶ [0123]),
wherein the unified format eliminates built-in tolerances employed to accommodate variations in database semantics (Stoddard: similarity criteria include a threshold score ¶ [0012], files satisfy one or more similarity threshold values ¶ [0116], similarity score based on vector …TF-IDF value ¶ [0117], results are determined based on similarity threshold ¶ [0095], [0199], [0203]).
Regarding claims 22 and 32, the combination of Vogelsgesang and Stoddard discloses, wherein the unified format comprises one or more of: removing extraneous white space from the query identifier; adding unique user identification information to the query identifier (Stoddard: removing from the reverse index ¶ [0081], each token is hashed to produce hashed tokens…used to identify an entry…also add to the entry ¶ [0080], add entries to reverse index ¶ [0123], reverse index module…entries are added, removed and updated ¶ [0111]);
converting keywords of the query identifier to a consistent case (Stoddard: tokenization of input text ¶ [0080], similarity search module processes tokens and computes similarity scores ¶ [0116]-[0117]);
and removing parameters from the query identifier (Vogelsgesang: removing duplicate/redundant query operators ¶ [0055], [0140], removing duplicate query fragments ¶ [0073], refactoring query operator tree ¶ [0010]).
Regarding claims 27 and 37, the combination of Vogelsgesang and Stoddard discloses, comprises one or more of: the set of processing core resources includes one or more processing core resources (Stoddard: one or more processors executing programs ¶ [0099]-[0100]); and the query including one or more query statements that is executable by a processing core resource of the set of processing core resources (Stoddard: query/command response module…processing data request ¶ [0107])
Claim(s) 23-26, 28, 29, 33-36, 38 and 39 are rejected under 35 U.S.C. 103 as being unpatentable over Vogelsgesang in view of Stoddard in view of Plattner; Hasso et al. (US 20140310232 A1) [Plattner].
Regarding claims 23 and 33, the combination of Vogelsgesang and Stoddard discloses, second hash (Vogelsgesang: hash map…indexed by query operator signatures ¶ [0055], detects equivalents using hash map [0073]).
However, neither Vogelsgesang nor Stoddard explicitly facilitates when the hash value does not exist in the list of query hash values: determine a schema of a plurality of schemas associated with the query, wherein the schema is regarding related data of the dataset that are referenced by qualified identifiers; modify the global identifier based on the schema to produce a modified global identifier; perform a [second hash] function on the modified global identifier to produce a [second hash] value for the query; determine whether the [second hash] value for the query exists in the list of query hash values; and when the second hash value exists in the list of query hash values: access the list based on the [second hash] value to retrieve the query resultant of the query based on the [second hash] value.
Plattner discloses, when the hash value does not exist in the list of query hash values (looks up …if a cache entry …exists ¶ [0187], the cash controller does not find an existing cache entry ¶ [0190]. Also see ¶ [0022], [0027]-[0029]):
determine a schema of a plurality of schemas associated with the query, wherein the schema is regarding related data of the dataset that are referenced by qualified identifiers (a schema comprising records stored in the main store and records stored in the differential buffer ¶ [0014], running the query against records of the schema...including joins…multiple tables…partitions ¶ [0024]);
modify the global identifier based on the schema to produce a modified global identifier (existence indicators is embodied by the hash value…includes table ID, grouping attributes, aggregates, filter predicates ¶ [0029]);
perform a [second hash] function on the modified global identifier to produce a [second hash] value for the query (hashes the query…uses this computed hash as an identifier ¶ [0187], after miss, the query is processed and new cache entry is created ¶ [0190]);
determine whether the [second hash] value for the query exists in the list of query hash values (looks up …if a cache entry …exists ¶ [0187], checking existence indicator…whether cache results exist ¶ [0027]); and
when the second hash value exists in the list of query hash values: access the list based on the [second hash] value to retrieve the query resultant of the query based on the [second hash] value (accessing the cache store to obtain the cached results ¶ [0187], if cache result exists…accessing the cache store to obtain the result ¶ [0022]).
It would have been obvious to one ordinary skilled in the art before the effective filing date of the claimed invention to combine the teachings of the cited references because Plattner’s system would have allowed Vogelsgesang and Stoddard to facilitate when the hash value does not exist in the list of query hash values: determine a schema of a plurality of schemas associated with the query, wherein the schema is regarding related data of the dataset that are referenced by qualified identifiers; modify the global identifier based on the schema to produce a modified global identifier; perform a [second hash] function on the modified global identifier to produce a [second hash] value for the query; determine whether the [second hash] value for the query exists in the list of query hash values; and when the second hash value exists in the list of query hash values: access the list based on the [second hash] value to retrieve the query resultant of the query based on the [second hash] value. The motivation to combine is apparent in the Vogelsgesang and Stoddard’s reference, because there is a need to improve columnar in-memory databases based on a main-delta architecture.
Regarding claims 24 and 34, the combination of Vogelsgesang, Stoddard and Plattner discloses, determine the schema based on a state session associated with the query (Plattner: the schema may be referred to as the base schema of the query ¶ [0014], when a client issues a query …determining …an up to date results based on schema ¶ [0187]), wherein the state session defines a connection-specific context (Stoddard: communication module…handling processing…between machines in a network ¶ [0102]-[0103], processing data request…from a preceding machine, succeeding machine, server, or external machine ¶ [0107]) including a set of special register values that resolve unqualified identifiers (Plattner: query compiled into execution plan using schema and attributes ¶ [0038]-[0040], examiner specifies that resolving identifiers happened via schema and attributes).
Regarding claims 25 and 35, the combination of Vogelsgesang, Stoddard and Plattner discloses, when the second hash value does not exist in the list of query hash values (Plattner: the cache management store does not comprise this hash value…¶ [0027]): process the query in accordance with a query processing procedure of the database system to produce the query resultant (Plattner: running the query against the entire schema to obtain up to date results ¶ [0022]).
Regarding claims 26 and 36, the combination of Vogelsgesang, Stoddard and Plattner discloses, store the query resultant and the second hash value in the list of query hash values (Plattner: storing a result of the query in the cache store [0187], the existence indicator is embodied by the hash value of query ¶ [0029]).
Regarding claims 28 and 38, the combination of Vogelsgesang, Stoddard and Plattner discloses, when the hash value exists in the list of query hash values: verify that a user submitting the query has permission to access the data of the dataset (Plattner: checking…whether there is a cache result ¶ [0027], system handling communications, processing, and access across machines ¶ [0102]-[0104]).
Regarding claims 29 and 39, the combination of Vogelsgesang, Stoddard and Plattner discloses, when the hash value does not exist in the list of query hash values (Plattner: if there is no cache result…running the query ¶ [0022]): process the query in accordance with a query processing procedure of the database system to produce the query resultant (Plattner: running the query against the entire schema to obtain up to date results ¶ [0022]);
determine whether the global identifier uniquely identifies the query (Plattner: hash value…corresponds to the query...including attributes ¶ [0029]); and
when the global identifier does uniquely identify the query, add the hash value and the query resultant to the list of query hash value (Plattner: storing results and hash identifiers ¶ [0029], [0187]).
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 MOHAMMAD S ROSTAMI whose telephone number is (571)270-1980. The examiner can normally be reached Mon-Fri From 9 a.m. to 5 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, Boris Gorney can be reached at (571)270-5626. 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.
4/15/2025
/MOHAMMAD S ROSTAMI/ Primary Examiner, Art Unit 2154