Prosecution Insights
Last updated: October 01, 2026
Application No. 18/628,089

Systems, Methods, And Devices For Customizable Computing Platforms

Non-Final OA §101§103
Filed
Apr 05, 2024
Examiner
MORALES, PEDRO JESUS
Art Unit
Tech Center
Assignee
Salesforce Inc.
OA Round
1 (Non-Final)
62%
Grant Probability
Moderate
1-2
OA Rounds
1y 2m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 62% of resolved cases
62%
Career Allowance Rate
8 granted / 13 resolved
+1.5% vs TC avg
Strong +56% interview lift
Without
With
+55.6%
Interview Lift
resolved cases with interview
Typical timeline
3y 8m
Avg Prosecution
17 currently pending
Career history
36
Total Applications
across all art units

Statute-Specific Performance

§101
21.6%
-18.4% vs TC avg
§103
55.3%
+15.3% vs TC avg
§102
10.6%
-29.4% vs TC avg
§112
10.1%
-29.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 13 resolved cases

Office Action

§101 §103
DETAILED ACTION This non-final office action is responsive to application 18/628,089 as submitted on April 05, 2024. Claim status is currently pending and under examination for claims 1-20 of which independent claims are 1, 10 and 17. 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 Objections Claim 9 is objected to because of the following informalities: In line 1, “the one or ore function calls” should read “the one or more function calls” Appropriate correction is required. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. Independent Claims 1, 10 and 17 Step 2A Prong One: Does the claim recite an abstract idea, law of nature, or natural phenomenon? Yes, independent claim 1, under the broadest reasonable interpretation, recites the following limitations that are abstract ideas: generating a data model based, at least in part, on the application data, the data model being a calendar data structure associated with a calendaring application; (mental process) generating, using an application model, additional application data, (mental process) and updating the calendar data structure of the data model based, at least in part, on the additional application data, (mental process) The “generating a data model” step involves determining how to arrange application data as a calendar data structure which amounts to no more than observations, evaluations, and judgments that can be performed in the human mind or with the use of a physical aid (e.g., pen and paper). The claim recites the step of generating a data model at a high degree of generality, thus the step is not required to have any specific level of complexity that would preclude the step from being mental processes. Therefore, the “generating a data model” step is considered to be mental processes, see MPEP § 2106.04(a)(2)(III). The “generating additional application data” step involves determining new application data which amounts to no more than observations, evaluations, and judgments that can be performed in the human mind or with the use of a physical aid (e.g., pen and paper). The claim recites the step of generating additional application data at a high degree of generality, thus the step is not required to have any specific level of complexity that would preclude the step from being mental processes. Therefore, the “generating additional application data” step is considered to be mental processes, see MPEP § 2106.04(a)(2)(III). The “updating” step involves determining new values for a calendar data structure by using additional application data which amounts to no more than observations, evaluations, and judgments that can be performed in the human mind or with the use of a physical aid (e.g., pen and paper). The claim recites the step of updating a calendar data structure at a high degree of generality, thus the step is not required to have any specific level of complexity that would preclude the step from being mental processes. Therefore, the “updating” step is considered to be mental processes, see MPEP § 2106.04(a)(2)(III). Therefore, the independent claim recites a judicial exception. Independent claims 10 and 17 recite similar limitations corresponding to claim 1, therefore the same subject matter eligibility analysis is applied. Step 2A Prong Two: Does the claim recite additional elements that integrate the judicial exception into a practical application? No, the judicial exception recited above is not integrated into a practical application. The claims recite the following additional elements, but these additional elements are not sufficient to integrate the judicial exception into a practical application: A computing platform implemented using a server system, (MPEP § 2106.05(f) mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea) the computing platform being configurable to cause: receiving application data from an on-demand application hosted by the computing platform; (MPEP § 2106.05(g) necessary data gathering and insignificant extra-solution activity to the judicial exception) generating, using an application model, additional application data, (MPEP § 2106.05(f) mere instructions to implement an abstract idea on a computer, or generally links exception to a technological environment) the application model being a machine learning model; (MPEP § 2106.05(f) mere instructions to implement an abstract idea on a computer, or generally links exception to a technological environment) wherein the updating is performed, at least in part, via a plurality of custom data fields of a plurality of custom data objects. (MPEP § 2106.05(f) mere instructions to implement an abstract idea on a computer, or generally links exception to a technological environment) using one or more processors. (claim 10) (MPEP § 2106.05(f) mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea) One or more non-transitory computer readable media having instructions stored thereon for performing a method (claim 17) (MPEP § 2106.05(f) mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea) The “receiving” step amounts to mere data gathering and is recited at a high level of generality, thus adding insignificant extra-solution activity to the judicial exception – see MPEP § 2106.05(g). Under MPEP § 2106.05(d), such additional elements have been found by the courts to not integrate a judicial exception into a practical application. The “generating additional application data” step requires an “application model” to generate additional application data. The application model is used to apply the recited judicial exception without placing any limitation on how the application model operates. The limitation amounts to mere instructions to “apply” the judicial exception on a computer. It can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). The “application model being a machine learning model” step is recited at a high-level of generality such that the limitation amounts to no more than mere instructions to “apply” the judicial exception on a computer. It can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). The “wherein the updating” step is recited at a high-level of generality such that the limitation amounts to no more than mere instructions to “apply” the judicial exception on a computer. It can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). The remaining additional elements are recited at a high-level of generality such that they amount to no more than mere instructions to “apply” an exception using a generic component. Adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea, see MPEP § 2106.05(f). Therefore, the above limitations do not integrate the judicial exception into a practical application. Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception? No. The claims do not include additional elements that are sufficient for the claims to amount to significantly more than the judicial exception. In regards to the “receiving” step, this step adds insignificant extra-solution activity. An extra-solution activity is a well-understood, routine and conventional (WURC) activity per MPEP § 2106.05(d)(II), “the courts have recognized the following computer functions as well‐understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity. i. Receiving or transmitting data over a network, e.g., using the Internet to gather data.” The “receiving” step does not integrate the judicial exception into a practical application and does not amount to significantly more. In regards to the “application model” in the “generating additional application data” step, the limitations are recited so generically such that they amount to no more than mere instructions to “apply” the judicial exception on a computer using generic computer components. Mere instructions to apply a judicial exception cannot provide an inventive concept. See MPEP § 2106.05(f). In regards to the “application model being a machine learning model” step, the “wherein the updating” step, and the remaining additional elements, the limitations are recited so generically such that they amount to no more than mere instructions to “apply” the judicial exception on a computer using generic computer components. Mere instructions to apply a judicial exception cannot provide an inventive concept. See MPEP § 2106.05(f). Therefore, independent claims 1, 10 and 17 are not patent eligible. Dependent Claims 2-9, 11-16 and 18-20 The remaining dependent claims being rejected do not recite additional elements, whether considered individually or in combination, that are sufficient to integrate the judicial exception into a practical application or amount to significantly more than a judicial exception. Claim limitation Examiner analysis 2, 11, and 18. The system recited in claim 1, wherein the computing platform is further configurable to cause: generating a training data set based on previous application data and historical data associated with the on-demand application; and training the application model based on the training data set. The “generating” step is a mental process akin to a human evaluation/judgment/observation. The “training” step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 3 and 12. The system recited in claim 2, wherein the computing platform is further configurable to cause: updating the training data set based on additional performance data associated with the on-demand application; and re-training the application model based on the updated training data set. The “updating” step is a mental process akin to a human evaluation/judgment/observation. The “re-training” step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 4. The system recited in claim 1, wherein the additional application data comprises a plurality of recommended event objects. The step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 5. The system recited in claim 4, wherein the computing platform is further configurable to cause: generating a user interface screen configured to display the plurality of recommended event objects. The step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 6. The system recited in claim 4, wherein the updating further comprises: including the plurality of recommended event objects in the calendar data structure. The step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 7, 15 and 19. The system recited in claim 1, wherein the plurality of custom data fields comprises filtering rules, mapping rules, and operational criteria. The step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 8, 16 and 20. The system recited in claim 7, wherein the computing platform is further configurable to cause: defining the plurality of filtering rules based, at least in part, on an input received from user; defining the plurality of mapping rules to identify a plurality of syncing relationships; and defining the operational criteria to specify one or more function calls to an additional on-demand application. This is a mental process akin to a human evaluation/judgment/observation. 9. The system recited in claim 8, wherein the one or more function calls are configured to trigger a process flow hosted by the additional on-demand application. The step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 13. The method recited in claim 10, wherein the additional application data comprises a plurality of recommended event objects, and wherein the method further comprises: generating a user interface screen configured to display the plurality of recommended event objects. The step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). 14. The method recited in claim 13, wherein the updating further comprises: including the plurality of recommended event objects in the calendar data structure. The step is recited at a high-level of generality such that the limitations amount to no more than mere instructions to “apply” the judicial exception on a computer. They can also be viewed as nothing more than an attempt to generally link the use of the judicial exception to the technological environment of computers, see MPEP § 2106.05(f). Claim Rejections - 35 USC § 103 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 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. The following are the references relied upon in the rejections below: Mitra (US 20220343155 A1) Woulfe (US 20250209389 A1) Claims 1-6, 10-14 and 17-18 are rejected under 35 U.S.C. 103 as being unpatentable over Mitra / Woulfe. Regarding Claim 1, Woulfe teaches: A computing platform implemented using a server system ([0019] “the client device 105 and the application services platform 110 communicate with each other over a network (not shown) to implement the system” [0130] “the machine 700 may operate in the capacity of a server machine or a client machine in a server-client network environment”), the computing platform being configurable to cause: receiving application data from an on-demand application … ([0037] “the system can query online and/or offline user signals that are relevant to the individual's work and/or personal life. For instance, the system can fetch and infer tasks from user data extracted from one or more of the following (but not limited to) calendar application(s) (e.g., MICROSOFT OUTLOOK CALENDAR®)” See [0019] describing application services platform 110 implements a system. An application services platform (‘computing platform’) extracts (‘receives’) user data (‘application data’) from a calendar application. The calendar application can be Microsoft Outlook Calendar (an on-demand application).); generating a data model based, at least in part, on the application data ([0030] “For structured task data (e.g., calendar entries from calendar application(s), task entries from task management application(s), and the like), semi-structured task data (e.g., emails from email application(s), tweets, and the like), and/or un-structured user data (e.g., a blog post, a social media post, and the like), the prompt construction unit 124 can include the data directly in the prompt to the generative model 126.” [0053] “FIG. 2A shows an example of the user interface 205 of an AI-assisted schedule planning application in which the user is interacting with an AI generative model to generate a schedule” [0056] “in response to the user prompt “Show me my schedule,” the second Assistant prompt includes a schedule with the description: “Here is your schedule for today based on Email Application A, Calendar Application B, Task Management application C, Software Development Application D, Offline Source E, . . . ”” Calendar application data (user data) is included in a prompt used to generate a schedule. The generated schedule is a ‘data model’.), the data model being a calendar data structure associated with a calendaring application ([0084] “The data retrieval unit 402 can directly extract task elements from structured data, such as calendar application entries containing elements such as title (e.g., “Meeting with Alice”, “Doctor's appointment”), start date/time, end date/time, location, description, attendee(s), recurrence rule(s), and the like.” A generated schedule (‘data model’) is comprised of structured data, see Figure 2A, reference character 225. Structured data (‘calendar data structure’) is comprised of task elements (titles, start date/times, location) extracted from calendar application entries.); generating, using an application model, additional application data ([0102] “the instruction string in a system prompt comprises instructions to the generative model (e.g., the generative model 126) to infer one or more suggestions to complete a respective activity (e.g., AZURE DEVOPS® Task 7454269: Validate attribute based Incident Management System for frontend) in the schedule (e.g., in FIG. 2B), the one or more suggestions comprising one or more actions (e.g., to validate the attribute based Incident Management System for the frontend, and to collaborate with Anna on this task), one or more time slots (e.g., 13:00-14:00), or a combination thereof, and the user interface is caused to present the schedule with the one or more suggestions. For instance, the system can allocate some time for reading emails, based on the number and importance of the user's unread emails.”), the application model being a machine learning model ([0026] “the generative model 126 is implemented using a large language model (LLM)”); and updating the calendar data structure of the data model based, at least in part, on the additional application data ([0109] “the system can check with the user at the end of each day or at the beginning of each subsequent day, and ask if the tasks were all completed. If not, the system can update the schedule for the remaining days after asking what was achieved/not achieved, and the system can then schedule and/or prioritize the now most important tasks” [0045] “the user may submit further prompts requesting additional schedule(s) to be generated and/or to further refine the schedule that has already been generated”), wherein the updating is performed, at least in part, via a plurality of custom data fields of a plurality of custom data objects ([0067] “the user can give commands to the AI to modify the schedule. For example, the user provides voice commands and/or enters prompts “add time for breakfast”, and/or “remove checking emails from the schedule.” These commands can be used to augment the prompt and the new prompt can be sent to the generative model 126” Woulfe discloses Figure 2A (reproduced below) depicting a generated schedule (‘data model’) is comprised of structured data (‘calendar data structure’) that includes activities (‘custom data objects’). Each activity is comprised of task elements (‘custom data fields’) such as start time, end time, title, source, and advice. When an activity is added (adding a time for breakfast) or deleted (removing checking emails) in the generated schedule, task elements (start time, end time, and title) must be updated to reflect that change, therefore updating is performed via custom data fields of a plurality of custom data objects. PNG media_image1.png 821 1515 media_image1.png Greyscale ). However, Woulfe does not teach receiving application data from an on-demand application hosted by a computing platform, which is taught by Mitra: the computing platform being configurable to cause: receiving application data from an on-demand application hosted by the computing platform ([0144] “Embodiments of the present disclosure can also be implemented in cloud computing environments. In this description, “cloud computing” is defined as a model for enabling on-demand network access to a shared pool of configurable computing resources. For example, cloud computing can be employed in the marketplace to offer ubiquitous and convenient on-demand access to the shared pool of configurable computing resources” [0038] “server device(s) 104 includes or hosts the digital calendar system 110. … the digital calendar system 110 provides tools for viewing, generating, editing, and/or otherwise interacting with digital calendars” [0088-0089] “the task scheduling system 102 generates the candidate schedules 518 to include a plurality of schedules ranked … the task scheduling system 102 receives a selected schedule 520 from the candidate schedules 518 and then implements the selected schedule 520 for the user. For example, the task scheduling system 102 stores the selected schedule 520 in connection with a calendar application” Server device (‘computing platform’) hosts digital calendar system 110 and digital calendar system 110 includes task scheduling system 102 (see [0037]). The calendar system is implemented in a cloud computing environment that enables on-demand network access to shared computing resources, therefore digital calendar system is an on-demand application. Task scheduling system 102 generates candidate schedules and receives a selected schedule from the generated candidate schedules, therefore receiving application data (selected schedule) from an on-demand application (task scheduling system of digital calendar system) hosted by a computing platform.); generating a data model based, at least in part, on the application data ([0089] “the task scheduling system 102 receives a selected schedule 520 from the candidate schedules 518 and then implements the selected schedule 520 for the user. For example, the task scheduling system 102 stores the selected schedule”), the data model being a calendar data structure associated with a calendaring application ([0089] “the task scheduling system 102 stores the selected schedule 520 in connection with a calendar application” [0031] “the term “schedule” refers to a sequential order of tasks during a time period. For instance, a schedule corresponds to a time period having a particular start time and a particular end time.”); Before the effective filing date of the claimed invention, it would have been obvious to a person of ordinary skill in the art to modify the scheduling system of Woulfe with the technique disclosed by Mitra to receive data from an on-demand application to generate a schedule. By receiving data from an on-demand application to generate a schedule, the on-demand application can provide ubiquitous and convenient access to shared data used to generate schedules for users, thereby enabling fast schedule generation and improving user experience. Regarding Claims 2, 11 and 18, the combined scheduling system of Woulfe / Mitra teaches: The system recited in claim 1, wherein the computing platform is further configurable to cause: generating a training data set based on previous application data and historical data associated with the on-demand application ([0029] “the task scheduling system uses knowledge of historical schedule completion data to generate schedules and adjust schedules” [0056] “the training data includes historical scheduling data associated with a plurality of users corresponding to the set of user nodes 304. In some additional embodiments, the training data includes scheduling data associated with groups of users (e.g., users of similar demographics or attributes)” [0025] “the task scheduling system detects a missed or uncompleted task during the time period of the schedule or in connection with a specific time associated with the task” A task scheduling system (‘on-demand application’) uses historical schedule completion data (‘historical data’) and scheduling data associated with groups of users (‘previous application data’) to generate a training set. A task scheduling system determines which tasks in a schedule were completed, therefore historical schedule completion data is associated with the task scheduling system (on-demand application).); and training the application model based on the training data set ([0056] “the training data includes historical scheduling data associated with a plurality of users corresponding to the set of user nodes 304. In some additional embodiments, the training data includes scheduling data associated with groups of users (e.g., users of similar demographics or attributes). Accordingly, the task scheduling system 102 trains the graph neural network 300 to learn the edge weights in the bipartite graph 302 based on training data for individual users or for groups of users”). Before the effective filing date of the claimed invention, it would have been obvious to a person of ordinary skill in the art to modify the combined scheduling system of Woulfe / Mitra with the training technique disclosed by Mitra to train a machine learning model with historical data. By training a machine learning model with historical data, a model can use historical task completion data to generate more relevant tasks for a user schedule, thereby improving schedule personalization and increasing the likelihood that a user completes recommended tasks. Regarding Claims 3 and 12, the combined scheduling system of Woulfe / Mitra teaches: The system recited in claim 2, wherein the computing platform is further configurable to cause: updating the training data set based on additional performance data associated with the on-demand application ([0026] “the task scheduling system utilizes prior knowledge of the user's selection and/or performance of tasks in connection with previously recommended actions by the task scheduling system to recommend one or more additional tasks for dynamically modifying the schedule. Additionally, in one or more embodiments, the task scheduling system utilizes the reinforcement learning model and additional feedback based on modified schedules and/or task completion data for users to update edge weights between user nodes and task nodes of the graph neural network” See [0025] describing a task scheduling system tracks task completion, therefore performance of tasks is ‘additional performance data’ associated with the task scheduling system (‘on-demand application’).); and re-training the application model based on the updated training data set ([0026] “the task scheduling system utilizes the reinforcement learning model and additional feedback based on modified schedules and/or task completion data for users to update edge weights between user nodes and task nodes of the graph neural network” [0056] “the task scheduling system 102 trains the graph neural network 300 to learn the edge weights in the bipartite graph 302 based on training data”). Before the effective filing date of the claimed invention, it would have been obvious to a person of ordinary skill in the art to modify the combined scheduling system of Woulfe / Mitra with the training technique disclosed by Mitra to train a machine learning model with performance data. By training a machine learning model with performance data, the model learns to generate schedule recommendations based on how they are likely to perform, thereby generating schedules that are more useful and relevant for users. Regarding Claim 4, the combined scheduling system of Woulfe / Mitra teaches: The system recited in claim 1, wherein the additional application data comprises a plurality of recommended event objects ([0102] “the instruction string in a system prompt comprises instructions to the generative model (e.g., the generative model 126) to infer one or more suggestions to complete a respective activity (e.g., AZURE DEVOPS® Task 7454269: Validate attribute based Incident Management System for frontend) in the schedule (e.g., in FIG. 2B), the one or more suggestions comprising one or more actions (e.g., to validate the attribute based Incident Management System for the frontend, and to collaborate with Anna on this task), one or more time slots (e.g., 13:00-14:00), or a combination thereof, and the user interface is caused to present the schedule with the one or more suggestions. For instance, the system can allocate some time for reading emails, based on the number and importance of the user's unread emails.”). Regarding Claim 5, the combined scheduling system of Woulfe / Mitra teaches: The system recited in claim 4, wherein the computing platform is further configurable to cause: generating a user interface screen configured to display the plurality of recommended event objects ([0102] “the user interface is caused to present the schedule with the one or more suggestions. For instance, the system can allocate some time for reading emails, based on the number and importance of the user's unread emails.”). Regarding Claim 6, the combined scheduling system of Woulfe / Mitra teaches: The system recited in claim 4, wherein the updating further comprises: including the plurality of recommended event objects in the calendar data structure ([0045] “the user may submit further prompts requesting additional schedule(s) to be generated and/or to further refine the schedule that has already been generated” [0102] “the instruction string in a system prompt comprises instructions to the generative model (e.g., the generative model 126) to infer one or more suggestions to complete a respective activity … the one or more suggestions comprising one or more actions … one or more time slots (e.g., 13:00-14:00), or a combination thereof, and the user interface is caused to present the schedule with the one or more suggestions” Woulfe discloses Figure 2A (reproduced above) depicting a generated schedule comprised of structured data (‘calendar data structure’) that includes activities. When a generative model generates suggestions (‘recommended event objects’) to complete an activity and to refine the generated schedule, the suggestions (time slots and actions) for an activity are added to the structured data, therefore suggestions are included in a ‘calendar data structure’.). Regarding Claim 10, the rejection of Claim 1 is incorporated. The difference in scope being: A method comprising ([0014] “methods for using generative AI for schedule planning”): … using one or more processors ([0002] processor). Regarding Claim 13, the combined scheduling system of Woulfe / Mitra teaches: The method recited in claim 10, wherein the additional application data comprises a plurality of recommended event objects ([0102] “the instruction string in a system prompt comprises instructions to the generative model (e.g., the generative model 126) to infer one or more suggestions to complete a respective activity (e.g., AZURE DEVOPS® Task 7454269: Validate attribute based Incident Management System for frontend) in the schedule (e.g., in FIG. 2B), the one or more suggestions comprising one or more actions …, one or more time slots (e.g., 13:00-14:00), or a combination thereof”), and wherein the method further comprises: generating a user interface screen configured to display the plurality of recommended event objects ([0102] “the user interface is caused to present the schedule with the one or more suggestions”). Regarding Claim 14, the combined scheduling system of Woulfe / Mitra teaches: The method recited in claim 13, wherein the updating further comprises: including the plurality of recommended event objects in the calendar data structure ([0045] “the user may submit further prompts requesting additional schedule(s) to be generated and/or to further refine the schedule that has already been generated” [0102] “the instruction string in a system prompt comprises instructions to the generative model (e.g., the generative model 126) to infer one or more suggestions to complete a respective activity … the one or more suggestions comprising one or more actions … one or more time slots (e.g., 13:00-14:00), or a combination thereof, and the user interface is caused to present the schedule with the one or more suggestions” Woulfe discloses Figure 2A (reproduced above) depicting a generated schedule comprised of structured data (‘calendar data structure’) that includes activities. When a generative model generates suggestions (‘recommended event objects’) to complete an activity and to refine the generated schedule, the suggestions (time slots and actions) for an activity are added to the structured data, therefore suggestions are included in a ‘calendar data structure’.). Regarding Claim 17, the rejection of Claim 1 is incorporated. The difference in scope being: One or more non-transitory computer readable media having instructions stored thereon for performing a method, the method comprising: ([0002] “a machine-readable medium storing executable instructions. The instructions when executed cause the processor alone or in combination with other processors to perform operations”). The following are the references relied upon in the rejections below: Taheri (US 20180158548 A1) Claims 7-9, 15-16 and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Mitra / Woulfe / Taheri. Regarding Claims 7, 15 and 19, the combined scheduling system of Woulfe / Mitra teaches: The system recited in claim 1, wherein the plurality of custom data fields comprises … mapping rules, and operational criteria ([0106] “the request processing module 122 determines that at least one of the activities in the schedule has been updated within one of the first and second software applications or the schedule, and synchronizes, based on the determining, the at least one updated activity in the other one of the one software application and the schedule. For example, the at least one updated activity includes adding a new activity (e.g., check personal emails), deleting one of the one or more activities (e.g., skip lunch break), one or more location changes (e.g., the Science Fair moves location to another building), one or more scheduling time changes (e.g., the Science Fair moves location to another day), one or more context changes (e.g., the IT professional gets a new software certificate), or a combination thereof. In yet another embodiment, synchronizing further comprises synchronizing the other one of the one software application and the schedule in real-time or nearly real-time with the determining.” [0042] “the system can synchronize the schedule with Outlook calendar or any other calendar system by adding/removing scheduled items to/from the user's calendar.” When an activity’s time changes, start/end time fields (‘custom data fields’) are updated (see Figure 2A), or when an activity is deleted, all the activity’s fields (start time, end time, title, see Figure 2A) are deleted. When an activity is updated or deleted, these changes are synchronized to Outlook calendar. Synchronizing activity fields in a generated schedule to corresponding activity fields in Outlook calendar are ‘mapping rules’. Synchronizing to Outlook calendar is only performed when activity fields in a generated schedule are updated (deleted or modified), therefore this synchronizing rule represents ‘operational criteria’ (the criteria being whether an update is performed).). However, the combination does not teach wherein the plurality of custom data fields comprises filtering rules, which is taught by Taheri: The system recited in claim 1, wherein the plurality of custom data fields comprises filtering rules, … (The Examiner interprets “filtering rules” according to its broadest reasonable interpretation (BRI) in view of the Applicant’s specification as encompassing selecting (or not selecting) a menu item to filter a calendar view. This interpretation is consistent with the illustrative descriptions in the Applicant’s specification at [0071], (see excerpt below). Applicant’s written description at [0071]: “filtering rules may be used to define when data objects, such as a custom event object, may be visible in which view of the calendar data structure. Accordingly, such filtering rules may define how such data objects are presented in different views, such as a daily view, a weekly view, and a monthly view.” [0093] “the user may filter the view in the schedule by selecting a “filter” menu item 914 (FIG. 9C) that opens a filter user interface 916. The user can then select a “open shifts” menu item 918 that overlays the user's open day 920 adjacent to and aligned with the calendar view 912. Thus, the user can easily compare their open days with the unassigned shifts available to them. Referring to FIG. 9F, the user can also select an “open shifts” menu item 922 using the filter 914 thereby simplifying the calendar view that is provided to the user, as shown in FIG. 9G. Thus, in the view shown in FIG. 9G, only the open shifts for the hospital are shown in aligned with the open dates for the user.” A user can select an “open shifts” menu item to filter a calendar view that displays shifts (‘custom data fields’). By selecting the menu item to filter the calendar view, only unassigned shifts are presented to the user, therefore presenting a different view of the calendar view (calendar data structure). Since a menu item changes how the shifts of the calendar view are presented, a menu item therefore defines which shifts are visible in a filtered view of the calendar view (and therefore selecting (or not selecting) an “open shifts” menu item are filtering rules.). Before the effective filing date of the claimed invention, it would have been obvious to a person of ordinary skill in the art to modify the combined scheduling system of Woulfe / Mitra with the filtering technique disclosed by Taheri to filter a calendar view. By filtering a calendar view, a user can change the way data is presented in a calendar and visually hide data that is not relevant, thereby simplifying how calendar data is presented and optimizing user efficiency. Regarding Claims 8, 16 and 20, the combined scheduling system of Woulfe / Mitra / Taheri teaches: The system recited in claim 7, wherein the computing platform is further configurable to cause: defining the plurality of filtering rules based, at least in part, on an input received from user (Taheri [0093] “the user can also select an “open shifts” menu item 922 using the filter 914 thereby simplifying the calendar view that is provided to the user, as shown in FIG. 9G. Thus, in the view shown in FIG. 9G, only the open shifts for the hospital are shown in aligned with the open dates for the user.” A user can select an “open shifts” menu item to filter a calendar view that displays shifts. By selecting the menu item to filter the calendar view, only unassigned shifts are presented to the user. Since a menu item changes how the shifts of the calendar view are presented, a menu item therefore defines which shifts are visible in a filtered view of the calendar view (and therefore selecting (or not selecting) an “open shifts” menu item are filtering rules that are defined (determined) by user selection (input).); defining the plurality of mapping rules to identify a plurality of syncing relationships (Woulfe [0106] “the request processing module 122 determines that at least one of the activities in the schedule has been updated within one of the first and second software applications or the schedule, and synchronizes, based on the determining, the at least one updated activity in the other one of the one software application and the schedule. For example, the at least one updated activity includes adding a new activity (e.g., check personal emails), deleting one of the one or more activities …, one or more scheduling time changes” [0042] “the system can synchronize the schedule with Outlook calendar or any other calendar system by adding/removing scheduled items to/from the user's calendar.” When an activity’s time changes, start/end time fields (‘custom data fields’) are updated (see Figure 2A), or when an activity is deleted, all the activity’s fields (start time, end time, title, see Figure 2A) are deleted. When an activity is updated or deleted, these changes are synchronized to Outlook calendar. Synchronizing activity fields in a generated schedule to corresponding activity fields in Outlook calendar are ‘mapping rules’, and each synchronization between an activity field in a generated schedule and an activity field in Outlook calendar represents a ‘syncing relationship’.); and defining the operational criteria to specify one or more function calls to an additional on-demand application (Woulfe [0042] “The schedule can be selectively synchronized to some of the user data source(s) based on user preferences. For instance, the system can synchronize the schedule with Outlook calendar or any other calendar system by adding/removing scheduled items to/from the user's calendar.” Synchronizing to Outlook calendar is only performed when activity fields in a generated schedule are updated (see [0106]), therefore this synchronizing rule represents ‘operational criteria’ (the criteria being whether an update is performed). To synchronize a generated schedule with Outlook calendar (‘additional on-demand application’) when an update occurs, an API call (function call) must be made to Outlook calendar to perform the synchronization that updates data in Outlook calendar, therefore defining operational criteria to specify function calls.). Before the effective filing date of the claimed invention, it would have been obvious to a person of ordinary skill in the art to modify the combined scheduling system of Woulfe / Mitra / Taheri with the filtering technique disclosed by Taheri to filter a calendar view. By filtering a calendar view, a user can change the way data is presented in a calendar and visually hide data that is not relevant, thereby simplifying how calendar data is presented and optimizing user efficiency. Regarding Claim 9, the combined scheduling system of Woulfe / Mitra / Taheri teaches: The system recited in claim 8, wherein the one or more function calls are configured to trigger a process flow hosted by the additional on-demand application ([0042] “the system can synchronize the schedule with Outlook calendar or any other calendar system by adding/removing scheduled items to/from the user's calendar.” To synchronize a generated schedule with Outlook calendar (‘additional on-demand application’) when an update occurs, an API call (function call) must be made to Outlook calendar to perform (‘trigger’) the synchronization (‘process flow’) that updates data in Outlook calendar.). Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Weiss et al. (US 12040066 B1) teaches training a machine learning model with historical patient data to recommend new times for patients to take medications. New time recommendations cause synchronization to occur between a user’s local database and an electronic database to maintain a patient’s schedule updated across patient devices. Any inquiry concerning this communication or earlier communications from the examiner should be directed to PEDRO J MORALES whose telephone number is (571)272-6106. The examiner can normally be reached 8:30 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, MIRANDA M HUANG can be reached at (571)270-7092. 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. /PEDRO J MORALES/Examiner, Art Unit 2124 /Kevin W Figueroa/Primary Examiner, Art Unit 2124
Read full office action

Prosecution Timeline

Apr 05, 2024
Application Filed
Sep 09, 2026
Non-Final Rejection mailed — §101, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12664036
ANOMALY DETECTION IN COMPUTER SYSTEMS
4y 0m to grant Granted Jun 23, 2026
Patent 12651179
REINFORCEMENT LEARNING MODEL FOR BALANCED UNIT RECOMMENDATION
4y 5m to grant Granted Jun 09, 2026
Patent 12639625
BIAS ADJUSTMENT DEVICE, INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING PROGRAM
4y 1m to grant Granted May 26, 2026
Patent 12591803
SYSTEMS AND METHODS FOR APPLYING MACHINE LEARNING BASED ANOMALY DETECTION IN A CONSTRAINED NETWORK
3y 11m to grant Granted Mar 31, 2026
Patent 12530412
SEARCH-QUERY SUGGESTIONS USING REINFORCEMENT LEARNING
4y 2m to grant Granted Jan 20, 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
62%
Grant Probability
99%
With Interview (+55.6%)
3y 8m (~1y 2m remaining)
Median Time to Grant
Low
PTA Risk
Based on 13 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