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 . This Office Action is responsive to the communications filed on 29 May 2026. Claims 1-8 and 10-20 are pending.
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 26 January 2026 has been entered.
Claim Objections
Claim 1 is objected to because of the following informalities: There is a preamble typographical error “… the computer-implemented comprising …” at line 2 of claim 1. Appropriate correction is required.
Claim 9 is objected to because of the following informalities: Claim 9 was cancelled in the amendments filed on 08/19/2025. See MPEP 2272 After Final Practice [R-07.2015], II. Action by Examiner: “It should be kept in mind that a patent owner cannot, as a matter of right, amend any finally rejected claims, add new claims after a final rejection, or reinstate previously canceled claims.” Appropriate correction is required.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(d):
(d) REFERENCE IN DEPENDENT FORMS.—Subject to subsection (e), a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers.
The following is a quotation of pre-AIA 35 U.S.C. 112, fourth paragraph:
Subject to the following paragraph [i.e., the fifth paragraph of pre-AIA 35 U.S.C. 112], a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers.
Claim 2 is rejected under 35 U.S.C. 112(d) or pre-AIA 35 U.S.C. 112, 4th paragraph, as being of improper dependent form for failing to further limit the subject matter of the claim upon which it depends, or for failing to include all the limitations of the claim upon which it depends. Claim 2 explicitly recites: “wherein the monitoring is accomplished via a software robot embedded in the browser.” Claim 1 contains the limitation: “…. wherein the monitoring is performed by an interaction monitor that utilizes a software robot embedded in the browser.“ Therefore, claim 2adds no new narrowing limitations and is entirely redundant. Applicant may cancel the claim(s), amend the claim(s) to place the claim(s) in proper dependent form, rewrite the claim(s) in independent form, or present a sufficient showing that the dependent claim(s) complies with the statutory requirements.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-3,7,11-12,14 and 18-19 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Marinovici et al. (Hereinafter, Marinovici, US 2023/0311322 A1).
Per claim 1, Marinovici discloses a computer-implemented method for providing a state-independent user interface (e.g., target UI 37) in a browser (Abstract; paragraph [0004], “According to one aspect, a method comprises employing at least one hardware processor of a computer system to execute a robotic process automation (RPA) driver and a bridge module …”; paragraph [0059]; Examiner’s Note: Marinovici teaches a robotic process automation (RPA) driver and a bridge module decoupled from a browser application as shown in Fig. 6), the computer-implemented comprising:
monitoring, during a user interaction session, user actions performed with a standard user interface of client software presented in the browser (e.g., steps 502-504 as shown in Fig. 5; paragraph [0092], “ FIG. 14 shows an exemplary sequence of steps carried out by RPA driver 25 in a robot design embodiment of the present invention. Driver 25 may be configured to listen for user input events (steps 502-504), such as movements of the pointer, mouse clicks, key presses, and input gestures such as tapping, pinching, etc. …“) , wherein the monitoring is performed by an interaction monitor that utilizes a software robot embedded in the browser (paragraph [0096]; paragraph [0104]; Examiner’s Note: Marinovici teaches a browser-embedded RPA agent that monitors user actions in a browser-hosted application. );
storing, in an interaction database, interaction session data representing the monitored user actions (paragraph [0040]; paragraphs [0045-0046]; Examiner’s Note: Marinovici teaches logging user actions.), wherein storing the interaction session data comprises excluding at least one security-related action from being stored (paragraph [0034]; paragraph [0083]; paragraphs [0091-0095]; Examiner’s Note: Marinovici teaches filtering sensitive fields containing passwords, secure inputs.);
determining a current software state of the client software (paragraph [0046], “ …Another exemplary category of data stored and/or retrieved by database server 16 includes data characterizing the current state of each executing robot …“), wherein in a non-fully functional state the standard user interface presents fewer selection options than in a fully functional state (paragraphs [0076], [0093], [0095], [0102-0104]; Examiner’s Note: Marinovici teaches checking target UI DOM elements and application readiness states );
constructing and displaying, in the browser, an asynchronous user interface that is separate from the standard user interface and that presents, irrespective of the current software state, a set of selection options including at least one selection option that is unavailable in the non-fully functional state of the standard user interface(e.g., RPA interface 60 as shown in Fig. 6; Abstract; paragraphs [0004] and [0005] , “… The RPA driver executes outside of the web browser application and is configured to detect a user input indicating a target element of a target user interface (UI) exposed on the computer system, and to transmit a set of target identification data characterizing the target element to the web browser application via the communication channel. The web browser application exposes a robot design interface configured to output a specification of an RPA robot configured to perform an RPA activity on the target element. “; paragraph[0031]; paragraph [0036]; paragraph [0053 ], “ …Some embodiments then use agent browser window 36 to expose an RPA interface 60 enabling the user to perform various RPA operations, such as designing an RPA robot and executing an RPA robot, among others. Such use cases will be explored separately below. “; paragraphs [0070-0075]; Examiner’s Note: Marinovici discloses an RPA Interface 60 to construct an asynchronous user interface for a target application. The robot design UI is rendered in the browser as a separate interface layer. );
receiving, via the asynchronous user interface, a user selection of a selection option from the set of selection options (paragraphs [0080-0087];User selects an automation action );
responsive to the user selection, generating and storing a task completion command that identifies a first sequence to accomplish a task corresponding to the selection option( paragraph [0056]; Fig. 6 shows sequence generation from monitored actions.), wherein the first sequence is learned from interaction session data by recording a happy path (paragraphs [0090-0096]; Workflow learning captures transition between UI states, including returning to prior states after completing an action. ) comprising:
starting at a previous state, transitioning to a post-selection state in response to the selection option, and returning to the previous state (paragraph [0102], “FIG. 17 shows an exemplary sequence of steps carried out by RPA agent 31 in a robot execution embodiment of the present invention. In response to receiving RPA package 40 in a step 702, in a step 704 agent 31 may parse the respective specification to identify activities to be executed. Then, a sequence of steps 706-708 may cycle through all activities of the respective workflow “; Fig. 17 depicts cyclic navigation patterns during workflow capture …” );
attempting, by the software robot, to perform the first sequence via the standard user interface of the client software (e.g., Step 602 as shown in Fig. 16; paragraph [0101], “… In a step 602, module 34 may collaborate with RPA agent 31 to set up communication channel 38, for instance as described above in relation to step 302 in FIG. 12 ... “);
determining whether the current software state allows performance of the first sequence, and, when the current software state does not allow performance, retaining the task completion command and iteratively retrying the attempting in response to detecting a state change (e.g., steps 612-614-616 as shown in Fig. 16; paragraph [0101], “… Once communication is established, module 34 may relay communications between driver(s) 25 and agent 31 (steps 612-614-616). “; paragraph [0102], “FIG. 17 shows an exemplary sequence of steps carried out by RPA agent 31 in a robot execution embodiment of the present invention. In response to receiving RPA package 40 in a step 702, in a step 704 agent 31 may parse the respective specification to identify activities to be executed … “); and
upon determining that the current software state allows performance of the first sequence, autonomously performing, by the software robot, the first sequence via the standard user interface to complete the task. (paragraph [0102], “…Then, a sequence of steps 706-708 may cycle through all activities of the respective workflow. For each RPA activity, a step 710 may transmit an execution command to RPA driver 25 via channel 38, the command comprising an indicator of a type of activity (tap, fill in, etc.) and further comprising target identification data characterizing a target/operand of the respective activity …. “)
Per claim 2, Marinovici discloses the computer-implemented method of claim 1, wherein the monitoring is accomplished via a software robot embedded in the browser (Marinovici, paragraphs [0004-0006]; paragraph [0037]; paragraph [0049]; paragraph [0054]).
Per claim 3, Marinovici discloses the computer-implemented method of claim 1, a responsive action upon having received the selection option from [[of the selection option is accomplished via a software robot(Marinovici, paragraph 0089], “FIG. 13 shows an exemplary sequence of steps carried out by RPA agent 31 in a robot design embodiment of the present invention. In response to exposing a robot design interface within agent browser window 36 (see e.g., exemplary RPA interface 60 in FIG. 8 and associated description above), a step 402 may receive a user input selecting an RPA activity for execution by the robot. For instance, the user may select a type of RPA activity (e.g., type into a form field) from an activity menu of interface 60. In response, a step 404 may expose an activity configuration interface such as the exemplary interface 54c illustrated in FIG. 8 (description above).”).
Per claim 7, Marinovici discloses the computer-implemented method of claim 1, further comprising: monitoring the browser for one or more actions (e.g., steps 502-504 as shown in Fig. 5; paragraph [0092], “ FIG. 14 shows an exemplary sequence of steps carried out by RPA driver 25 in a robot design embodiment of the present invention. Driver 25 may be configured to listen for user input events (steps 502-504), such as movements of the pointer, mouse clicks, key presses, and input gestures such as tapping, pinching, etc. …“) and storing the one or more actions detected during the monitoring as interaction data on the interaction database browser(paragraph [0034]; paragraph [0083]; paragraphs [0091-0095]; Examiner’s Note: Marinovici teaches filtering sensitive fields containing passwords, secure inputs.), wherein the one or more actions comprises at least one of selecting a standard interface element present in the browser, entering text into a box, or pressing one or more keys (Marinovici, paragraph [0029]; paragraph [0062]; paragraph [0063], “ … In one example wherein the selected activity comprises a mouse click, the target element may be a button, a menu item, a hyperlink, etc. In another example wherein the selected activity comprises filling out a form, the target element may be the specific form field that should receive the input. The activity configuration interface may enable the user to indicate the target element by way of a target configuration control 66 as illustrated in FIG. 9. Clicking or tapping control 66 may trigger the display of a target configuration interface and/or initiate a target acquisition procedure. Some embodiments may expose a menu/list of candidate targets for selection ... “; Examiner’s Note: Marinovici discloses form-filling and clicking buttons).
Per claim 11, Marinovici discloses a computer program product (e.g., Fig. 19) comprising one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions executable by a processor to cause the processor to perform operations (paragraph [0110]) for providing a state-independent user interface (e.g., target UI 37) in a browser (Abstract; paragraph [0004], “According to one aspect, a method comprises employing at least one hardware processor of a computer system to execute a robotic process automation (RPA) driver and a bridge module …”; paragraph [0059]; Examiner’s Note: Marinovici teaches a robotic process automation (RPA) driver and a bridge module decoupled from a browser application as shown in Fig. 6)comprising:
monitoring, during a user interaction session, user actions performed with a standard user interface of client software presented in the browser (e.g., steps 502-504 as shown in Fig. 5; paragraph [0092], “ FIG. 14 shows an exemplary sequence of steps carried out by RPA driver 25 in a robot design embodiment of the present invention. Driver 25 may be configured to listen for user input events (steps 502-504), such as movements of the pointer, mouse clicks, key presses, and input gestures such as tapping, pinching, etc. …“) , wherein the monitoring is performed by an interaction monitor that utilizes a software robot embedded in the browser (paragraph [0096]; paragraph [0104]; Examiner’s Note: Marinovici teaches a browser-embedded RPA agent that monitors user actions in a browser-hosted application. );
storing, in an interaction database, interaction session data representing the monitored user actions (paragraph [0040]; paragraphs [0045-0046]; Examiner’s Note: Marinovici teaches logging user actions.), wherein storing the interaction session data comprises excluding at least one security-related action from being stored (paragraph [0034]; paragraph [0083]; paragraphs [0091-0095]; Examiner’s Note: Marinovici teaches filtering sensitive fields containing passwords, secure inputs.);
determining a current software state of the client software (paragraph [0046], “ …Another exemplary category of data stored and/or retrieved by database server 16 includes data characterizing the current state of each executing robot …“), wherein in a non-fully functional state the standard user interface presents fewer selection options than in a fully functional state (paragraphs [0076], [0093], [0095], [0102-0104]; Examiner’s Note: Marinovici teaches checking target UI DOM elements and application readiness states );
constructing and displaying, in the browser, an asynchronous user interface that is separate from the standard user interface and that presents, irrespective of the current software state, a set of selection options including at least one selection option that is unavailable in the non-fully functional state of the standard user interface(e.g., RPA interface 60 as shown in Fig. 6; Abstract; paragraphs [0004] and [0005] , “… The RPA driver executes outside of the web browser application and is configured to detect a user input indicating a target element of a target user interface (UI) exposed on the computer system, and to transmit a set of target identification data characterizing the target element to the web browser application via the communication channel. The web browser application exposes a robot design interface configured to output a specification of an RPA robot configured to perform an RPA activity on the target element. “; paragraph[0031]; paragraph [0036]; paragraph [0053 ], “ …Some embodiments then use agent browser window 36 to expose an RPA interface 60 enabling the user to perform various RPA operations, such as designing an RPA robot and executing an RPA robot, among others. Such use cases will be explored separately below. “; paragraphs [0070-0075]; Examiner’s Note: Marinovici discloses an RPA Interface 60 to construct an asynchronous user interface for a target application. The robot design UI is rendered in the browser as a separate interface layer. );
receiving, via the asynchronous user interface, a user selection of a selection option from the set of selection options (paragraphs [0080-0087];User selects an automation action );
responsive to the user selection, generating and storing a task completion command that identifies a first sequence to accomplish a task corresponding to the selection option( paragraph [0056]; Fig. 6 shows sequence generation from monitored actions.), wherein the first sequence is learned from interaction session data by recording a happy path (paragraphs [0090-0096]; Workflow learning captures transition between UI states, including returning to prior states after completing an action. ) comprising:
starting at a previous state, transitioning to a post-selection state in response to the selection option, and returning to the previous state (paragraph [0102], “FIG. 17 shows an exemplary sequence of steps carried out by RPA agent 31 in a robot execution embodiment of the present invention. In response to receiving RPA package 40 in a step 702, in a step 704 agent 31 may parse the respective specification to identify activities to be executed. Then, a sequence of steps 706-708 may cycle through all activities of the respective workflow “; Fig. 17 depicts cyclic navigation patterns during workflow capture …” );
attempting, by the software robot, to perform the first sequence via the standard user interface of the client software (e.g., Step 602 as shown in Fig. 16; paragraph [0101], “… In a step 602, module 34 may collaborate with RPA agent 31 to set up communication channel 38, for instance as described above in relation to step 302 in FIG. 12 ... “);
determining whether the current software state allows performance of the first sequence, and, when the current software state does not allow performance, retaining the task completion command and iteratively retrying the attempting in response to detecting a state change (e.g., steps 612-614-616 as shown in Fig. 16; paragraph [0101], “… Once communication is established, module 34 may relay communications between driver(s) 25 and agent 31 (steps 612-614-616). “; paragraph [0102], “FIG. 17 shows an exemplary sequence of steps carried out by RPA agent 31 in a robot execution embodiment of the present invention. In response to receiving RPA package 40 in a step 702, in a step 704 agent 31 may parse the respective specification to identify activities to be executed … “); and
upon determining that the current software state allows performance of the first sequence, autonomously performing, by the software robot, the first sequence via the standard user interface to complete the task. (paragraph [0102], “…Then, a sequence of steps 706-708 may cycle through all activities of the respective workflow. For each RPA activity, a step 710 may transmit an execution command to RPA driver 25 via channel 38, the command comprising an indicator of a type of activity (tap, fill in, etc.) and further comprising target identification data characterizing a target/operand of the respective activity …. “)
Per claim 12, Marinovici discloses the computer program product of claim 11, wherein the stored program instructions are stored in a computer readable storage device in a data processing system(paragraph [0110]), and wherein the stored program instructions are transferred over a network from a remote data processing system(Marinovici, paragraph [0084]).
Per claim 14, Marinovici discloses the computer program product of claim 11, wherein the performing the responsive action upon having received the selection of the selection option is accomplished via a software robot(Marinovici, paragraphs [0004-0006]; paragraph [0037]; paragraph [0049]; paragraph [0054]).
Per claim 18, Marinovici discloses a computer system (e.g., environment 10 as shown in Fig. 1) method for providing a state-independent user interface (e.g., target UI 37) in a browser (Abstract; paragraph [0004], “According to one aspect, a method comprises employing at least one hardware processor of a computer system to execute a robotic process automation (RPA) driver and a bridge module …”; paragraph [0059]; Examiner’s Note: Marinovici teaches a robotic process automation (RPA) driver and a bridge module decoupled from a browser application as shown in Fig. 6)comprising a processor and one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media(paragraph [0110]), the program instructions executable by the processor to cause the processor to perform operations comprising:
monitoring, during a user interaction session, user actions performed with a standard user interface of client software presented in the browser (e.g., steps 502-504 as shown in Fig. 5; paragraph [0092], “ FIG. 14 shows an exemplary sequence of steps carried out by RPA driver 25 in a robot design embodiment of the present invention. Driver 25 may be configured to listen for user input events (steps 502-504), such as movements of the pointer, mouse clicks, key presses, and input gestures such as tapping, pinching, etc. …“) , wherein the monitoring is performed by an interaction monitor that utilizes a software robot embedded in the browser (paragraph [0096]; paragraph [0104]; Examiner’s Note: Marinovici teaches a browser-embedded RPA agent that monitors user actions in a browser-hosted application. );
storing, in an interaction database, interaction session data representing the monitored user actions (paragraph [0040]; paragraphs [0045-0046]; Examiner’s Note: Marinovici teaches logging user actions.), wherein storing the interaction session data comprises excluding at least one security-related action from being stored (paragraph [0034]; paragraph [0083]; paragraphs [0091-0095]; Examiner’s Note: Marinovici teaches filtering sensitive fields containing passwords, secure inputs.);
determining a current software state of the client software (paragraph [0046], “ …Another exemplary category of data stored and/or retrieved by database server 16 includes data characterizing the current state of each executing robot …“), wherein in a non-fully functional state the standard user interface presents fewer selection options than in a fully functional state (paragraphs [0076], [0093], [0095], [0102-0104]; Examiner’s Note: Marinovici teaches checking target UI DOM elements and application readiness states );
constructing and displaying, in the browser, an asynchronous user interface that is separate from the standard user interface and that presents, irrespective of the current software state, a set of selection options including at least one selection option that is unavailable in the non-fully functional state of the standard user interface(e.g., RPA interface 60 as shown in Fig. 6; Abstract; paragraphs [0004] and [0005] , “… The RPA driver executes outside of the web browser application and is configured to detect a user input indicating a target element of a target user interface (UI) exposed on the computer system, and to transmit a set of target identification data characterizing the target element to the web browser application via the communication channel. The web browser application exposes a robot design interface configured to output a specification of an RPA robot configured to perform an RPA activity on the target element. “; paragraph[0031]; paragraph [0036]; paragraph [0053 ], “ …Some embodiments then use agent browser window 36 to expose an RPA interface 60 enabling the user to perform various RPA operations, such as designing an RPA robot and executing an RPA robot, among others. Such use cases will be explored separately below. “; paragraphs [0070-0075]; Examiner’s Note: Marinovici discloses an RPA Interface 60 to construct an asynchronous user interface for a target application. The robot design UI is rendered in the browser as a separate interface layer. );
receiving, via the asynchronous user interface, a user selection of a selection option from the set of selection options (paragraphs [0080-0087];User selects an automation action );
responsive to the user selection, generating and storing a task completion command that identifies a first sequence to accomplish a task corresponding to the selection option( paragraph [0056]; Fig. 6 shows sequence generation from monitored actions.), wherein the first sequence is learned from interaction session data by recording a happy path (paragraphs [0090-0096]; Workflow learning captures transition between UI states, including returning to prior states after completing an action. ) comprising:
starting at a previous state, transitioning to a post-selection state in response to the selection option, and returning to the previous state (paragraph [0102], “FIG. 17 shows an exemplary sequence of steps carried out by RPA agent 31 in a robot execution embodiment of the present invention. In response to receiving RPA package 40 in a step 702, in a step 704 agent 31 may parse the respective specification to identify activities to be executed. Then, a sequence of steps 706-708 may cycle through all activities of the respective workflow “; Fig. 17 depicts cyclic navigation patterns during workflow capture …” );
attempting, by the software robot, to perform the first sequence via the standard user interface of the client software (e.g., Step 602 as shown in Fig. 16; paragraph [0101], “… In a step 602, module 34 may collaborate with RPA agent 31 to set up communication channel 38, for instance as described above in relation to step 302 in FIG. 12 ... “);
determining whether the current software state allows performance of the first sequence, and, when the current software state does not allow performance, retaining the task completion command and iteratively retrying the attempting in response to detecting a state change (e.g., steps 612-614-616 as shown in Fig. 16; paragraph [0101], “… Once communication is established, module 34 may relay communications between driver(s) 25 and agent 31 (steps 612-614-616). “; paragraph [0102], “FIG. 17 shows an exemplary sequence of steps carried out by RPA agent 31 in a robot execution embodiment of the present invention. In response to receiving RPA package 40 in a step 702, in a step 704 agent 31 may parse the respective specification to identify activities to be executed … “); and
upon determining that the current software state allows performance of the first sequence, autonomously performing, by the software robot, the first sequence via the standard user interface to complete the task. (paragraph [0102], “…Then, a sequence of steps 706-708 may cycle through all activities of the respective workflow. For each RPA activity, a step 710 may transmit an execution command to RPA driver 25 via channel 38, the command comprising an indicator of a type of activity (tap, fill in, etc.) and further comprising target identification data characterizing a target/operand of the respective activity …. “)
Per claim 19, Marinovici discloses the computer system of claim 18, wherein the performing the responsive action upon having received a selection of the selection option is accomplished via a software robot. (Marinovici, paragraphs [0004-0006]; paragraph [0037]; paragraph [0049]; paragraph [0054]).
Claims 4-5, 15-16 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Marinovici et al. (Hereinafter, Marinovici, US 2023/0311322 A1) in view of Riva et al. (Hereinafter, Riva, US 2023/0095006 A1).
Per claim 4, Marinovici discloses the computer-implemented method of claim 1, but does not expressly disclose the method as further comprising training a software robot to perform one or more automatic actions to accomplish one or more tasks corresponding to each selection option of the set of selection options.
Riva discloses training a software robot to perform one or more automatic actions to accomplish one or more tasks corresponding to each selection option of the set of selection options (paragraph [0007], “The embodiments disclosed herein are directed to processes and software tools that use machine learning to generate a correct UI script for a query that requests a particular task be performed on a specific website.” ; paragraphs [0129-0130]).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the crawler device of Riva with the robotic process automation of Marinovici for the purpose of providing tools that are adequate at understanding actions on the web at a level needed for today's digital assistants and web automation applications as suggested by Riva (paragraph [0005]).
Per claim 5, Marinovici and Riva disclose the computer-implemented method of claim 4, wherein training the software robot comprises performing a happy path demonstrating a successful accomplishment of each task corresponding to each selection option of the set of selection options (Riva, paragraph [0080]; paragraph [0090]; Examiner’s Note: Riva discloses scoring successful accomplishment of task. ).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the crawler device of Riva with the robotic process automation of Marinovici for the purpose of providing tools that are adequate at understanding actions on the web at a level needed for today's digital assistants and web automation applications as suggested by Riva (paragraph [0005]).
Per claim 15, Marinovici discloses the computer program product of claim 14, but does not expressly disclose the computer program product as further comprising training the software robot to perform one or more automatic actions to accomplish one or more tasks corresponding to each selection option of the set of selection options.
Riva discloses training a software robot to perform one or more automatic actions to accomplish one or more tasks corresponding to each selection option of the set of selection options (paragraph [0007], “The embodiments disclosed herein are directed to processes and software tools that use machine learning to generate a correct UI script for a query that requests a particular task be performed on a specific website.” ; paragraphs [0129-0130]).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the crawler device of Riva with the robotic process automation of Marinovici for the purpose of providing tools that are adequate at understanding actions on the web at a level needed for today's digital assistants and web automation applications as suggested by Riva (paragraph [0005]).
Per claim 16, Marinovici discloses the computer program product claim 14, but does not expressly disclose wherein training the software robot comprises performing a happy path demonstrating a successful accomplishment of each task corresponding to each selection option of the set of selection options.
Riva discloses wherein training the software robot comprises performing a happy path demonstrating a successful accomplishment of each task corresponding to each selection option of the set of selection options(Riva, paragraph [0080]; paragraph [0090]; Examiner’s Note: Riva discloses scoring successful accomplishment of task. ).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the crawler device of Riva with the robotic process automation of Marinovici for the purpose of providing tools that are adequate at understanding actions on the web at a level needed for today's digital assistants and web automation applications as suggested by Riva (paragraph [0005]).
Per claim 20, Marinovici discloses the computer system of claim 19, but does not expressly disclose the computer system as further comprising further comprising training the software robot to perform one or more automatic actions to accomplish one or more tasks corresponding to each selection option of the set of selection options.
Riva discloses training the software robot to perform one or more automatic actions to accomplish one or more tasks corresponding to each selection option of the set of selection options (Riva, paragraph [0080]; paragraph [0090]; Examiner’s Note: Riva discloses scoring successful accomplishment of task. ).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the crawler device of Riva with the robotic process automation of Marinovici and Bhati for the purpose of providing tools that are adequate at understanding actions on the web at a level needed for today's digital assistants and web automation applications as suggested by Riva (paragraph [0005]).
Claims 6 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Marinovici et al. (Hereinafter, Marinovici, US 2023/0311322 A1) in view of Gurikar et al. (Hereinafter, Gurikar, US 2014/0130036 A1).
Per claim 6, Marinovici discloses the computer-implemented method of claim [[1]] 3, but does not expressly disclose wherein performing the responsive action comprises checking a current software status, determining whether the current software status comprises a suitable status, and, upon determination that the current software status comprises the suitable status, performing the responsive action.
Gurikar discloses wherein performing the responsive action comprises checking a current software status(e.g., step 304 as shown in Fig. 3; paragraph [0091];paragraph [0097]; Fig.5; paragraphs [0098-0101]), determining whether the current software status comprises a suitable status, and, upon determination that the current software status comprises the suitable status, performing the responsive action(Abstract; paragraph [0011]).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the automated deployment of Gurikar with the robotic process automation of Marinovici for the purpose of improving handling of post deployment issues as suggested by Gurikar (paragraph [0007]).
Per claim 17, Marinovici discloses the computer program product claim 11, but does not expressly disclose wherein performing the responsive action comprises checking a current software status, determining whether the current software status comprises a suitable status, and, upon determination that the current software status comprises the suitable status, performing the responsive action.
Gurikar discloses wherein performing the responsive action comprises checking a current software status(e.g., step 304 as shown in Fig. 3; paragraph [0091];paragraph [0097]; Fig.5; paragraphs [0098-0101]), determining whether the current software status comprises a suitable status, and, upon determination that the current software status comprises the suitable status, performing the responsive action(Abstract; paragraph [0011]).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the automated deployment of Gurikar with the robotic process automation of Marinovici for the purpose of improving handling of post deployment issues as suggested by Gurikar (paragraph [0007]).
Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Marinovici et al. (Hereinafter, Marinovici, US 2023/0311322 A1) in view of Worthington (US 2010/0235765 A1).
Per claim 8, Marinovici and Bhati disclose the computer-implemented method of claim 1, but does not disclose the method as further comprising constructing a temporary DOM structure, the DOM structure comprising a set of DOM elements corresponding to the set of selection options of the asynchronous user interface, and playing audio corresponding to each of [[the]] DOM elements from the set of DOM elements.
Worthington discloses constructing a temporary DOM structure, the DOM structure comprising a set of DOM elements corresponding to the set of selection options of the asynchronous user interface(e.g., step #1 to step #2 as shown in Fig. 1), and playing audio corresponding to each of the DOM elements from the set of DOM elements (e.g., step #3 as shown in Fig. 1; paragraph [0107]).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the DOM-based media viewer of Worthington with the robotic process automation of Marinovici and Bhati for the purpose of allowing a user to visit a web address and view the content on the web page more easily.
Claim 10 is rejected under 35 U.S.C. 103 as being unpatentable over Marinovici et al. (Hereinafter, Marinovici, US 2023/0311322 A1) in view of Ben-Natan (US 7,437,362 B1).
Per claim 10, Marinovici disclose the computer-implemented method of claim 1, but does not disclose the method as further comprising excluding one or more security related actions from being stored in the interaction database.
Ben-Natan discloses excluding one or more security related actions from being stored in the interaction database.(e.g., step 104 as shown in Fig. 2; Abstract; column 7, lines 48-63).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the nonintrusive database security of Ben-Natam with the robotic process automation of Marinovici for the purpose of improving database security techniques as suggested by Ben-Natan (column 1, lines 5-40).
Claim 13 is rejected under 35 U.S.C. 103 as being unpatentable over Marinovici et al. (Hereinafter, Marinovici, US 2023/0311322 A1) in view of Beaty et al. (Hereinafter, Beaty US 2014/0136689 A1).
Per claim 13, Marinovici and Bhati disclose the computer program product of claim 11, wherein the stored program instructions are stored in a computer readable storage device in a server data processing system (paragraph [0006]; paragraph [0036]; paragraph [0043]), and but does not expressly disclose wherein the stored program instructions are downloaded in response to a request over a network to a remote data processing system for use in a computer readable storage device associated with the remote data processing system, further comprising: program instructions to meter use of the program instructions associated with the request; and program instructions to generate an invoice based on the metered use.
Beaty discloses wherein the stored program instructions are downloaded in response to a request over a network to a remote data processing system for use in a computer readable storage device associated with the remote data processing system(paragraph [0130]), further comprising: program instructions to meter use of the program instructions associated with the request; and program instructions to generate an invoice based on the metered use(paragraph [0009]; paragraph [0081-0082]).
It would have been obvious for a person of ordinary skill in the art before the effective filing date of the claimed invention to use the secure metering and accounting of Beaty with the robotic process automation of Marinovici and Bhati for the purpose of validating reported use of the computing resources by a service as suggested by Beaty (paragraph [0007]).
Response to Arguments
Applicant's arguments filed 1-8 and 10-20 have been fully considered but they are not persuasive.
Applicant argues that Marinovici in view of Bhati fail to teach or suggest, amended claim 1 (claims 11 and 18 have been amended with similar language to claim 1), " constructing and displaying, in the browser, an asynchronous user interface that
is separate from the standard user interface and that presents, irrespective of the current software state, a full list of selection options including at least one selection option that is unavailable in the non-fully functional state of the standard user interface;" and "receiving, via the asynchronous user interface, a user selection of a selection option of the full list of selection options; responsive to the user selection, generating and storing a task completion command that identifies a first sequence to accomplish a task corresponding to the selected selection option, wherein the first sequence is learned from interaction session data by recording a happy path comprising: starting at a previous state, transitioning to a post-selection state in response to the selected selection option, and returning to the previous state … "
Examiner disagrees as discussed above in the rejections above. Therefore, claim 1 is not allowable.
Claims 11 and 18 have been amended to include limitations similar of those discussed above in connection with claim 1 and, therefore are not patentable for the same reason as claim 1.
The dependent claims depend from unpatentable independent claims are unpatentable by virtue of their dependence on rejected base claims.
Therefore, Examiner maintains the rejection of claims 1-8 and 10-20.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Marinovici et al. (US 11,736,556 B1) - In some embodiments, a robotic process automation (RPA) agent executing within a browser window/tab interacts with an RPA driver executing outside of the browser
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 DARRIN HOPE whose telephone number is (571)270-5079. The examiner can normally be reached Mon-Thr - 6:45-4:15, Fri - 6:45-3:15, Alt. Fri Off.
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, Stephen S Hong can be reached at (571)272-4124. 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.
DARRIN HOPE
Examiner
Art Unit 2178
/STEPHEN S HONG/Supervisory Patent Examiner, Art Unit 2178