Prosecution Insights
Last updated: July 17, 2026
Application No. 18/533,700

MAINTAINING SEQUENTIALITY FOR A COUNTER FOR SEQUENTIAL LEARNING

Non-Final OA §102§103
Filed
Dec 08, 2023
Examiner
PHILLIPS, III, ALBERT M
Art Unit
Tech Center
Assignee
Capital One Services LLC
OA Round
1 (Non-Final)
82%
Grant Probability
Favorable
1-2
OA Rounds
4m
Est. Remaining
94%
With Interview

Examiner Intelligence

Grants 82% — above average
82%
Career Allowance Rate
591 granted / 725 resolved
+21.5% vs TC avg
Moderate +13% lift
Without
With
+12.6%
Interview Lift
resolved cases with interview
Typical timeline
2y 11m
Avg Prosecution
19 currently pending
Career history
739
Total Applications
across all art units

Statute-Specific Performance

§101
10.0%
-30.0% vs TC avg
§103
67.0%
+27.0% vs TC avg
§102
10.2%
-29.8% vs TC avg
§112
7.1%
-32.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 725 resolved cases

Office Action

§102 §103
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 Claim Rejections - 35 USC § 102 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. Claim(s) 16, 19, and 20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Borgmeier Implementing accurate counters in DynamoDB using Python, 05 April 2022. See chart below. Claim 16 Borgmeier Implementing accurate counters in DynamoDB using Python, 05 April 2022 16. A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising: one or more instructions that, when executed by one or more processors of a device, cause the device to: Page 1 first two paragraphs. obtain, via a request stream, one or more requests associated with a data element included in a distributed database, Page 1 first two paragraphs (DynamoDB teaches a distributed DB; request includes any requests related to stats); wherein processing units of the device are associated with respective requests of the one or more requests and are configured to perform the one or more requests; Page 1 first two paragraphs (DynamoDB streams teaches processing units of the device associated with the requests); update, for each request of the one or more requests, a counter to obtain a counter value for that request based on performing an atomic operation associated with the counter for that request Page 4 code section and paragraph below (counter is updated and is updated based on each request); provide, via a data stream, counter values to a first-in-first-out (FIFO) queue to be written sequentially in accordance with an order of counter values; on pp. 4-5 Above, you can see an example architecture for our view-statistics system. We have an API Gateway that accepts the view events the client sends to it. The API gateway delivers the event to an SQS queue and returns status code HTTP 201 (Accepted), so the client can continue doing its thing and doesn’t have to wait for the backend. A Lambda function in the backend processes the events from the Queue and maintains the counters in DynamoDB. The integration between SQS and Lambda is the problem here. We only get the guarantee that events are processed at least once. This means a view event can get processed two or more times. In this specific architecture, we could also opt for a first-in, first-out (FIFO) queue, but that limits the throughput of our system and may end up becoming a bottleneck. provide, from the FIFO queue and in the order, the counter values to respective processing units of the processing units; and p. 4-5 Above, you can see an example architecture for our view-statistics system. We have an API Gateway that accepts the view events the client sends to it. The API gateway delivers the event to an SQS queue and returns status code HTTP 201 (Accepted), so the client can continue doing its thing and doesn’t have to wait for the backend. A Lambda function in the backend processes the events from the Queue and maintains the counters in DynamoDB. The integration between SQS and Lambda is the problem here. We only get the guarantee that events are processed at least once. This means a view event can get processed two or more times. In this specific architecture, we could also opt for a first-in, first-out (FIFO) queue1, but that limits the throughput of our system and may end up becoming a bottleneck. perform, via the processing units, one or more operations associated with the respective requests based on providing the counter values. p. 4-5 Above, you can see an example architecture for our view-statistics system. We have an API Gateway that accepts the view events the client sends to it. The API gateway delivers the event to an SQS queue and returns status code HTTP 201 (Accepted), so the client can continue doing its thing and doesn’t have to wait for the backend. A Lambda function in the backend processes the events from the Queue and maintains the counters in DynamoDB. The integration between SQS and Lambda is the problem here. We only get the guarantee that events are processed at least once. This means a view event can get processed two or more times. In this specific architecture, we could also opt for a first-in, first-out (FIFO) queue but that limits the throughput of our system and may end up becoming a bottleneck. With respect to claim 19, Borgmeier teaches “19. The non-transitory computer-readable medium of claim 16 wherein the counter values are unique identifiers for the respective requests indicating a sequentiality of the one or more requests based on the order of the counter values” on p. 5 last two paragraphs (Examiner finds ClientID and/or hash is a unique value that indicates a sequentiality of the one or more requests based on the order of the counter values). With respect to claim 20, Borgmeier teaches “The non-transitory computer-readable medium of claim 16, wherein the one or more instructions, that cause the device to update the counter, cause the device to: perform, for each request of the one or more requests, an atomic increment using an atomic number as a current counter value of the counter and an expression function to obtain a counter value for that request” on p. 4, python code at top of page and paragraph below; p. 7 Python code; p. 8 first paragraph (Python code on pages 4 and 7 each teach conventional DynamoDB atomic counter (number); Update expression in code teaches expression function). 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) 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Borgmeier as applied to claim 16 above and further in view of Joshi, Integrate your Amazon DyanmoDB table with machine learning for sentiment analysis, 24 MAR 2021. With respect to claim 17, Borgmeier teaches requests. See above. It appears Borgmeier fails to teach “17. The non-transitory computer-readable medium of claim , wherein the one or more requests are associated with respective feedback instances that are associated with sequential learning for a machine learning model.” However, Joshi teaches “wherein the one or more requests are associated with respective feedback instances that are associated with sequential learning for a machine learning model” on p. 1 When you enable DynamoDB Streams on a DynamoDB table, it captures a time-ordered sequence of item-level modifications in the table and stores this information in a change log for up to 24 hours. Downstream AWS services can access these change logs and view the data items as they appeared before and after they were modified, in near-real time, using a Lambda function. This allows the DynamoDB table to integrate functionally for additional use cases like machine learning (ML). . . And p. 4 (“The amazon_reviews_summary Lambda function calls the Amazon Comprehend detect_sentiment API with the review text, and Amazon Comprehend returns one of the four sentiments: positive, negative, neutral, or mixed”); (Examiner finds feedback instances include sentiment and review text) Joshi and Borgmeier are analogous art because they are from the same field of endeavor as the claimed invention. It would have been obvious to one skilled in the art before the effective filing date of the invention to modify the requests in Borgmeier to include “wherein the one or more requests are associated with respective feedback instances that are associated with sequential learning for a machine learning model” as taught by Joshi. The motivation would have been to keep data in an optimized format so that it can be quickly queried and analyzed. See Joshi p. 2, 1st paragraph under “Using ML and analytics with the DynamoDB solution.” Allowable Subject Matter Claims 1-15 are allowed. Claim 18 is objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. Reasons for Indicating Allowable Subject Matter The following chart illustrates the elements taught in claims 1 and 9. Claim 1 Claim 9 Prior Art Citations 1. A system for maintaining sequentiality for a counter for sequential learning, the system compri sing: one or more memories; and one or more processors, communicatively coupled to the one or more memories, configured to: 9. A method for maintaining sequentiality for feedback for sequential learning, comprising: Joshi, Integrate your Amazon DyanmoDB table with machine learning for sentiment analysis, 24 MAR 2021 p. 1 first paragraph receive, via a feedback stream, one or more requests to perform respective operations for feedback data associated with a machine learning model, receiving, by a device and via a feedback stream, one or more feedback instances associated with a machine learning model; Joshi On p. 2 second diagram from top of page (Examiner finds DynamoDB streams teaches feedback stream and request stream; feedback stream includes request sent to Amazon Lambda associated ML model (sentiment analysis, for example); p. 4: Capture review text from the stream record and call Amazon Comprehend for sentimental analysis. Amazon Comprehend limits review strings to fewer than 5,000 characters, so the code truncates review text to 4,999 characters before calling the Amazon Comprehend sentiment API. The following Lambda code processes the incoming DynamoDB Streams for sentiment analysis and save it to S3 for analytics. wherein processing units are associated with respective requests of the one or more requests and are configured to perform the respective operations; Joshi p. 4: Capture review text from the stream record and call Amazon Comprehend for sentimental analysis. Amazon Comprehend limits review strings to fewer than 5,000 characters, so the code truncates review text to 4,999 characters before calling the Amazon Comprehend sentiment API. (Examiner finds sentiment analysis inherently is performed by computer processors associated with Amazon Comprehend, for example) update, via a counter database, the counter to obtain counter values for the respective requests of the one or more requests based on performing atomic operations for the respective requests; updating, by the device, a counter to obtain counter values for respective feedback instances of the one or more feedback instances based on performing atomic operations for the respective feedback instances; Amazon DynamoDB Developers Guide, Working with Items and Attributes, 2022 p. 11 You can use the Update Item operation to implement an atomic counter—a numeric attribute that is incremented, unconditionally, without interfering with other write requests. pp. 2-3 Approach 1, Atomic counters provide, from the counter database and via a data stream, the counter values to a first-in-first-out (FIFO) queue to be written in an order of completion of the atomic operations; providing, by the device and via a data stream, the counter values to a first-in-first-out (FIFO) queue to be written in an order of completion of the atomic operations; Borgmeier pp. 4-5 Above, you can see an example architecture for our view-statistics system. We have an API Gateway that accepts the view events the client sends to it. The API gateway delivers the event to an SQS queue and returns status code HTTP 201 (Accepted), so the client can continue doing its thing and doesn’t have to wait for the backend. A Lambda function in the backend processes the events from the Queue and maintains the counters in DynamoDB. The integration between SQS and Lambda is the problem here. We only get the guarantee that events are processed at least once. This means a view event can get processed two or more times. In this specific architecture, we could also opt for a first-in, first-out (FIFO) queue, but that limits the throughput of our system and may end up becoming a bottleneck. store the feedback data in connection with respective counter values based on providing the counter values from the FIFO queue to the processing units in the order of completion; and storing, by the device, the one or more feedback instances in connection with respective counter values based on obtaining the counter values from the FIFO queue in the order of completion; and p. 4-5 Above, you can see an example architecture for our view-statistics system. We have an API Gateway that accepts the view events the client sends to it. The API gateway delivers the event to an SQS queue and returns status code HTTP 201 (Accepted), so the client can continue doing its thing and doesn’t have to wait for the backend. A Lambda function in the backend processes the events from the Queue and maintains the counters in DynamoDB. The integration between SQS and Lambda is the problem here. We only get the guarantee that events are processed at least once. This means a view event can get processed two or more times. In this specific architecture, we could also opt for a first-in, first-out (FIFO) queue2, but that limits the throughput of our system and may end up becoming a bottleneck. The art cited above fails to teach or suggest the following as required by claim 1 and claim 9. perform, using the feedback data, one or more training operations for the machine learning model based on a counter value, of the counter values, satisfying a threshold. performing, by the device and using the one or more feedback instances, one or more training operations for the machine learning model. Scott, Distributed Locking in DynamoDB, 30 June 2020 teaches a FIFO queue on p. 3 Imagine a set of processes as a FIFO (first-in, first-out) queue. The first such process will have no competing process; naturally it is the first and therefore is able to perform its work. Subsequent processes must wait their respective turns before accessing the shared data. If each process were to "take a number" so to speak, then after the first process completes its work, the process next in line will be allowed to proceed. But fails to teach or suggest at least the following: perform, using the feedback data, one or more training operations for the machine learning model based on a counter value, of the counter values, satisfying a threshold. performing, by the device and using the one or more feedback instances, one or more training operations for the machine learning model. Liu, Runtime Concurrency Control and Operation Scheduling for High Performance Neural Network Training teaches a FIFO queue of operations on p. 7 left column section D first paragraph. Pan, Optimistic Concurrency Control for Distributed Unsupervised suggest concurrency control in a ML environment (abstraction, page 3 section 1 last paragraph). But Liu and Pan fail to teach or suggest at least the following: perform, using the feedback data, one or more training operations for the machine learning model based on a counter value, of the counter values, satisfying a threshold. performing, by the device and using the one or more feedback instances, one or more training operations for the machine learning model. With respect to claim 18, Borgmeier and prior art of record fails to teach or suggest 18. The non-transitory computer-readable medium of claim 17, wherein the one or more operations are associated with storing respective feedback instances, and wherein the one or more instructions further cause the device to: perform, using the respective feedback instances, one or more sequential learning operations. Any comments considered necessary by applicant must be submitted no later than the payment of the issue fee and, to avoid processing delays, should preferably accompany the issue fee. Such submissions should be clearly labeled “Comments on Statement of Reasons for Allowance.” Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to ALBERT M PHILLIPS, III whose telephone number is (571)270-3256. The examiner can normally be reached 10a-6:30pm EST M-F. 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, Ann J Lo can be reached at (571) 272-9767. 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. /ALBERT M PHILLIPS, III/Primary Examiner, Art Unit 2159 1 "Arguments that the alleged anticipatory prior art is ‘nonanalogous art’ or ‘teaches away from the invention’ or is not recognized as solving the problem solved by the claimed invention, [are] not ‘germane’ to a rejection under section 102." MPEP 2131.05 2 “Teaching away” does not apply to a 102 anticipation rejection. See MPEP
Read full office action

Prosecution Timeline

Dec 08, 2023
Application Filed
Jun 23, 2026
Non-Final Rejection mailed — §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12681917
SYSTEM AND METHOD FOR CORRECTION OF A QUERY USING A REPLACEMENT PHRASE
1y 6m to grant Granted Jul 14, 2026
Patent 12664427
DATA PROCESSING METHOD AND APPARATUS, AND INTELLIGENT VEHICLE
3y 5m to grant Granted Jun 23, 2026
Patent 12664219
SYSTEM AND METHOD FOR TOPIC EXTRACTION AND OPINION MINING
1y 9m to grant Granted Jun 23, 2026
Patent 12657238
VISUAL SEARCH USING MULTI-VIEW INTERACTIVE DIGITAL MEDIA REPRESENTATIONS
2y 3m to grant Granted Jun 16, 2026
Patent 12639297
TECHNIQUES FOR GENERATING QUERY LANGUAGE QUERIES USING TEMPLATIZED QUERY PROMPTS
2y 1m to grant Granted May 26, 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

1-2
Expected OA Rounds
82%
Grant Probability
94%
With Interview (+12.6%)
2y 11m (~4m remaining)
Median Time to Grant
Low
PTA Risk
Based on 725 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