Prosecution Insights
Last updated: July 17, 2026
Application No. 18/306,509

Hardware Element Abstraction

Final Rejection §103
Filed
Apr 25, 2023
Priority
Apr 25, 2022 — provisional 63/363,518
Examiner
VINCENT, ROSS MICHAEL
Art Unit
2196
Tech Center
2100 — Computer Architecture & Software
Assignee
Apple Inc.
OA Round
2 (Final)
54%
Grant Probability
Moderate
3-4
OA Rounds
2m
Est. Remaining
87%
With Interview

Examiner Intelligence

Grants 54% of resolved cases
54%
Career Allowance Rate
13 granted / 24 resolved
-0.8% vs TC avg
Strong +33% interview lift
Without
With
+32.9%
Interview Lift
resolved cases with interview
Typical timeline
3y 5m
Avg Prosecution
18 currently pending
Career history
59
Total Applications
across all art units

Statute-Specific Performance

§101
1.2%
-38.8% vs TC avg
§103
97.6%
+57.6% vs TC avg
§112
1.2%
-38.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 24 resolved cases

Office Action

§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 . Claims 1-3, 6-7, 8-10, 13-17, and 20 have currently been amended. No new claims have been added. No claims have been canceled. Claims 1-20 are currently pending for examination. Response to Arguments In response to applicant’s arguments, pgs.6-7, regarding the rejection of the instant application under 35 USC 101, the examiner has carefully considered the amended independent claim as a whole, and the advantage of being able to use an application across platforms without modification for a user input component is considered to be a technical solution to a technical problem. As such the rejection of the instant application under 35 USC 101 is withdrawn. In response to the applicant’s arguments, pgs.7-9, regarding the rejection of the instant application under 35 USC 102, the examiner concedes that Karp does not disclose the independent claim as amended. Specifically- the input being configured for a set of actions among a plurality of available sets of actions associated with the application, or selecting a next action based upon context information. As such, the new grounds of rejection under 35 USC 103 do not rely upon Karp to disclose these limitations- rather they rely upon Burks (US 20150350031 A1). 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. Claims 1, 8, and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Burks (US 20150350031 A1) in view of Warila (US 20160117296 A1). As per claim 1, Burks discloses: detecting user input via a configurable input component of a device (“Manual user input can also be a triggering event. For instance, the user can expressly instruct a controller to initiate a specific action set”, 0076 ; “Different controller devices can be configured to communicate with different subsets of the accessories”, 0036 ; “For example controller 3900 can provide a remote user interface for accessory 4000 that can include both input and output controls (e.g., a display screen to display current status information obtained from accessory 4000 and an input control such as a touchscreen overlay to allow changes to the status information).”, 0192) identifying, by an abstraction layer, a set of actions associated with an application for which the configurable input component has been configured from among a plurality of available sets of actions associated with the application (“selecting “configure” button 1104 can put the application in a “configuration” mode in which the app can receive user input to configure the model of the automated environment, e.g., by adding accessories; defining environments, rooms, and zones; assigning accessories to rooms; and/or defining action sets, triggering conditions, service groups, and so on.“, 0128 ; “as a further illustration, FIG. 6 shows a table 600 listing examples of action sets that can be defined according to an embodiment of the present invention. Each action set can have a user-assigned (or system-assigned) name 602, a triggering event 604, a triggering condition 606, and one or more resulting actions 608 to be taken (e.g., by sending control messages to accessories). While three examples are shown, any number of action sets can be defined, and some action sets can have multiple triggers (e.g., different combinations of triggering events and triggering conditions can trigger the same set of resulting actions). In some instances, some action sets can be predefined by a provider of the accessory management system, and a user can customize the predefined action sets or add others as desired.)”, 0086) obtaining context information from the application; selecting, by the abstraction layer and based on the context information, a next action of the set of actions (“Another model for coordinated control of multiple accessories can be based on an “action set.” An action set can define a set of actions to be taken upon occurrence of a “trigger.” In some embodiments, triggering an action set can occur in two stages. At a first stage, a “triggering event” is detected at a controller (e.g., any of controllers 202 described above) or a coordinator (e.g., coordinator 210 described above). In response to detecting the triggering event, the controller 202 (or coordinator 210) that detects the event can test whether a “triggering condition” is satisfied. If so, then one or more “resulting actions” can be performed. Accordingly, a user can define an action set by specifying a triggering event, a triggering condition, and one or more resulting actions.”, 0067 ; Examiner Note: testing for a triggering condition equates to obtaining context information, a resulting action equates to a next action) causing, by the abstraction layer, the application to perform the selected next action.(“In response to detecting the triggering event, the controller 202 (or coordinator 210) that detects the event can test whether a “triggering condition” is satisfied. If so, then one or more “resulting actions” can be performed.) Burks fully discloses the above limitations of claim 1, but does not explicitly disclose the “abstraction layer” performing the functions of identifying a set of actions, selecting a next action, and causing of execution to be performed. However, Warila discloses: “The abstraction layer receives user input and reconfigures the DOM based upon the input.”, abstract ; “receiving, by the programming code referenced by the DOM structure, from the abstraction layer, an input event; reconfiguring, by the programming code referenced by the DOM structure, in response to the received input event, the DOM structure to update the running state of the mobile software application based on a response, by the mobile software application, to the received input event; and updating, by the abstraction layer, the device-independent application user interface, responsive to the reconfiguring of the DOM structure.”, clm.1 It would have been obvious to one of ordinary skill in the art to combine the input configuration method of Burks with the abstraction layer of Warila, in order to save the develops of the application the effort of writing custom GUI code for each of their own applications (Warila, [0272]). As per claim 8, it is a non-transitory computer readable medium (see Burks [0176]: “Storage device 3912 can be implemented, e.g., using disk, flash memory, or any other non-transitory storage medium, or a combination of media, and can include volatile and/or non-volatile media.”) claim with substantially the same limitations as claim 1, and accordingly it is rejected for substantially the same reasons. As per claim 15, Burks discloses: one or more processors; and one or more computer readable media comprising computer readable code executable by the one or more processors (“Embodiments of the present invention can be realized using any combination of dedicated components and/or programmable processors and/or other programmable devices.“, 0200 ; “Computer programs incorporating various features of the present invention may be encoded and stored on various computer readable storage media; suitable media include magnetic disk or tape, optical storage media such as compact disk (CD) or DVD (digital versatile disk), flash memory, and other non-transitory media.”, 0201) detecting user input via a configurable input component of a device (“Manual user input can also be a triggering event. For instance, the user can expressly instruct a controller to initiate a specific action set”, 0076 ; “Different controller devices can be configured to communicate with different subsets of the accessories”, 0036 ; “For example controller 3900 can provide a remote user interface for accessory 4000 that can include both input and output controls (e.g., a display screen to display current status information obtained from accessory 4000 and an input control such as a touchscreen overlay to allow changes to the status information).”, 0192) identifying, by an abstraction layer, a set of actions associated with an application for which the configurable input component has been configured from among a plurality of available sets of actions associated with the application (“selecting “configure” button 1104 can put the application in a “configuration” mode in which the app can receive user input to configure the model of the automated environment, e.g., by adding accessories; defining environments, rooms, and zones; assigning accessories to rooms; and/or defining action sets, triggering conditions, service groups, and so on.“, 0128 ; “as a further illustration, FIG. 6 shows a table 600 listing examples of action sets that can be defined according to an embodiment of the present invention. Each action set can have a user-assigned (or system-assigned) name 602, a triggering event 604, a triggering condition 606, and one or more resulting actions 608 to be taken (e.g., by sending control messages to accessories). While three examples are shown, any number of action sets can be defined, and some action sets can have multiple triggers (e.g., different combinations of triggering events and triggering conditions can trigger the same set of resulting actions). In some instances, some action sets can be predefined by a provider of the accessory management system, and a user can customize the predefined action sets or add others as desired.)”, 0086) obtaining context information from the application; selecting, by the abstraction layer and based on the context information, a next action of the set of actions (“Another model for coordinated control of multiple accessories can be based on an “action set.” An action set can define a set of actions to be taken upon occurrence of a “trigger.” In some embodiments, triggering an action set can occur in two stages. At a first stage, a “triggering event” is detected at a controller (e.g., any of controllers 202 described above) or a coordinator (e.g., coordinator 210 described above). In response to detecting the triggering event, the controller 202 (or coordinator 210) that detects the event can test whether a “triggering condition” is satisfied. If so, then one or more “resulting actions” can be performed. Accordingly, a user can define an action set by specifying a triggering event, a triggering condition, and one or more resulting actions.”, 0067 ; “In this example, the triggering event is set to 10 pm and the triggering condition is set to “weeknight” (which can be defined to refer to Sunday through Thursday nights); accordingly, the “sleep” action set would not automatically be triggered at 10 pm on Friday or Saturday nights.”, 008 ; Examiner Note: testing for a triggering condition equates to obtaining context information, a resulting action equates to a next action) causing, by the abstraction layer, the application to perform the selected next action.(“In response to detecting the triggering event, the controller 202 (or coordinator 210) that detects the event can test whether a “triggering condition” is satisfied. If so, then one or more “resulting actions” can be performed.) Burks fully discloses the above limitations of claim 15, but does not explicitly disclose the “abstraction layer” performing the functions of identifying a set of actions, selecting a next action, and causing of execution to be performed. However, Warila discloses: “The abstraction layer receives user input and reconfigures the DOM based upon the input.”, abstract ; “receiving, by the programming code referenced by the DOM structure, from the abstraction layer, an input event; reconfiguring, by the programming code referenced by the DOM structure, in response to the received input event, the DOM structure to update the running state of the mobile software application based on a response, by the mobile software application, to the received input event; and updating, by the abstraction layer, the device-independent application user interface, responsive to the reconfiguring of the DOM structure.”, clm.1 Claims 2, 9, and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Burks (US 20150350031 A1) in view of Warila (US 20160117296 A1) in further view of Raju (US 20170111455 A1). As per claim 2, Burks in view of Warila fully discloses the limitations of claim 1, but does not disclose that determining context information comprises determining a currently active session which has associated actions. However, Raju discloses: obtaining the context information comprises determining a currently active session (“In yet another embodiment, the OS of the client 120 may be queried to determine the current active mode (the current active session, the current active application, or both) or the active window may be monitored to detect changes”, 0045) the set of actions are associated with the currently active session (“In one embodiment, a table at the client 120 stored in a memory 604 or storage 604 (as described with respect to FIG. 6) may include an entry for each session initiated at the client 120 and any associated applications.", 0038) It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Burks ([0031]) in view of Warila (abstract) with those of Raju ([0045]) in order to provide a means for determining the currently active session, which may be used to inform action selection. Raju teaches associating a set of actions with user sessions for improved system responsiveness and context-aware processing. A person of ordinary skill in the art, before the effective filing date, would have recognized that determining a currently active session is a fundamental step in context determination, and associating actions with that session is a predictable and routine optimization to maintain consistent user experience. Given the market incentives to improve session management and user interface responsiveness, and the well-known interchangeability of session-based context tracking, combining Burks context and set of actions with Raju’s association of a session with a set of actions would have been an obvious and expected modification. This combination requires no inventive leap but rather reflects a straightforward application of known techniques to achieve predictable results, consistent with the Supreme Court’s guidance in KSR Int’l Co. v. Tleflex, Inc, 550 U.S. 398 (2007). As per claim 9, it is a non-transitory computer readable medium (see Burks, [0176]) claim with substantially the same limitations as claim 2, and accordingly it is rejected for substantially the same reasons. As per claim 16, it is a system claim with substantially the same limitations as claim 2, and accordingly it is rejected for substantially the same reasons. Claims 3, 4, 5, 10, 11, 12, 17, 18, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Burks (US 20150350031 A1) in view of Warila (US 20160117296 A1) in further view of Brown (US 20160028875 A1). As per claim 3, Burks in view of Warila fully discloses the limitations of claim 1, but does not disclose a set of actions being defined by an application. However, Brown discloses: the set of actions are defined by the application ("The eligible actions that are included in sets 810 and 820 may be defined by the custodian application 220", 0089) It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Burks in view of Warila with those of Brown, in order to provide a system which improves the efficiency of processing of event notifications (equating to button presses in this context) (see Brown, [0097]). As per claim 4, Burks in view of Warila fully discloses the limitations of claim 1, but does not disclose the set of actions being identified in accordance with user profile data. However, Brown discloses: the set of actions are further identified in accordance with user profile data indicating a user-defined configuration for the configurable input component ("While each custodian application 220 corresponding to a given communication message type may define the available additional actions to be displayed in arrays 450 and 750, some configuration of the user interface elements included in the array may be carried out by the user. FIG. 8 illustrates an example view 800 for selecting actions for each of the first and second action user interface elements of the array from available sets 810 and 820, respectively. The eligible actions that are included in sets 810 and 820 may be defined by the custodian application 220 and/or the unified event manager 260.", 0089 ; “displaying the view in the second mode, each displayed listing of the view in the second mode comprising a user interface element for initiating the first action and at least one additional user interface element for initiating an additional action operating on the corresponding communication event, different sets being provided for communication events of different communication event types or different accounts.", 0028Examiner Note: the configurable user interface equates to a configurable input. The user account which the set of actions are associated with equates to user profile data) As per claim 5, Burks in view of Warila fully discloses the limitations of claim 1, but does not disclose the set of actions comprising a plurality of progressive application-performable actions. However, Brown discloses: the set of actions comprise a plurality of progressive application-performable actions ("As summarized in Table 3 above, for example, once a “delete” action is selected, the “delete” action user interface element in the view 400 is replaced with an “undo” action user interface element.", 0099 ; "Thus, “actuation” of a user interface element can include conventional user input operating on the user interface element so as to provide a signal or instruction to the executing application or OS that a particular action represented by the user interface element is to be carried out.", 0064 ; Examiner Note: being carried out by the executing application necessitates being application-performable) As per claim 10, it is a non-transitory computer readable medium (see Burks, [0176]) claim with substantially the same limitations as claim 3, and accordingly it is rejected for substantially the same reasons. As per claim 11, it a non-transitory computer readable medium (see Burks, [0176]) claim with substantially the same limitations as claim 4, and accordingly it is rejected for substantially the same reasons. As per claim 12, it is a non-transitory computer readable medium (see Burks, [0176]) claim with substantially the same limitations as claim 5, and accordingly it is rejected for substantially the same reasons. As per claim 17, it is a system claim with substantially the same limitations as claim 3, and accordingly it is rejected for substantially the same reasons. As per claim 18, it a system claim with substantially the same limitations as claim 4, and accordingly it is rejected for substantially the same reasons. As per claim 19, it is a system claim with substantially the same limitations as claim 5, and accordingly it is rejected for substantially the same reasons. Claims 6, 13, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Burks (US 20150350031 A1) in view of Warila (US 20160117296 A1) in view of Goldman-Shenhar (US 20170174230 A1). As per claim 6, Burks in view of Warila fully discloses the limitations of claim 1, but does not explicitly disclose an abstraction layer being used to cause the application to perform the next action without indicating a user input was detected. However, Goldman-Shenhar discloses: the abstraction layer causes the application to perform the selected next action without indicating that the user input is detected via the configurable input component ("Where the user request is made using hardware (e.g., buttons or touchscreens) and/or graphical interfaces or previously stored speech and/or gestures, the system 130 knows the level of abstraction of the user inputs. Based on this level of abstraction, a system determines what sequence of commands will be sent to the vehicle systems and subsystems for execution. In one embodiment, another intelligent system, distinct from the functional system 130, determines what sequence of commands will be sent to the vehicle systems and subsystems for execution.", 0063 ; Examiner Note: system 130 detects the user input, and either system 130 or an intelligent system sends a sequence of commands- not including a notification of a detection of a user input- to a vehicle system, equating to an application, for execution) The system of Burks in view of Warila in further view of Goldman-Shenhar would provide a user configurable input component which causes an application to perform a next action via an abstraction layer. It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Burks in view of Warila with those of Goldman-Shenhar, in order to provide a system which improves the user experience by rearranging, or configuring, the interface system parameters according to human needs and understanding (Goldman-Shenhar, [0007]). As per claim 13, it is a non-transitory computer readable medium (see Burks, [0176]) claim with substantially the same limitations as claim 6, and accordingly it is rejected for substantially the same reasons. As per claim 20, it is a system claim with substantially the same limitations as claim 6, and accordingly it is rejected for substantially the same reasons. Claims 7 and 14 are rejected under 35 U.S.C. 103 as being unpatentable over Burks (US 20150350031 A1) in view of Warila (US 20160117296 A1) in view of Lin (US 11157259 B1). As per claim 7, Burks in view of Warila fully discloses the limitations of claim 1, but does not disclose the context information being determined, in part, by state information received from an application. However, Lin discloses: the context information is determined, in part, by state information received from the application ("As a user interacts with application 122, application 122 may transmit user-provided data and context information to application server 130 for processing. The context information may include device information (e.g., the type of device, the operating environment in which application 122 is being executed on client device 120, capabilities of the client device 120, and the like) and application state information.", col.6, lines 3-27 ; Examiner Note: the context information including state information necessitates that context information is partially determined by state information) It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Burks in view of Warila with those of Lin in order to implement a configurable button with associated context and state information in a way which reduces the amount of time needed to develop, update, and deploy applications across platforms (see Lin, [col.1, lines 51-55], [col.2, lines 26-48]). As per claim 14, it is a non-transitory computer readable medium claim with substantially the same limitations as claim 7, and accordingly it is rejected for substantially the same reasons. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure: Lydon (US 20080034129 A1) – discloses a method, system, and interface for transferring status information between a media player and an accessory. Includes determining when a button event occurs, and transmitting, by the accessory, at least one button status command to the media player, wherein the button status commands comprise context-specific button status commands. Gilbert (US 10120735 B2) - discloses a system, method, and apparatus for touch input systems in computing environments. An interaction service is logically positioned between an operating system and an application. Comprises determining what action to perform in response to user input as per the interaction class. 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 ROSS MICHAEL VINCENT whose telephone number is (703)756-1408. The examiner can normally be reached Mon-Fri 8:30AM-5:30PM. 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, April Blair can be reached at (571) 270-1014. 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. /R.M.V./ Examiner, Art Unit 2196 /APRIL Y BLAIR/Supervisory Patent Examiner, Art Unit 2196
Read full office action

Prosecution Timeline

Apr 25, 2023
Application Filed
Oct 17, 2025
Non-Final Rejection mailed — §103
Jan 16, 2026
Response Filed
May 05, 2026
Final Rejection mailed — §103
Jun 29, 2026
Interview Requested
Jul 15, 2026
Examiner Interview Summary

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12684600
METHOD FOR RESOURCE EXCLUSION, TERMINAL DEVICE, AND STORAGE MEDIUM
3y 12m to grant Granted Jul 14, 2026
Patent 12632279
CROSS-PLATFORM VIRTUAL MACHINE MIGRATION
3y 5m to grant Granted May 19, 2026
Patent 12632323
CLOUD-NATIVE APPLICATION PROGRAMMING INTERFACE (API) RECOMMENDATION METHOD FUSING DATA AUGMENTATION AND CONTRASTIVE LEARNING
2y 8m to grant Granted May 19, 2026
Patent 12530219
TIME-BOUND LIVE MIGRATION WITH MINIMAL STOP-AND-COPY
3y 2m to grant Granted Jan 20, 2026
Patent 12511158
TASK ALLOCATION METHOD, APPARATUS, ELECTRONIC DEVICE AND COMPUTER-READABLE STORAGE MEDIUM
3y 3m to grant Granted Dec 30, 2025
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
87%
With Interview (+32.9%)
3y 5m (~2m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 24 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