Prosecution Insights
Last updated: July 17, 2026
Application No. 18/168,229

CODE RADAR

Final Rejection §103
Filed
Feb 13, 2023
Priority
Oct 14, 2022 — provisional 63/416,258
Examiner
NGUYEN, NHAT HUY T
Art Unit
2147
Tech Center
2100 — Computer Architecture & Software
Assignee
Microsoft Technology Licensing, LLC
OA Round
2 (Final)
54%
Grant Probability
Moderate
3-4
OA Rounds
0m
Est. Remaining
77%
With Interview

Examiner Intelligence

Grants 54% of resolved cases
54%
Career Allowance Rate
191 granted / 356 resolved
-1.3% vs TC avg
Strong +23% interview lift
Without
With
+23.3%
Interview Lift
resolved cases with interview
Typical timeline
3y 6m
Avg Prosecution
24 currently pending
Career history
405
Total Applications
across all art units

Statute-Specific Performance

§101
1.5%
-38.5% vs TC avg
§103
83.2%
+43.2% vs TC avg
§102
13.2%
-26.8% vs TC avg
§112
1.5%
-38.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 356 resolved cases

Office Action

§103
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Status of the Claims Claims 1-20 are pending for examination. Claims 1, 16 and 20 are independent Claims. Claims 1-20 are rejected under 35 U.S.C. §103. 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-4, 6-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Rummler et al. (U.S. 2015/0046904 hereinafter Rummler) in further view of Badlani et al. (U.S. 2021/0240453 hereinafter Badlani). As Claim 1, Rummler teaches a method, implemented at a computer system that includes a processor (Rummler (¶0016 line 2-3), one or more processor with instruction stored), comprising: identifying a first source code location, the first source code location being within source code that is displayed at a code editor user interface (UI) (Rummler (¶0051 line 1-9), user select class 1, the source code for class 1 is displayed on the editor frame); from a set of mappings generated based on a language model attention matrix (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes. One or more entities is compared to subscription information, Relevant subscriptions are provided on the user interface), identifying a set of one or more source code locations as being related to the first source code location (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes. One or more entities is compared to subscription information, Relevant subscriptions are provided on the user interface), the set of one or more source code locations including a second source code location (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location); and concurrent with presenting the first source code location in the code editor UI, presenting a related source code navigation experience (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location), including: presenting the second source code location in the code editor UI (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location); and presenting a visual indication that the second source code location is related to the first source code location (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code). Rummler may not explicitly disclose: the set of mappings having been generated by processing a multi-layer attention tensor of a self-attention language model to determine match strengths between tokens. Badlani teaches: the set of mappings having been generated by processing a multi-layer attention tensor of a self-attention language model to determine match strengths between tokens (Badlani (¶0042 line 13-18, ¶0044 line 1-3), “an attention mechanism of the transformer network may attend to identifying which tokens are most/least important and/or relevant. By using both sequence and structural position information in this manner, the transformer network is able to focus on both short-term and long-term sequence dependencies”), Rummler disclose a system/method to compare source code to the subscription information and display the matched source codes. Badlani disclose an attention mechanism for comparing codes. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify comparison module of Rummler instead be an attention mechanism taught by Badlani, with a reasonable expectation of success. The motivation would be to allow system to “with a transformer network, there is no requirement that the input source code sequence be processed in order. Consequently, more parallelization is possible during training, and long-range dependencies are easier to learn.” (Badlani (¶0032 last 5 lines)). As Claim 2, besides Claim 1, Rummler teaches wherein the first source code location corresponds to a cursor location within the source code that is displayed within the code editor UI (Rummler (¶0051 line 1-9), user select class 1, the source code for class 1 is displayed on the editor frame). As Claim 3, besides Claim 1, Rummler teaches wherein the first source code location corresponds to a selection within the source code that is displayed within the code editor UI (Rummler (¶0051 line 1-9), user select class 1, the source code for class 1 is displayed on the editor frame). As Claim 4, besides Claim 1, Rummler teaches wherein the first source code location and the second source code location are within a single source code file (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code). As Claim 6, besides Claim 1, Rummler teaches wherein the set of one or more source code locations includes a plurality of source code locations (Rummler (¶0056 line 7-8), system determines whether one or more subscriptions re relevant to one or more entities), the plurality of source code locations including the second source code location (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code). As Claim 7, besides Claim 6, Rummler teaches wherein presenting the related source code navigation experience includes: presenting each of the plurality of source code locations in the code editor UI (Rummler (¶0051 line 1-9), user select class 1, the source code for class 1 is displayed on the editor frame); and for each of the plurality of source code locations, presenting a corresponding visual indication that the source code location is related to the first source code location (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code). As Claim 8, besides Claim 6, Rummler teaches wherein the plurality of source code locations includes at least one first source code location identified based on the language model attention matrix (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes), and at least one second source code location identified based on static analysis (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), one or more entities is compared to subscription information. Relevant subscriptions are provided on the user interface). As Claim 9, besides Claim 1, Rummler teaches wherein presenting the related source code navigation experience comprises presenting the second source code location within a first pane of the code editor UI that is separate from a second pane of the code editor UI within which the first source code location is displayed (Rummler (¶0052 line 1-3, fig. 2A), first source code location is also displayed the list of Class 1, Class 2, Class 3). As Claim 10, besides Claim 1, Rummler teaches wherein presenting the related source code navigation experience comprises presenting the second source code location within a same pane of the code editor UI within which the first source code location is displayed (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), one or more entities is compared to subscription information. Relevant subscriptions are provided on the user interface). As Claim 11, besides Claim 1, Rummler teaches wherein presenting the second source code location in the code editor UI comprises: presenting a first source code line corresponding to the second source code location (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), one or more entities is compared to subscription information. Relevant subscriptions are provided on the user interface); and presenting a plurality of source code lines surrounding the first source code line as context for the first source code line (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code). As Claim 12, besides Claim 11, Rummler teaches wherein presenting the plurality of source code lines surrounding the first source code line as context for the first source code line (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code location) comprises eliding one or more source code lines from a block of contiguous source code lines (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code location. Only matching code is highlighted, many other codes are omitted). As Claim 13, besides Claim 1, Rummler teaches wherein presenting the visual indication that the second source code location is related to the first source code location comprises presenting an indication of why the second source code location is related to the first source code location (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 provides explanation for the code). As Claim 14, besides claim 13, Rummler teaches wherein presenting the indication of why the second source code location is related to the first source code location is based on a static source code analysis (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), one or more entities is compared to subscription information. Relevant subscriptions are provided on the user interface). As Claim 15, besides Claim 1, Rummler teaches further comprising generating the set of mappings based on the language model attention matrix (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes. One or more entities is compared to subscription information, Relevant subscriptions are provided on the user interface). As Claim 16, Rummler teaches a method, implemented at a computer system that includes a processor, comprising: accessing an attention matrix that is produced as part of generation of a language model prediction (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes. One or more entities is compared to subscription information, Relevant subscriptions are provided on the user interface); processing the attention matrix to generate a set of mappings (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes. One or more entities is compared to subscription information, Relevant subscriptions are provided on the user interface), and present, in a user interface of the code editor application and concurrently with display of a source code location corresponding to a selected subject token of the set of mappings (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code location), one or more related source code locations corresponding to related tokens associated with the selected subject token (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes. One or more entities is compared to subscription information, Relevant subscriptions are provided on the user interface), present a visual indication of relevance between the source code location and the one or more related source code locations (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 is displayed on a second source code location. Second source code location is highlighted in a box within the first source code location). Rummler may not explicitly disclose: including processing a multi-dimensional attention tensor produced by a self-attention architecture of the language model to determine match strengths between tokens based on interactions of corresponding observers across a plurality of lavers, and generating the set of mappings based on the match strengths, each mapping in the set of mappings associating a subject token within source code to a set of one or more related tokens within the source code, each related token being estimated to relate to the subject token; and applying a distance function to one or more mappings in the set of mappings including, for a mapping of the one or more mappings, weighting each related token based on its distance from its subject token within the source code. the one or more related source code locations being selected according to the one or more mappings to which the distance function has been applied, and Smith teaches: including processing a multi-dimensional attention tensor produced by a self-attention architecture of the language model to determine match strengths between tokens based on interactions of corresponding observers across a plurality of layers (Badlani (¶0042 line 13-18, ¶0044 line 1-3), “an attention mechanism of the transformer network may attend to identifying which tokens are most/least important and/or relevant. By using both sequence and structural position information in this manner, the transformer network is able to focus on both short-term and long-term sequence dependencies”), and generating the set of mappings based on the match strengths (Badlani (¶0042 line 13-18, ¶0044 line 1-3), “an attention mechanism of the transformer network may attend to identifying which tokens are most/least important and/or relevant”), each mapping in the set of mappings associating a subject token within source code to a set of one or more related tokens within the source code (Badlani (¶0034 last 3 lines), “Combination module 124 may then generate a hybrid embedding based on the graph data structure and the incorporated token embeddings”), each related token being estimated to relate to the subject token (Badlani (¶0042 line 13-18, ¶0044 line 1-3), “an attention mechanism of the transformer network may attend to identifying which tokens are most/least important and/or relevant”); and applying a distance function to one or more mappings in the set of mappings including, for a mapping of the one or more mappings, weighting each related token based on its distance from its subject token within the source code (Badlani (¶0042 line 13-18, ¶0044 line 1-3), “an attention mechanism of the transformer network may attend to identifying which tokens are most/least important and/or relevant. By using both sequence and structural position information (distance information) in this manner, the transformer network is able to focus on both short-term and long-term sequence dependencies”). Rummler disclose a system/method to compare source code to the subscription information and display the matched source codes. Badlani disclose an attention mechanism for comparing codes. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify comparison module of Rummler instead be an attention mechanism taught by Badlani, with a reasonable expectation of success. The motivation would be to allow system to “with a transformer network, there is no requirement that the input source code sequence be processed in order. Consequently, more parallelization is possible during training, and long-range dependencies are easier to learn.” (Badlani (¶0032 last 5 lines)). As Claim 17, besides Claim 16, Rummler in view of Badlani teaches wherein processing a language model attention matrix to generate the set of mappings includes one or more of attention mean postprocessing or follow-up attention postprocessing (Rummler (¶0045 line 5-2, ¶0055 line 1-5, ¶0056 line 1-5 and 10-11, fig. 3 item 306, 308, 310), program language analyzer using a parser to analyze changes (postprocessing or follow-up attention postprocessing). One or more entities is compared to subscription information, Relevant subscriptions are provided on the user interface). As Claim 18, besides Claim 16, Rummler in view of Badlani teaches further comprising using a static analysis of the source code to generate an annotation for a related token (Rummler (¶0053 line 6-7, fig. 2C item 230), notification 230 provides explanation for the code), the annotation indicating why the related token is related to its subject token (Badlani (¶0042 line 13-18, ¶0044 line 1-3), “an attention mechanism of the transformer network may attend to identifying which tokens are most/least important and/or relevant. By using both sequence and structural position information (distance information) in this manner, the transformer network is able to focus on both short-term and long-term sequence dependencies”). As Claim 19, besides Claim 16, Rummler in view of Badlani teaches further comprising using a static analysis of the source code to add a new related token to a mapping of the set of mappings (Badlani (¶0042 line 13-18, ¶0044 line 1-3), “an attention mechanism of the transformer network may attend to identifying which tokens are most/least important and/or relevant. By using both sequence and structural position information (distance information) in this manner, the transformer network is able to focus on both short-term and long-term sequence dependencies”). As Claim 20, the Claim is rejected for the same reasons as Claim 1. 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) 5 is/are rejected under 35 U.S.C. 103 as being unpatentable over Rummler in view of Badlani in further view of Gao et al. (U.S. 2021/0133092 hereinafter Gao). As Claim 5, besides Claim 1, Rummler in view of Badlani does not disclose: wherein the first source code location and the second source code location are in different source code files Gao teaches: wherein the first source code location and the second source code location are in different source code files (Gao (¶0091, fig. 8), shaded lines indicate differences between element-value pairs and the baseline data result 820). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify User Interface of Rummler in view of Badlani instead be a User Interface taught by Gao, with a reasonable expectation of success. The motivation would be to identify “defective codes of the application that have caused the differences” (Gao (abstract)). Response to Arguments 35 U.S.C. §101 Rejections Applicants’ arguments are persuasive regarding recently amended Claims; therefore, 35 U.S.C. §101 rejections are respectfully withdrawn. 35 U.S.C. §102 and §103 Rejections: As Claim 1, 16 and 20, Applicants argue that Rummler does not disclose an attention based processing (last paragraph of page 8) and “token level relationship” (first paragraph of page 9 in the remarks). Applicants’ arguments are moot because new reference Badlani teaches the limitation(s). See current rejection(s) for details. Conclusion 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. Any inquiry concerning this communication or earlier communications from the examiner should be directed to NHAT HUY T NGUYEN whose telephone number is (571)270-7333. The examiner can normally be reached M-F: 12:00-8:00 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, Viker Lamardo can be reached at 571-270-5871. 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. /NHAT HUY T NGUYEN/ Primary Examiner, Art Unit 2147
Read full office action

Prosecution Timeline

Feb 13, 2023
Application Filed
Nov 15, 2025
Non-Final Rejection (signed) — §103
Jan 16, 2026
Non-Final Rejection mailed — §103
Apr 06, 2026
Response Filed
Jun 09, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12681992
DETERMINING DEVICE ASSISTANT MANNER OF REPLY
5y 9m to grant Granted Jul 14, 2026
Patent 12683005
TREATMENT PROFILES
3y 11m to grant Granted Jul 14, 2026
Patent 12670233
Cluster Intralayer Safety Mechanism In An Artificial Neural Network Processor
5y 9m to grant Granted Jun 30, 2026
Patent 12670525
SYSTEMS AND METHODS FOR GENERATING AUGMENTED REALITY SCENES FOR PHYSICAL ITEMS
3y 2m to grant Granted Jun 30, 2026
Patent 12632159
INTERFACE FOR DISPLAY OF INTERACTIVE CONTENT
3y 5m to grant Granted May 19, 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
54%
Grant Probability
77%
With Interview (+23.3%)
3y 6m (~0m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 356 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