DETAILED ACTION
Notice of Pre-AIA or AIA Status
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Continued Examination Under 37 CFR 1.114
2. A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on March 11, 2026 has been entered.
Response to Amendment
3. This action is responsive to the Applicant’s request for continued examination filed on March 11, 2026.4. Claims 1-20 are pending, of which claims 1, 8, and 15 are in independent form. 5. Claims 1, 7, 8, 14, and 15 are amended.
Response to Arguments
6. Applicant's arguments, see “Rejections under 35 U.S.C. § 112(a)”, filed on March 11, 2026, has been carefully considered. Based on the claim amendments, the claim rejections have been withdrawn.7. Applicant’s arguments with respect to independent claims, see filed on March 11, 2026 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
8. The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
9. Claims 5, 12, and 19 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
10. Regarding claim 5, claim 1 recites “excluding a row from the temporary table for which the user does not have access rights,” while claim 5 further recites “populating, by the computing device, the row in the temporary table with null values.” The antecedent for “the row” in claim 5 appears to be “a row” recited in claim 1. However, claim 1 requires that row to be excluded from the temporary table, whereas claim 5 requires “the row” to be in the temporary table and populated with null values. Thus, it is unclear whether “the row” of claim 5 refers to the row excluded from the temporary table in claim 1 or to a different row, and consequently the scope of claim 5 is unclear.
11. Claims 12 and 19 are indefinite for substantially the same reason with respect to their respective independent claims 8 and 15.
Claim Rejections - 35 USC § 103
12. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
13. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
14. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
15. Claims 1-2, 4-5, 7-9, 11-12, 14-16, and 18-19 are rejected under 35 U.S.C. 103 as being unpatentable over McKenna et al. US20150149436A1 (hereinafter McKenna) in view of Clark et al. US20130166537A1 (hereinafter Clark), further in view of Salch et al. US20130086039A1 (hereinafter Salch).
Regarding claim 1, McKenna discloses a method comprising:
detecting, by a computing device, a first language type of a query configured to access a column in a data table (McKenna [0015] e.g., “Databases allow users to interact with the data stored in the database using a structured query language (SQL) interface. The SQL language allows users to execute SQL statements that can access and manipulate data from the database”. It further teaches, see also [0053] e.g., “The leader node 120 receives 300 a database query from a client 105, for example, an SQL query”. The query parser then parses the received query. McKenna also expressly describes tables having columns: see [0065] e.g., “Each table ti includes columns ai, bi, and ci.”. And its concrete temporary-table example t1.a1, i.e., column a1 of source table t1: [0080] e.g., “CREATE TEMP TABLE tt—0(a1) AS
SELECT t1.a1 AS a1 FROM t1, t2]. SQL is the detected/parsed first query-language type, and the SQL query accesses a specified column of a database table), wherein the query is requested by a user (McKenna [0153] e.g., “The leader node 120 receives 300 a database query from a client 105, for example, an SQL query.”. McKenna teaches that the client devices are computing devices executing client software that interact with the database system, and that the client remains in a session “sending query requests to the leader node 120”), [wherein the data table is formatted in a second language type (Clark [0039] e.g., “ Simple fields are mapped directly to a particular data structure in the underlying physical representation (e.g., a field mapped to a given database table and column) … maps the logical field name 320 1 (“FirstName”) to a column named “f_name” in a table named “contact.”. see also [0040] e.g., “… the data format of the field specifications 308 is different from the associated underlying physical data, in which case a conversion of the underlying physical data into the format of the logical field is required.”. The query operates through one logical/query representation while the underlying table/data can exist in another physical representation/format)]
generating, by the computing device, and prior to executing the query, a temporary table including the column from the data table identified in the query (McKenna [0007] e.g., “The database system generates a statement creating a temporary table for storing the intermediate result relation. [and only afterward:] The database system rewrites the matching database query by replacing the matching portion of the database query with the temporary table. [then] The database system executes the rewritten database query.”. That establishes the sequence: create temp table – rewrite query to use temp table – execute query. [And the concrete example nails the column limitations: see [0027] e.g., “CREATE TEMP TABLE tt—0(a1) AS
SELECT t1.a1 AS a1 FROM t1, t2”. So, source-table column t1.a1 is used to populate temporary-table column a1. McKenna further explains, see [0060] e.g., “… the database system executes the generated statement to create the temporary table”),
[and enforcing an access permission by formatting the temporary table to support
the first language type], [and excluding a row from the temporary table for which the user does not have access rights]; and executing, by the computing device, the query against the temporary table to generate a query result (McKenna [0007] e.g., “The database system rewrites the matching database query by replacing the matching portion of the database query with the temporary table. The database system executes the rewritten database query.”. The concrete example shows the actual rewritten query using the temporary table, see [0031] e.g., “SELECT COUNT(*) AS COUNT FROM t3, tt—0 WHERE t3.a3=tt—0.a1;”). McKenna does not explicitly disclose: wherein in the data table is formatted in a second language type; and enforcing an access permission by formatting the temporary table to support the first language type. Clark discloses wherein the data table is formatted in a second language type (Clark [0039] e.g., “Simple fields are mapped directly to a particular data structure in the underlying physical representation (e.g., a field mapped to a given database table and column) … maps the logical field name 320 1 (“FirstName”) to a column named “f_name” in a table named “contact.”. see also [0040] e.g., “… the data format of the field specifications 308 is different from the associated underlying physical data, in which case a conversion of the underlying physical data into the format of the logical field is required.”. The query operates through one logical/query representation while the underlying table/data can exist in another physical representation/format); and enforcing an access permission by formatting the temporary table to support the first language type (Clark [0040] e.g., “… the data format of the field specifications 308 is different from the associated underlying physical data, in which case a conversion of the underlying physical data into the format of the logical field is required.”. see also [0055] e.g., “… the multi-step query component 140 could store the query results in a temporary table in the database and could adjust the abstraction model such that the determined logical field(s) map to the temporary table in which the query results are stored”. The resulting data is then made available for querying through the abstraction model).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to modify the database query processing system of McKenna to include the data abstraction and format-conversion techniques taught by Clark, such that data having an underlying physical representation or format different from that used by the query may be converted and represented through logical fields mapped to a temporary table. One of ordinary skill in the art would have been motivated to make such a combination to enable queries to operate on data stored in different physical representation or formats while maintain a common query interface, thereby facilitating access to heterogeneous data sources and improving interoperability between the query and the underlying data. The combined teachings of McKenna and Clark does not explicitly disclose excluding a row from the temporary table for which the user does not have access rights. Salch discloses [and] excluding a row from the temporary table for which the user does not have access rights (Salch [0005] e.g., “… receiving a query for data stored across a plurality of data systems in which the query is associated with a user; … determining if the user has permission to execute an operation from the query at a data system among the plurality of data systems in which the operation is executed upon at least one table … “. See also [0078] e.g., “… determining if the user has permission may be based on the data system checking an access control for the operation upon at least one table…The access control identifies whether the user has permission to perform the operation(s) on a table or set of tables at the data system”. See also [0085] e.g., “… create a view associated with a user for providing the results …”). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to further modify the combined system of McKenna and Clark to apply the user-based access-control techniques taught by Salch to the data made available through the temporary table. One of ordinary skill in the art would have been motivated to make such a combination to prevent a requesting user from obtaining data for which the user lacks authorization while still permitting authorized query operations and access to permitted intermediate query results.
Claims 8 and 15 incorporates substantively all the imitations of claim 1 in a
computer-based system comprising a processor (McKenna [0095] e.g., “… employing multiple processor…”) and a non-transitory computer-readable medium (McKenna [claim 13] e.g., “A computer readable non-transitory storage medium …”) and rejected under the same rationale.
Regarding claim 2, the proposed combination of McKenna, Clark, and Salch teaches a method of claim 1, further comprising deleting, by the computing
device, the temporary table after execution of the query against the temporary table (Salch [0086] e.g., “… the process 640 drops the view after providing results of the executed operation in the created view to the user”. See also [claim 5] e.g., “… dropping the view after providing the results of the operation in the created view to the user”).
Regarding claim 4, the proposed combination of McKenna, Clark, and Salch teaches a method of claim 1, further comprising retrieving, by the computing device, a row-level permission for the user submitting the query (Salch [0078] e.g., “… checking an access control for the operation upon at least one table… The access control identifies whether the user has permission to perform the operation(s) on a table or set of tables ”).
Regarding claim 5, the proposed combination of McKenna, Clark, and Salch teaches a method of claim 1, further comprising populating, by the computing device, the row in the temporary table with null values (Salch [0005] e.g., “… receiving a query for data stored across a plurality of data systems in which the query is associated with a user; … determining if the user has permission to execute an operation from the query at a data system among the plurality of data systems in which the operation is executed upon at least one table … “. See also [0078] e.g., “… determining if the user has permission may be based on the data system checking an access control for the operation upon at least one table…The access control identifies whether the user has permission to perform the operation(s) on a table or set of tables at the data system”. See also [0085] e.g., “… create a view associated with a user for providing the results …”).
Regarding claim 7, the proposed combination of McKenna, Clark, and Salch teaches a method of claim 1, further comprising receiving, by the computing device, the query configured to access the column in the data table (McKenna [0053] e.g., “The leader node 120 receives 300 a database query from a client 105, for example, an SQL query”. McKenna expressly identifies source tables containing columns and gives SQL queries referencing individual columns such as t1.a1).
Regarding claim 9, the proposed combination of McKenna, Clark, and Salch teaches a computer-based system of claim 8, wherein the instructions further cause the processor to delete the temporary table after execution of the query against the temporary table (Salch [0086] e.g., “… the process 640 drops the view after providing results of the executed operation in the created view to the user”. See also [claim 5] e.g., “… dropping the view after providing the results of the operation in the created view to the user”).
Regarding claim 11, the proposed combination of McKenna, Clark, and Salch teaches a computer-based system of claim 8, wherein the instructions further cause the processor to retrieve a row-level permission for the user submitting the query (Salch [0078] e.g., “… checking an access control for the operation upon at least one table… The access control identifies whether the user has permission to perform the operation(s) on a table or set of tables ”).
Regarding claim 12, the proposed combination of McKenna, Clark, and Salch teaches a computer-based system of claim 8, wherein the instructions further cause the processor to populate the row in the temporary table with null values (Salch [0005] e.g., “… receiving a query for data stored across a plurality of data systems in which the query is associated with a user; … determining if the user has permission to execute an operation from the query at a data system among the plurality of data systems in which the operation is executed upon at least one table … “. See also [0078] e.g., “… determining if the user has permission may be based on the data system checking an access control for the operation upon at least one table…The access control identifies whether the user has permission to perform the operation(s) on a table or set of tables at the data system”. See also [0085] e.g., “… create a view associated with a user for providing the results …”).
Regarding claim 14, the proposed combination of McKenna, Clark, and Salch teaches a computer-based system of claim 8, wherein the instructions further cause the processor to receive the query configured to access the column in the data table (McKenna [0053] e.g., “The leader node 120 receives 300 a database query from a client 105, for example, an SQL query”. McKenna expressly identifies source tables containing columns and gives SQL queries referencing individual columns such as t1.a1).
Regarding claim 16, the proposed combination of McKenna, Clark, and Salch teaches a non-transitory computer-readable medium of claim 15, wherein the instructions further cause the computing device to delete the temporary table after execution of the query against the temporary table (Salch [0086] e.g., “… the process 640 drops the view after providing results of the executed operation in the created view to the user”. See also [claim 5] e.g., “… dropping the view after providing the results of the operation in the created view to the user”).
Regarding claim 18, the proposed combination of McKenna, Clark, and Salch teaches a non-transitory computer-readable medium of claim 15, wherein the instructions further cause the computing device to retrieve a row-level permission for the user submitting the query (Salch [0078] e.g., “… checking an access control for the operation upon at least one table… The access control identifies whether the user has permission to perform the operation(s) on a table or set of tables ”).
Regarding claim 19, the proposed combination of McKenna, Clark, and Salch teaches a non-transitory computer-readable medium of claim 15, wherein the instructions further cause the computing device to populate the row in the temporary table with null values (Salch [0005] e.g., “… receiving a query for data stored across a plurality of data systems in which the query is associated with a user; … determining if the user has permission to execute an operation from the query at a data system among the plurality of data systems in which the operation is executed upon at least one table … “. See also [0078] e.g., “… determining if the user has permission may be based on the data system checking an access control for the operation upon at least one table…The access control identifies whether the user has permission to perform the operation(s) on a table or set of tables at the data system”. See also [0085] e.g., “… create a view associated with a user for providing the results …”).
16. Claims 3, 10, and 17 are rejected under 35 U.S.C. 103 as being unpatentable over McKenna et al. US20150149436A1 (hereinafter McKenna) in view of Clark et al. US20130166537A1 (hereinafter Clark), further in view of Salch et al. US20130086039A1 (hereinafter Salch) as applied to claims 1-2, 4-5, 7-9, 11-12, 14-16, and 18-19 above, and further in view of Cook US Patent 11,281,798 B2 (hereinafter Cook).
Regarding claim 3, the proposed combination of McKenna, Clark, and Salch does not explicitly teach a method of claim 1, wherein data excluded from [the temporary table] comprise personally identifying information (PII) data. Cook discloses a method wherein data excluded from [the temporary table] comprise personally identifying information (PII) data (Cook [col. 10, lines 28-39] e.g., “In some embodiments, the executable 210 may apply the data sharing permissions to filter the data, such as by excluding records, fields, non-personally identifiable information (NPI), PII, LII, portions of the data”). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to include the system and method of filtering consumer data taught by Cook, in the combined teachings of McKenna, Clark, and Salch, to yield the predictable result of filtering or anonymizing both server-side and client-side data and exclude PII based on user-configured or system-defined permission. Thus, maintains a functional but privacy-compliant representation of user identity across system (Cook [col. 3, lines 18-38]).
Regarding claim 10, the proposed combination of McKenna, Clark, and Salch, and Cook discloses a computer-based system of claim 8, wherein data excluded from [the temporary table] comprises personally identifying information (PII) data (Cook [col. 10, lines 28-39] e.g., “In some embodiments, the executable 210 may apply the data sharing permissions to filter the data, such as by excluding records, fields, non-personally identifiable information (NPI), PII, LII, portions of the data”).
Regarding claim 17, the proposed combination of McKenna, Clark, and Salch, and Cook discloses a non-transitory computer-readable medium claim 15, wherein data excluded from [the temporary table] comprises personally identifying information (PII) data (Cook [col. 10, lines 28-39] e.g., “In some embodiments, the executable 210 may apply the data sharing permissions to filter the data, such as by excluding records, fields, non-personally identifiable information (NPI), PII, LII, portions of the data”).
17. Claims 6, 13, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over McKenna et al. US20150149436A1 (hereinafter McKenna) in view of Clark et al. US20130166537A1 (hereinafter Clark), further in view of Salch et al. US20130086039 A1 (hereinafter Salch) as applied to claims 1-2, 4-5, 7-9, 11-12, 14-16, and 18-19 above and further in view of Frank et al. WO2004031988 A2 (hereinafter Frank).
Regarding claim 6, the proposed combination of McKenna, Clark, and Salch discloses the method of claim 1. However, the proposed combination does not explicitly disclose wherein the first language type is supported by unified data generation, Frank teaches wherein the first language type is supported by unified data generation (Frank [page 5, lines 26-28] e.g., “This query is then translated, processed, converted, or the like by a query generation/ translation mechanism … by generating a standardized query, which is done on the basis of a general data structure … consisting of a uniformed data structure … The N-TUPLE content generated…”. Frank, thus teaches a query translation/ generation mechanism that generated a standardized query representation based upon a uniform data structure, thereby providing a common representation that can be processed by the system). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to further modify the query-processing system of McKenna and Clark to employ the query generation/translation mechanism of Frank, such that a received query is translated or converted into a standardized query representation based on a uniform data structure for processing by the system. One of ordinary skill in the art would have been motivated to make such a modification to provide a common standardized representation for queries, thereby facilitating processing of queries having different representations and improving interoperability between the query interface and underlying data.
Regarding claim 13, the proposed combination of McKenna, Clark, Salch, and Frank discloses a computer-based system of claim 8, wherein the first language type is supported by unified data generation (Frank [page 5, lines 26-28] e.g., “This query is then translated, processed, converted, or the like by a query generation/translation mechanism … by generating a standardized query, which is done on the basis of a general data structure … consisting of a uniformed data structure … The N-TUPLE content generated…”. This teach a query translation/generation mechanism that generated a standardized query representation based upon a uniform data structure, thereby providing a common representation that can be processed by the system).
Regarding claim 20, , the proposed combination of McKenna, Clark, Salch, and Frank discloses a non-transitory computer-readable of claim 15, wherein the first language type is supported by unified data generation (Frank [page 5, lines 26-28] e.g., “This query is then translated, processed, converted, or the like by a query generation/translation mechanism … by generating a standardized query, which is done on the basis of a general data structure … consisting of a uniformed data structure … The N-TUPLE content generated…”. This teach a query translation/generation mechanism that generated a standardized query representation based upon a uniform data structure, thereby providing a common representation that can be processed by the system).
Conclusion
18. Any inquiry concerning this communication or earlier communications from the examiner should be directed to BERHANU MITIKU whose telephone number is (571)270-1983. The examiner can normally be reached Monday – Friday 8:30AM – 4:00PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Ajay Bhatia can be reached at 571-272-3906. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/BERHANU MITIKU/Examiner, Art Unit 2156
/AJAY M BHATIA/Supervisory Patent Examiner, Art Unit 2156