Prosecution Insights
Last updated: May 29, 2026
Application No. 19/000,466

EVALUATING EXPRESSIONS OVER DICTIONARY DATA

Final Rejection §103§112
Filed
Dec 23, 2024
Priority
Jan 31, 2023 — continuation of 12/210,528
Examiner
CHEUNG, HUBERT G
Art Unit
2152
Tech Center
2100 — Computer Architecture & Software
Assignee
Databricks Inc.
OA Round
2 (Final)
63%
Grant Probability
Moderate
3-4
OA Rounds
2y 9m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 63% of resolved cases
63%
Career Allowance Rate
246 granted / 390 resolved
+8.1% vs TC avg
Strong +49% interview lift
Without
With
+49.3%
Interview Lift
resolved cases with interview
Typical timeline
4y 2m
Avg Prosecution
18 currently pending
Career history
413
Total Applications
across all art units

Statute-Specific Performance

§101
2.4%
-37.6% vs TC avg
§103
80.3%
+40.3% vs TC avg
§102
14.1%
-25.9% vs TC avg
§112
2.1%
-37.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 390 resolved cases

Office Action

§103 §112
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 . This Office action is in response to the amendments, arguments and remarks, filed on 2/12/2026, in which claim(s) 1-20 is/are presented for further examination. Claim(s) 1, 2, 4, 6, 9, 10, 12, 14, 17, 18 and 20 has/have been amended. Response to Amendment Applicant’s amendment(s) to claim(s) 2, 4, 10, 12, 18 and 20 has/have been accepted. The objection(s) to the claim(s) for informalities has/have been withdrawn. Applicant’s amendment(s) to claim(s) 1, 2, 6, 9, 10, 14, 17 and 18 has/have been accepted unless otherwise noted below. The examiner thanks applicant’s representative for pointing out where s/he believes there is support for the amendment(s). Response to Arguments Applicant’s arguments with respect to claim(s) 1-20, filed on 2/12/2026, have been fully considered but they are not persuasive. Accordingly, this action has been made FINAL. Applicant's arguments with respect to the rejection(s) of claim(s) 1, 6-9 and 14-17, under 35 U.S.C. 102(a)(1)/(2), and the rejection(s) of claim(s) 2-5, 10-13 and 18-20, under 35 U.S.C. 103, see the bottom of page 10 to page 13 of applicant’s remarks, filed on 2/12/2026, have been fully considered but they are not persuasive. Applicant is arguing that the references do not disclose the newly added limitations, please see the updated rejections including the newly cited reference of Wang below. 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. Claim(s) 1-20 is/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. Newly amended claims 1, 9 and 17 recite the limitation “an estimated cost of dictionary decoding operations”. The examiner searched the specification, including the portions cited by the applicant, and could not find support for this claim language. As such, “an estimated cost of dictionary decoding operations” is new matter unsupported by the originally filed application. Therefore, claims 1, 9 and 17 are rejected for containing new matter. Note: The examiner will reconsider the rejections if applicant can cite support for the claim language. Claim(s) 2-8, 10-16 and 18-20 inherit(s) the deficiencies of the claim it/they depend(s) from. 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-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Chavan, et al., US 2018/0075105 A1 (hereinafter “Chavan”) in view of Oswal et al., US 2024/0028605 A1 (hereinafter “Oswal”) in further view of Wang et al., US 2013/0275365 A1 (hereinafter “Wang”). Claims 1, 9 and 17 Chavan discloses a method comprising: receiving a first request to perform a first query for a first columnar dataset stored on cloud storage (Chavan, [0004], see “To enable efficient evaluation of database queries [i.e., where the first query in the plurality of database queries is being interpreted as the “first query”], database tables may be stored in a column-major format. …”; Chavan, [0010]-[0014], see queries including predicates that restrict the scope of the query result; and Chavan, [0094], see implementation using “… Database as a Service (DBaaS) in which consumers use a database server or Database Management System that is running upon a cloud infrastructure, while a DBaaS provider manages or controls the underlying cloud infrastructure, applications, and servers, including one or more database servers.”), wherein the columnar dataset includes one or more columns based on a dictionary (Chavan, [0032], see “Evaluating a predicate expression against an encoded column vector [i.e., based on the columns in the columnar dataset] may involve evaluating the predicate expression against an encoding dictionary [i.e., using BRI, “based on a dictionary”]. When a predicate expression is evaluated against an encoding dictionary, the predicate expression is actually evaluated against dictionary value(s) of the encoding dictionary to determine a set of one or more dictionary values that satisfy the predicate expression and, importantly, to determine a set of one or more codes that correspond to the set of one or more dictionary values. The encoded column vector is then scanned to determine which row(s) satisfy the predicate expression based on identifying which row(s) store a code that is included in the set of one or more codes. Importantly, evaluating the predicate expression against the encoding dictionary enables the predicate expression to be evaluated once for each dictionary entry in the encoding dictionary. In other words, the predicate expression may be evaluated at most once against each distinct value instead of being evaluated against multiple instances of a distinct value stored in the encoded column vector.”); calculating a metric predictive of query regression likelihood based on one or more factors comprising at least a size of the dictionary, an estimated cost of executing the first query (Chavan, [0036], see “…, a query optimizer includes various components. An estimator component may compute the selectivity of all or part of a predicate and may estimate the costs of various database operations such as determining access paths, join methods, table scans, aggregations, communication between parallel processes, etc. …”), and determining whether dictionary filtering will provide a net performance benefit by comparing the metric against a threshold (Chavan, [0053], see a selectivity threshold is used to determine which technique to use for the particular column vector. The selectivity threshold is a predetermined value that is compared to the proportion of values in a different column vector that satisfied an immediately preceding predicate expression; and Chavan, [0054], see, for example, bit vector 400 indicates that 62.5% of the values in column vector 108 satisfy the first predicate expression “column 102=5000000”. This percentage is compared to the selectivity threshold, which may be preset at 3%. Since 62.5% exceeds the selectivity threshold, it is determined that SIMD processing should be used to efficiently evaluate the second predicate expression “column 104=10” over column vector 110. However, if the selectivity threshold had not been exceeded, then it would have been determined that selective predicate evaluation should be used to efficiently evaluate the second predicate expression “column 104=10” over column vector 110); performing dictionary filtering the dictionary filtering comprising evaluating a filter on each row group encoded in the dictionary, wherein the filter is based on a first expression in the first query (Chavan, [0053], see a selectivity threshold is used to determine which technique to use for the particular column vector. The selectivity threshold is a predetermined value that is compared to the proportion of values in a different column vector that satisfied an immediately preceding predicate expression; Chavan, [0054], see, if the selectivity threshold had not been exceeded, then it would have been determined that selective predicate evaluation should be used to efficiently evaluate the second predicate expression [i.e., where evaluating the predicate results in the filtering of rows in the table] “column 104=10” over column vector 110; and Chavan, [0037], see dictionary filtering can be used to efficiently evaluate predicate expressions over compressed data [i.e., “based on a first expression in the first query”]. Typically, efficient evaluation of predicate expressions over compressed data involves evaluating the predicate expressions over dictionary entries [i.e., “row group encoded in the dictionary”] instead of the actual values stored in a column vector and mapping back the results of evaluating the predicate expressions over the dictionary entries to the actual values stored in the column vector. The efficiency gain is based at least in part on reducing the number of decompressions involved in evaluating the predicate expressions over the compressed data. For example, referring to FIG. 2, evaluating the predicate expression “column 102=4000000” over each of the eight compressed values stored in column vector 108 would involve eight decompressions. In contrast, evaluating the predicate expression over each of the three entries of dictionary 200 would involve only three decompressions, because each distinct value of column vector 108 would be decompressed only once; and Chavan, [0038], see further efficiency can be gained based on using dictionary filtering to reduce the number of dictionary entries over which to evaluate a predicate expression. In some embodiments, it is unnecessary to evaluate a predicate expression over all entries of an encoding dictionary. For example, selective predicate evaluation may enable evaluating a predicate expression over less than all values of a column vector, thereby making it desirable to evaluate the predicate expression over less than all entries of an encoding dictionary in order to avoid unnecessary computational overhead. Thus, a dictionary filter may be used to determine whether or not to evaluate the predicate expression over a particular dictionary entry). Chavan does not appear to explicitly disclose an estimated cost of dictionary decoding operations, wherein the metric represents a predicted performance benefit of dictionary filtering versus direct column access from cloud storage; when the metric indicates the cost of dictionary access and column decoding is less than direct column access cost. Oswal discloses an estimated cost of dictionary decoding operations (Oswal, [0042], see determine whether the benefit of execution of an operation on worker nodes 110A/B is greater than the cost of decoding the resultant MF data [i.e., corresponds to the “dictionary decoding operations”] for a later base relation operation or production of the result set; and Chavan, [0019], see the alternative format in which the data portion may be loaded into memory (e.g., volatile memory) is referred to herein as a “mirror format” or “MF”. Data that is encoded in the mirror format is referred to herein as MF data. For example, string data of a column may be mirrored in memory in the dictionary encoding format); when the metric indicates the cost of column decoding (Oswal, [0042], see determine whether the benefit of execution of an operation on worker nodes 110A/B is greater than the cost of decoding the resultant MF data for a later base relation operation or production of the result set; and Chavan, [0019], see the alternative format in which the data portion may be loaded into memory (e.g., volatile memory) is referred to herein as a “mirror format” or “MF”. Data that is encoded in the mirror format is referred to herein as MF data. For example, string data of a column may be mirrored in memory in the dictionary encoding format). Chavan and Oswal are analogous art because they are from the same field of endeavor of optimizing the processing of data. It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention, having the teachings of Chavan and Oswal before him/her, to modify the metric calculating of Chavan to include the estimating the cost of dictionary decoding operations of Oswal because it allow for another way to optimize data processing. The suggestion/motivation for doing so would have been to analyze a query workload set to estimate the benefit/cost measurement of the workload set execution when a candidate data portion’s encoding format is altered to an alternative encoded format when used in execution, see Oswal, [0018]. Therefore, it would have been obvious to combine Oswal with Chavan to obtain the invention as specified in the instant claim(s). The combination of Chavan and Oswal does not appear to explicitly disclose wherein the metric represents a predicted performance benefit of dictionary filtering versus direct column access from cloud storage. Wang discloses wherein the metric represents a predicted performance benefit of dictionary filtering versus direct column access from cloud storage (Wang, [0053], see, in the access to the measure attribute column, the present invention, on one hand, avoids performing multiple times of scan [i.e., scanning corresponds to “filtering”] on the join attribute column to obtain the final join result [i.e., corresponds to the “dictionary filtering”] as in the conventional column processing algorithm; and on the other hand, is capable of implementing direct access to the fact table measure attribute column [i.e., corresponds to the “direct column access”] according to the position after obtaining the fact table filtering group-by vector through the bitmap filtering operation. When the overall selectivity of the query is low (the selectivity on each dimension table is relatively high, but the join operation performed on the multiple dimension tables results in the low final selectivity), this method can greatly reduce the I/O cost or memory bandwidth consumption for accessing the fact table measure attribute column). when the metric indicates the cost of dictionary access is less than direct column access cost (Wang, [0053], see above the cost of scanning/filtering being compared against the cost of direct access to the fact table column”). Chavan, Oswal and Wang are analogous art because they are from the same field of endeavor of optimizing the processing of data. It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention, having the teachings of Chavan, Oswal and Wang before him/her, to modify the metric calculating with the estimating of cost of dictionary decoding of the combination of Chavan and Oswal to include the estimating of cost of direct access of Wang because it allow for another way to optimize data processing. The suggestion/motivation for doing so would have been to increase performance by reducing performance bottlenecking, see Wang, [0007]. Therefore, it would have been obvious to combine Wang with the combination of Chavan and Oswal to obtain the invention as specified in the instant claim(s). Claim(s) 9 and 17 recite(s) similar limitations to claim 1 and is/are rejected under the same rationale. With respect to claim 9, Chavan discloses a system comprising: at least one processor (Chavan, [0071], see hardware processor); at least one memory comprising stored instructions (Chavan, [0072], see non-transitory storage media). With respect to claim 17, Chavan discloses a non-transitory computer readable medium comprising stored instructions encoded thereon (Chavan, [0072], see non-transitory storage media). Claims 2, 10 and 18 With respect to claims 2, 10 and 18, the combination of Chavan, Oswal and Wang discloses wherein calculating the metric predictive of query regression likelihood further comprises: inputting, to a machine learning model, the size of the dictionary (Oswal, [0025], see machine learning model(s) are similarly trained to predict the size of the distributed system (number of cluster nodes) and the memory requirement for storing encoding metadata, such as the dictionary of values for the dictionary encoding format; and Oswal, [0135], see the dictionary size machine learning model is executed with the corresponding feature set value for the selected qualified data portion to estimate the size of the dictionary object) the estimated cost of executing the first query (Chavan, [0055], see the selectivity threshold may be adjusted periodically based on machine learning or some other heuristic. For example, based on how efficiently SIMD processing was used to evaluate a predicate expression previously, the selectivity threshold may be adjusted up or down. Efficiency may be determined based on feedback information, such as how long it previously took to evaluate a predicate expression over a column vector having a particular percentage of values that satisfied the predicate expression), and the estimated cost of dictionary decoding operations (Oswal, [0042], see determine whether the benefit of execution of an operation on worker nodes 110A/B is greater than the cost of decoding the resultant MF data [i.e., corresponds to the “dictionary decoding operations”] for a later base relation operation or production of the result set; and Chavan, [0019], see the alternative format in which the data portion may be loaded into memory (e.g., volatile memory) is referred to herein as a “mirror format” or “MF”. Data that is encoded in the mirror format is referred to herein as MF data. For example, string data of a column may be mirrored in memory in the dictionary encoding format), wherein the machine learning model is trained on data including dictionary sizes and estimated costs of executing queries (See below); and receiving, from the machine learning model, a value representative of a recommendation of whether or not to apply dictionary filtering (Chavan, [0055], see the selectivity threshold may be adjusted periodically based on machine learning or some other heuristic. For example, based on how efficiently SIMD processing was used to evaluate a predicate expression previously, the selectivity threshold may be adjusted up or down. Efficiency may be determined based on feedback information, such as how long it previously took to evaluate a predicate expression over a column vector having a particular percentage of values that satisfied the predicate expression). Claims 3, 11 and 19 With respect to claims 3, 11 and 19, the combination of Chavan, Oswal and Wang discloses wherein the metric is indicative of a probability of query regression occurring in applying dictionary filtering (Oswal, [0016], where the workload set of queries may be automatically captured by DBMS based on the frequency/resources consumed by execution of queries and/or selected based on the input from a user. The workload set may represent the most typical set of queries that are executed by the DBMS. For example, in the distributed DBMS, such a workload set may include OLAP (Online Analytical Processing) queries. The OLAP queries are generally read oriented queries that may include a large number of scans, base relation (e.g., join operation) and sort operations with predicate evaluation(s) on large data sets [i.e., where the increased processing workload would indicate a decline in query performance/query regression]). Claims 4, 12 and 20 With respect to claims 4, 12 and 20, the combination of Chavan, Oswal and Wang discloses further comprising: monitoring, during performance of the dictionary filtering, query regression, wherein the query regression is determined based on one or more of: increase in processor time and duration (Oswal, [0016], where the workload set of queries may be automatically captured by DBMS based on the frequency/resources consumed by execution of queries and/or selected based on the input from a user. The workload set may represent the most typical set of queries that are executed by the DBMS. For example, in the distributed DBMS, such a workload set may include OLAP (Online Analytical Processing) queries. The OLAP queries are generally read oriented queries that may include a large number of scans, base relation (e.g., join operation) and sort operations with predicate evaluation(s) on large data sets [i.e., where an increased processing workload increase processing time and duration]), a number of cloud input/output requests, and a lack of eliminated row groups in the dictionary. Claims 5 and 13 With respect to claims 5 and 13, the combination of Chavan, Oswal and Wang discloses further comprising aborting dictionary filtering responsive to the query regression being above a threshold percentage, wherein the threshold percentage represents one or more of increase in processor time a duration and a percentage of row groups retained after passing the filter over the dictionary (Chavan, [0053], see a selectivity threshold is used to determine which technique to use for the particular column vector. The selectivity threshold is a predetermined value that is compared to the proportion of values in a different column vector that satisfied an immediately preceding predicate expression; Oswal, [0054], see if the selectivity threshold had not been exceeded, then it would have been determined that selective predicate evaluation should be used to efficiently evaluate the second predicate expression “column 104=10” over column vector 110; and Oswal, [0016], where the workload set of queries may be automatically captured by DBMS based on the frequency/resources consumed by execution of queries and/or selected based on the input from a user. The workload set may represent the most typical set of queries that are executed by the DBMS. For example, in the distributed DBMS, such a workload set may include OLAP (Online Analytical Processing) queries. The OLAP queries are generally read oriented queries that may include a large number of scans, base relation (e.g., join operation) and sort operations with predicate evaluation(s) on large data sets [i.e., where the increased processing workload would indicate a decline in query performance/query regression]). Claims 6 and 14 With respect to claims 6 and 14, the combination of Chavan, Oswal and Wang discloses wherein a value in each row group that fails the dictionary filter is not a value of interest identified by the first expression and the first expression contains a filtering request to return information about the value of interest in the columnar dataset (Chavan, [0041], see, in some embodiments, less than all bits of a dictionary filter are set. In the example of FIG. 3B, only the first two bits of bit vector 302 are set, so the predicate expression is evaluated over only the first two entries of dictionary 200. This may happen, for example, when selective predicate evaluation is used to reduce the number of values over which the predicate expression is to be evaluated. Suppose, for the sake of illustration, that the predicate expression “column 104=10” is evaluated prior to evaluating the predicate expression “column 102=4000000”. Performing selective predicate evaluation to evaluate the conjunction of “column 104=10” and “column 102=4000000” would make it unnecessary to evaluate the third, fifth, and seventh values [i.e., where the rows associated with third, fifth and seventh values are interpreted as the “row groups”] of column vector 108 [i.e., using BRI, “removing row groups that fail the dictionary filter”]. Scanning the remaining values of column vector 108 may cause setting only the first two bits of bit vector 302, because the token “3” is absent from the remaining values. Thus, the predicate expression “column 102=4000000” would be evaluated over only the first two entries of dictionary 200). Claims 7 and 15 With respect to claims 7 and 15, the combination of Chavan, Oswal and Wang discloses wherein the requested information is one or more of a determination of a presence of the value of interest in the columnar dataset, a number of instances of the value of interest in the columnar dataset, and row locations of the value of interest in the columnar dataset (Chavan, [0041], see, in some embodiments, less than all bits of a dictionary filter are set. In the example of FIG. 3B, only the first two bits of bit vector 302 are set, so the predicate expression is evaluated over only the first two entries of dictionary 200. This may happen, for example, when selective predicate evaluation is used to reduce the number of values over which the predicate expression is to be evaluated. Suppose, for the sake of illustration, that the predicate expression “column 104=10” is evaluated prior to evaluating the predicate expression “column 102=4000000”. Performing selective predicate evaluation to evaluate the conjunction of “column 104=10” and “column 102=4000000” would make it unnecessary to evaluate the third, fifth, and seventh values [i.e., where the rows associated with third, fifth and seventh values are interpreted as the “row groups”] of column vector 108 [i.e., using BRI, “removing row groups that fail the dictionary filter”]. Scanning the remaining values of column vector 108 may cause setting only the first two bits of bit vector 302, because the token “3” is absent from the remaining values. Thus, the predicate expression “column 102=4000000” would be evaluated over only the first two entries of dictionary 200). Claims 8 and 16 With respect to claims 8 and 16, the combination of Chavan, Oswal and Wang discloses wherein the dictionary maps one or more values in one or more columns to one or more respective identifiers (Chavan, [0008], see dictionary encoding is a lightweight compression technique that enables data to be stored using a relatively small number of bits. The relatively small number of bits corresponds to an encoded representation of the data and is hereinafter referred to as a “token code” or simply “code”. Encoding and decoding are enabled based on maintaining a dictionary, which maps codes to dictionary values represented by the codes and vice versa. As used herein, an encoding dictionary encodes a domain of values for a column, a part of a column, or a column vector. Unless otherwise indicated, when it is said that a dictionary is for/associated with/corresponds to a column/a part of a column/a column vector, the domain of values of the dictionary are the values in the column/the part of the column/the column vector; and Chavan, [0009], see, referring to FIG. 2, dictionary 200 corresponds to column vector 108. Dictionary 200 comprises entries that map codes 202 to dictionary values 204. Codes 202 correspond to the distinct values of column vector 108. Dictionary values 204 include decoded representations of these distinct values. In other words, dictionary 200 encodes a domain of values comprising dictionary values 204. For example, instead of storing “4000000”, column vector 108 stores “1”, thereby conserving space in memory. Although, for the sake of clarity and ease of explanation, dictionary values 204 are depicted as a small datatype having only seven significant digits, in reality, dictionary values 204 is typically a very large datatype, such as ORACLE's number datatype, which can have up to thirty-eight significant digits). Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. – Fender et al., 2019/0155930 for relational dictionaries; – Burger, 2010/0153431 for alert triggered statistics collections; – Huang et al., 2023/0141891 for autonomous columns selection for columnar cache; – Johnson et al., 2022/0147530 for enhancing rapid data analysis; – Chavan et al., 10810208 for efficient evaluation of queries with multiple predicate expressions; – Kumpati, 4774661 for database management system with active data dictionary; and – Griffin et al., 5978789 for efficient hypothetical query evaluation in a database system. Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). 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. Point of Contact Any inquiry concerning this communication or earlier communications from the examiner should be directed to HUBERT G CHEUNG whose telephone number is (571) 270-1396. The examiner can normally be reached M-R 8:00A-5:00P EST; alt. F 8:00A-4:00P 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, Apu Mofiz can be reached at (571) 272-4080. 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. HUBERT G. CHEUNG Assistant Examiner Art Unit 2161 Examiner: Hubert Cheung /Hubert Cheung/Assistant Examiner, Art Unit 2161Date: May 11, 2026 /APU M MOFIZ/Supervisory Patent Examiner, Art Unit 2161
Read full office action

Prosecution Timeline

Dec 23, 2024
Application Filed
Nov 18, 2025
Non-Final Rejection mailed — §103, §112
Feb 12, 2026
Response Filed
May 20, 2026
Final Rejection mailed — §103, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12625884
NATURAL LANGUAGE PROCESSING FOR BLOCKCHAIN-BASED MANAGEMENT OF MULTI-SOURCE, MULTI-FORMAT BINARY OBJECTS
2y 11m to grant Granted May 12, 2026
Patent 12608360
STORAGE OF SMALL TABLES AS PSEUDO TABLES
3y 0m to grant Granted Apr 21, 2026
Patent 12596674
A SYSTEM FOR DATA ARCHIVAL IN A BLOCKCHAIN NETWORK AND A METHOD THEREOF
1y 8m to grant Granted Apr 07, 2026
Patent 12591611
EFFICIENT ACCESS MARKING APPROACH FOR EFFICIENT RETRIEVAL OF DOCUMENT ACCESS DATA
2y 1m to grant Granted Mar 31, 2026
Patent 12585731
APPARATUS AND METHODS FOR DETERMINING A PROBABILITY DATUM
1y 6m to grant Granted Mar 24, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
63%
Grant Probability
99%
With Interview (+49.3%)
4y 2m (~2y 9m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 390 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month