Prosecution Insights
Last updated: April 19, 2026
Application No. 18/679,127

RATE LIMITING FOR DATA QUERIES

Non-Final OA §102§112§DP
Filed
May 30, 2024
Examiner
LWIN, MAUNG T
Art Unit
2495
Tech Center
2400 — Computer Networks
Assignee
Inigo Labs Inc.
OA Round
1 (Non-Final)
89%
Grant Probability
Favorable
1-2
OA Rounds
2y 4m
To Grant
99%
With Interview

Examiner Intelligence

Grants 89% — above average
89%
Career Allow Rate
537 granted / 603 resolved
+31.1% vs TC avg
Strong +21% interview lift
Without
With
+20.9%
Interview Lift
resolved cases with interview
Typical timeline
2y 4m
Avg Prosecution
24 currently pending
Career history
627
Total Applications
across all art units

Statute-Specific Performance

§101
11.6%
-28.4% vs TC avg
§103
22.8%
-17.2% vs TC avg
§102
16.0%
-24.0% vs TC avg
§112
35.9%
-4.1% vs TC avg
Black line = Tech Center average estimate • Based on career data from 603 resolved cases

Office Action

§102 §112 §DP
DETAILED ACTION 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 application filed on 05/30/2024. Claims 1-20 are currently pending in this application. No information disclosure statement (IDS) has been filed. Examiner’s Note Applicants are suggested to include information from paragraph [0018] - [0021] of the specification (e.g., … inbound/outbound rates limiting, updating the rate limits, rate limit credits, an aggregate score, etc.) into the claims to provide a better condition for an allowance. Claim Objections Claim 14 is objected to because of the following informalities: the claim recites “A non-transitory computer readable storage medium comprising instruction that, when executed by …”, which appears to be “A non-transitory computer readable storage medium storing instruction therein that, when executed by …”. Appropriate correction is required. Claim Rejections - 35 USC § 112 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. Claims 1-20 are rejected under 35 U.S.C. 112(b) as being indefinite for failing to particularly point out and distinctly claim the subject matter which applicant regards as the invention. Claim 1 (claim 14 includes similar limitations) recites “… a request comprising a query for data stored … identifying one or more parts of the query; identifying, based on a set of rules associated with the user profile, a subset of the one or more parts of the query accessible to the user profile; and sending, to the server, a second query comprising the subset …”, however, it is not clear how the query for the data has anything related to accessibility to the user profile or whether the query for the data is processed for accessible to the user profile (e.g., the data is a part of the user profile, etc.) – it is not clear to define a boundary of the limitations. Claims 2-7 and 15-20 depend from the claim 1 or 14, and are analyzed and rejected accordingly. Claims 2 and 15 recite “… determining a score for the one or more parts of the query, wherein the score represents an estimated amount of resources associated with fulfilling the request …”, however, it is not clear (1) whether the score for a part of the query is representing for fulfilling the whole request or not; (2) it is not clear how to define the estimated amount of resources (e.g., numbers of computing device, memory usage, power consumption, etc.); (3) how to define fulfilling the request (e.g., replying the request, forwarding the request, etc.) – or it is not clear to define a boundary of the limitations; Claims 3 and 16 recite “… whether the first part (of the query) is accessible to the user profile…”, however, it is not clear how the first part (e.g., the information, but NOT a device, person) can be accessible to the information (e.g., the user profile) – or omitting necessary step/component which cause the limitations unclear. Claim 8 recites: “A system comprising … the processing device to: receive, from a server, a response to a query associated with a request …”, however, it is not clear (1) whether the server is responding the query of the system or not – or omitting necessary step/component which cause the limitations unclear; (2) whether the response is for the combination of the query and the request or the query is a part of the request – or it is not clear to define a boundary of the limitations; “… the rate score represents … the size of the response or a number of parts in the response …”, however, it is not clear how the size or number of parts of the response can be defined as rate score (e.g., it is not related to any rate/frequency). Claims 9-13 depend from the claim 8, and are analyzed and rejected accordingly. Claim 9 recites “… identify, in the response, one or more extensions …”, however, it is not clear how to define the extensions of the response (e.g. comparing a regular response and an extended response, etc.) - or it is not clear to define a boundary of the limitations. Claim 10 recites “… identify an original query associated with the request; compare the query (associated with the request – see the claim 8) to the original query …”, however, it is not clear how to define “the original query” or “the query”, wherein both are associated with the request - or it is not clear to define a boundary of the limitations. Double Patenting The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the claims at issue are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); and In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on a nonstatutory double patenting ground provided the reference application or patent either is shown to be commonly owned with this application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The USPTO internet Web site contains terminal disclaimer forms which may be used. Please visit http://www.uspto.gov/forms/. The filing date of the application will determine what form should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to http://www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp. A later patent claim is not patentably distinct from an earlier patent claim if the later claim is obvious over, or anticipated by, the earlier claim. In re Longi, 759 F.2d at 896, 225 USPQ at 651 (affirming a holding of obviousness-type double patenting because the claims at issue were obvious over claims in four prior art patents); In re Berg, 140 F.3d at 1437, 46 USPQ2d at 1233 (Fed. Cir. 1998) (affirming a holding of obviousness-type double patenting where a patent application claim to a genus is anticipated by a patent claim to a species within that genus). “ELI LILLY AND COMPANY v BARR LABORATORIES, INC., United States Court of Appeals for the Federal Circuit, ON PETITION FOR REHEARING EN BANC (DECIDED: May 30, 2001). Claims 1 and 14 are provisionally rejected on the ground of non-statutory double patenting as being unpatentable over claim 1, 2, 14 and 15 of co-pending Application No. 18/679119 (reference application). Although the claims at issue are not identical, they are not patentably distinct from each other. This is a provisional non-statutory double patenting rejection because the patentably indistinct claims have not in fact been patented. Current Application No. 18/679127 Reference Application No. 18/679119 Claim 1: A method comprising: receiving, from a user device, a request comprising a query for data stored on a server, wherein the request is associated with a user profile; identifying one or more parts of the query; identifying, based on a set of rules associated with the user profile, a subset of the one or more parts of the query accessible to the user profile; and sending, to the server, a second query comprising the subset of the one or more parts of the query accessible to the user profile. Claim 1: A method comprising: receiving, from a user device, a request comprising a query for data stored on a server, wherein the request is associated with a user profile; identifying a part of the query, wherein the part is associated with an access path; determining, based on a rule associated with the user profile, whether the access path is valid (equivalent to identifying the part is accessible); and Claim 2: The method of claim 1 … generating a second query comprising the query with the part of the query associated with the access path that is not valid removed (note: removing the not valid part provides only valid or accessible part); and sending, to the server, the second query. Claim 14 is a non-transitory computer readable storage medium claim, which has similar limitations with the combination of claims 14 and 15 of the application # 18/679119, and analyzed and rejected accordingly (note: see the above rejections of claim 1 for the mapping of the claim limitations). Claim Rejections - 35 USC § 102 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claims 1-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Schaeffer et al. (US 11,120,021 B2). As per claim 1, Schaeffer teaches a method comprising: receiving, from a user device, a request comprising a query for data stored on a server, wherein the request is associated with a user profile [figs. 1, 2, 5, 6; col. 1, lines 16-28; col. 3, lines 6-17, 34-67 of Schaeffer teaches receiving, from a user device, a request comprising a query for data stored on a server (e.g., the data store 110), wherein the request is associated with a user profile (e.g., the profile information, the specified settings, pre-computed data associated with the user)]; identifying one or more parts of the query; identifying, based on a set of rules associated with the user profile, a subset of the one or more parts of the query accessible to the user profile [figs. 2, 5; col. 2, lines 60-67; col. 3, lines 1-5; col. 4, lines 16-35, 47-67; col. 5, lines 1-67; col. 6, lines 1-58 of Schaeffer teaches identifying one or more parts (e.g., the database tables, columns, rows, etc.) of the query; identifying, based on a set of rules (e.g., based on the optimization rules or the optimization modulation 106 functions, or the various criteria, etc.) associated with the user profile, a subset of the one or more parts (e.g., estimating cost of the part of the query, generating an intermediate representation of the part of the query, aggregating data or using the pre-computed data of the part of the query, translating the optimization code for the part of the query, etc.) of the query accessible to the user profile (e.g., the profile information, the specified settings, pre-computed data associated with the user)]; and sending, to the server, a second query comprising the subset of the one or more parts of the query accessible to the user profile [figs. 1, 5, 6; col. 3, lines 43-65; col. 4, lines 36-46; col. 7, lines 48-61 of Schaeffer teaches sending, to the server (e.g., the data store 110), a second query (e.g., the query translated from the optimized code) comprising the subset of the one or more parts of the query accessible to the user profile (e.g., the profile information, the specified settings, pre-computed data associated with the user)]. As per claim 2, Schaeffer teaches the method of claim 1. Schaeffer further teaches wherein identifying the subset of the one or more parts of the query accessible to the user profile comprises: determining a score for the one or more parts of the query, wherein the score represents an estimated amount of resources associated with fulfilling the request; identifying a rate limit associated with the user profile; and responsive to determining that the score is less than or equal to the rate limit, determining that the one or more parts of the query are accessible to the user profile [figs. 2, 3; col. 1, lines 60-63; col. 6, lines 29-58 of Schaeffer teaches determining a score (e.g., the cost for executing one or more operations in the query) for the one or more parts of the query, wherein the score represents an estimated amount of resources (e.g., the function of the expected system load when executing the one or more operations in the query/request) associated with fulfilling the request; identifying a rate limit (e.g., a threshold cost) associated with the user profile; and responsive to determining that the score is less than or equal to the rate limit, determining that the one or more parts of the query are accessible to the user profile (e.g., the query having at least a threshold cost can be prevented from being executed or the query having less than the threshold cost can be executed/accessible to the information) – see also rejections to the claim 1]. As per claim 3, Schaeffer teaches the method of claim 1. Schaeffer further teaches wherein identifying the subset of the one or more parts of the query accessible to the user profile comprises: determining a first score for a first part of the one or more parts of the query; identifying a first rule of the set of rules associated with the user profile, wherein the first rule is associated with a type of the first part; comparing the first score to the first rule; and determining, based on the comparing, whether the first part is accessible to the user profile [figs. 2, 3; col. 1, lines 60-63; col. 6, lines 29-58 of Schaeffer teaches determining a first score (e.g., the respective cost based on scanning a type of data, such as a number of rows or a number of columns) for a first part of the one or more parts of the query; identifying a first rule (e.g., execution based on a threshold cost) of the set of rules associated with the user profile, wherein the first rule is associated with a type (e.g., the respective number of rows) of the first part; comparing the first score (e.g., the respective cost) to the first rule (e.g., execution based on a threshold cost); and determining, based on the comparing, whether the first part is accessible to the user profile (e.g., the query having at least a threshold cost can be prevented from being executed or the query having less than the threshold cost can be executed/accessible to the information) – see also rejections to the claim 1]. As per claim 4, Schaeffer teaches the method of claim 1. Schaeffer further teaches identifying a second subset of the one or more parts of the query that are inaccessible to the user profile; identifying information associated with the second subset; receiving, from the server, a response; and sending, to the user device, at least one of the responses and the information associated with the second subset [figs. 2, 3; col. 1, lines 60-63; col. 3, lines 43-65; col. 4, lines 36-46; col. 6, lines 29-58; col. 7, lines 48-67; col. 8, lines 1-2 of Schaeffer teaches identifying a second subset of the one or more parts of the query (e.g., the respective cost the parts of the query having at least a threshold cost) that are inaccessible (e.g., preventing from being executed, etc.) to the user profile; identifying information associated with the second subset; receiving, from the server, a response; and sending, to the user device, at least one of the responses and the information associated with the second subset (e.g., the execution module receiving the result from the platform and providing the output to the user) – see the rejections to the claim 1]. As per claim 5, Schaeffer teaches the method of claim 1. Schaeffer further teaches wherein identifying the one or more parts of the query comprises: generating a syntax tree for the query, wherein the syntax tree comprises a plurality of nodes and a plurality of branches, wherein a first node of the plurality of nodes represents a first type of a first part of the one or more parts, and wherein the plurality of branches represent a second type of the one or more parts; determining a first number of nodes of the first type; and determining a second number of branches [figs. 2-4; col. 2, lines 60-67; col. 3, lines 1-5; col. 4, lines 55-67; col. 5, lines 1-26; col. 7, lines 20-47 of Schaeffer teaches wherein identifying the one or more parts of the query comprises: generating a syntax tree for the query, wherein the syntax tree comprises a plurality of nodes and a plurality of branches (see the nodes and branches of the fig. 4), wherein a first node of the plurality of nodes represents a first type (e.g., the root or union, etc.) of a first part of the one or more parts, and wherein the plurality of branches represent a second type (e.g., aggregating data, using precomputed data, etc.) of the one or more parts; determining a first number of nodes of the first type; and determining a second number of branches (see the fig. 4) – see also rejections to the claim 1]. As per claim 6, Schaeffer teaches the method of claim 1. Schaeffer further teaches removing, from the request, user data associated with the user profile [col. 3, lines 43-65; col. 4, lines 36-46; col. 6, lines 29-58; col. 7, lines 62-67; col. 8, lines 1-4 of Schaeffer teaches removing, from the request, user data (e.g., preventing part of the data for execution or preventing the private information) associated with the user profile]. As per claim 7, Schaeffer teaches the method of claim 1. Schaeffer further teaches wherein the set of rules associated with the user profile comprises at least one of: a first rule associated with a rate limit of the user profile, or a second rule associated with a type of one of the one or more parts [[figs. 2, 5; col. 4, lines 16-67; col. 5, lines 1-67; col. 6, lines 1-58 of Schaeffer teaches wherein the set of rules (e.g., based on the optimization rules or the optimization modulation 106 functions, or the various criteria, etc.) associated with the user profile comprises at least one of: a first rule associated with a rate limit (e.g., the threshold value/cost) of the user profile, or a second rule associated with a type (e.g., the respective number of rows) of one of the one or more parts – see also rejections to the claims 1-3]. As per claim 8, Schaeffer teaches a system [see figs. 1, 6, 7] comprising: a memory; and a processing device coupled to the memory [see fig. 7], the processing device to: receive, from a server, a response to a query associated with a request; determine a rate score associated with the response, wherein the rate score represents at least one of an amount of resources used to process the query, an amount of time associated with processing the query, a size of the response, or a number of parts in the response [figs. 1, 2; col. 3, lines 6-12, 34-37, 66-67; col. 4, lines 1-35, 47-54; col. 5, lines 1-67; col. 6, lines 1-58 of Schaeffer teaches to receive, from a server, a response to a query associated with a request (e.g., one of the servers of the server module, such as the optimization module 106 receiving the response/query from the query module, etc.); determine a rate score (e.g., the different version of the aggregated data as the pre-computed data) associated with the response, wherein the rate score represents at least one of an amount of resources used to process the query (e.g., the cost based on the pre-computed data for the query), an amount of time associated with processing the query (e.g., the number of access times for the query), a size of the response (e.g., the expected data to be pre-computed), or a number of parts (e.g., the number of rows, the number of columns, etc.) in the response]; identify a user profile associated with the request, wherein the user profile comprises a rate limit; and update the rate limit by a factor corresponding to the rate score associated with the response [figs. 1-3, 5; col. 3, lines 43-65; col. 4, lines 20-35, 47-67; col. 5, lines 1-67; col. 6, lines 1-58 of Schaeffer teaches to identify a user profile (e.g., the profile information, the specified settings, pre-computed data associated with the user) associated with the request, wherein the user profile comprises a rate limit (e.g., the cost for executing one or more operations in the query); and update the rate limit (e.g., the cost for executing one or more operations in the query) by a factor corresponding to the rate score associated with the response (e.g., the rewrite module updates/modifies operations need to perform for the query based on the per-computed data) – see also rejections to the claims 1, 2 and 7]. As per claim 9, Schaeffer teaches the system of claim 8. Schaeffer further teaches identify, in the response, one or more extensions; and remove the one or more identified extensions from the response prior to sending the response to a user device [figs. 2, 3; col. 4, lines 36-46; col. 5, lines 27-44 of Schaeffer teaches identify, in the response, one or more extensions (e.g., the pre-computed data with extended time period, such as pre-computed data for 5pm-8pm on the given day); and remove the one or more identified extensions from the response (e.g., subtract the portion of data that is not needed by the operation) prior to sending the response (e.g., the output provided to the user) to a user device]. As per claim 10, Schaeffer teaches the system of claim 8. Schaeffer further teaches identify an original query associated with the request; compare the query to the original query; identify one or more parts of the original query not included in the query; append, to the response, information associated with the one or more parts of the original query not included in the query; and send the response to a user device [figs. 2, 3; col. 4, lines 36-46; col. 5, lines 45-59 of Schaeffer teaches identify an original query (e.g., the query for the entire week) associated with the request; compare the query (e.g., the different version of the aggregated data as the pre-computed data on a per-day basis) to the original query; identify one or more parts of the original query not included in the query; append, to the response, information associated with the one or more parts of the original query not included in the query; and send the response to a user device (e.g., aggregating the versions of the per-day basis data for the full week per-computed data) – see also rejections to the claim 8]. As per claim 11, Schaeffer teaches the system of claim 8. Schaeffer further teaches identify, in the response, personally identifying information; and remove the identified personally identifying information from the response prior to sending the response to a user device [col. 3, lines 43-65; col. 4, lines 36-46; col. 7, lines 62-67; col. 8, lines 1-4; col. 14, lines 63-67 of Schaeffer teaches identify, in the response, personally identifying information (e.g., based on the privacy setting); and remove the identified personally identifying information (e.g., preventing private information from being divulged) from the response prior to sending the response to a user device]. As per claim 12, Schaeffer teaches the system of claim 8. Schaeffer further teaches responsive to determining that the rate score exceeds the rate limit, send a notification to a user device [fig. 2; col. 4, lines 36-46; col. 6, lines 3-58 of Schaeffer teaches responsive to determining that the rate score exceeds the rate limit (e.g., having the threshold cost), send a notification to a user device (e.g., the user can be notified)]. As per claim 13, Schaeffer teaches the system of claim 8. Schaeffer further teaches responsive to determining that the rate score exceeds a threshold, determine not to send the response to a user device [fig. 2; col. 4, lines 36-46; col. 6, lines 3-58 of Schaeffer teaches responsive to determining that the rate score exceeds a threshold (e.g., having the threshold cost), determine not to send (e.g., preventing from being executed) the response to a user device]. Claims 14-20 are medium claims that correspond to the method claims 1-7, and are analyzed and rejected accordingly. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to MAUNG T LWIN whose telephone number is (571) 270-7845. The examiner can normally be reached on Monday - Friday 10:00 am - 6:00 pm. 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, Farid Homayounmehr can be reached on 571-272-3739. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /MAUNG T LWIN/Primary Examiner, Art Unit 2495
Read full office action

Prosecution Timeline

May 30, 2024
Application Filed
Nov 26, 2025
Non-Final Rejection — §102, §112, §DP (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12603754
ELECTRONIC APPARATUS FOR BOOTSTRAP PROCESSING HOMOMORPHIC ENCRYPTED MESSAGES AND METHODS THEREOF
2y 5m to grant Granted Apr 14, 2026
Patent 12603757
GARBLING SCHEME-BASED SECURE MULTI-PARTY COMPUTATION (MPC)
2y 5m to grant Granted Apr 14, 2026
Patent 12598196
ELECTRONIC MAIL SECURITY SYSTEM
2y 5m to grant Granted Apr 07, 2026
Patent 12591672
SYSTEMS AND METHODS FOR PERFORMING NON-BINARY CLASSIFICATION DURING SEQUENCE MINING
2y 5m to grant Granted Mar 31, 2026
Patent 12587369
SYSTEMS AND METHODS FOR BRIDGING GAPS IN CRYPTOGRAPHIC SECRET DISTRIBUTION USING LINE-OF-SIGHT-SECURED NETWORKS
2y 5m to grant Granted Mar 24, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
89%
Grant Probability
99%
With Interview (+20.9%)
2y 4m
Median Time to Grant
Low
PTA Risk
Based on 603 resolved cases by this examiner. Grant probability derived from career allow 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