IP Library › Granted Patent US 12,353,857
Granted Patent B2
US 12,353,857 · App. 18/498,247 · Granted Jul 8, 2025

User interface (UI) descriptors, UI object libraries, UI object repositories, and UI object browsers for robotic process automation

Inventor: Mircea Grigore (Bucharest, RO)
Assignee: UiPath, Inc.
G06F8/38G06F8/34G06F9/451
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,353,857
App. No.
18/498,247
Granted
Jul 8, 2025
Kind
B2
Abstract

User interface (UI) object descriptors, UI object libraries, UI object repositories, and UI object browsers for robotic process automation (RPA) are disclosed. A UI object browser may be used for managing, reusing, and increasing the reliability of UI descriptors in a project. UI descriptors may be added to UI object libraries and be published or republished as UI object libraries for global reuse in a UI object repository. The UI object browser, UI object libraries, and UI object repository may facilitate reusability of UI element identification frameworks and derivatives thereof.

Claims (58)

1. A non-transitory computer-readable medium storing a computer program, the computer program configured to cause at least one processor to:

scan a set of projects in a user interface (UI) object repository for one or more robotic process automation (RPA) processes that are using one or more UI descriptors that belong to an application;

detect the one or more RPA processes in the scanned projects that are using the one or more UI descriptors referenced in one or more respective activities of an RPA workflow; and

automatically update at least one of the one or more UI descriptors in the RPA workflows of the one or more detected RPA processes with one or more respective UI descriptors that belong to the application and another application version, wherein

the RPA workflow comprises a plurality of activities that comprise the one or more activities, and

the activities are a set of steps developed in the workflow.

2. The non-transitory computer-readable medium of claim 1 , wherein the computer program is further configured to cause the at least one processor to:

extract at least one UI descriptor from the RPA workflow; and

add the extracted at least one UI descriptor to a structured schema that groups the one or more UI descriptors by UI applications, screens, and graphical elements of the UI.

3. The non-transitory computer-readable medium of claim 1 , wherein

the one or more UI descriptors identify respective graphical elements in the UI for the respective activities in the RPA workflow at runtime,

the UI object repository comprises a plurality of UI descriptors corresponding to one or more screens from multiple application versions of an application, and

the plurality of UI descriptors comprise a UI element selector, an anchor selector, a computer vision (CV) descriptor, a unified target descriptor, a screen image capture, a graphical element image capture, or any combination thereof.

4. The non-transitory computer-readable medium of claim 1 , wherein the one or more UI descriptors are called via one or more web services.

5. The non-transitory computer-readable medium of claim 1 , wherein the RPA workflow comprises a selector-based identification activity, a computer vision (CV)-based identification activity, a unified target identification activity, an image matching identification activity, a selector and optical character recognition (OCR)-based identification activity, or a combination thereof.

6. The non-transitory computer-readable medium of claim 1 , wherein

the UI object repository comprises one or more UI object libraries, and

at least one of the one or more UI object libraries is an encapsulation of UI descriptors grouped by applications, application versions, and screens.

7. The non-transitory computer-readable medium of claim 1 , wherein an application shown in the UI is a web application and the one or more UI descriptors comprise HyperText Markup Language (HTML) paths to the respective graphical elements for the one or more corresponding UI descriptors.

8. A computing system, comprising:

memory storing computer program instructions; and

at least one processor configured to execute the computer program instructions, wherein the computer program instructions are configured to cause the at least one processor to:

scan a set of projects in a user interface (UI) object repository for one or more robotic process automation (RPA) processes that are using one or more UI descriptors that belong to an application;

detect the one or more RPA processes in the scanned projects that are using the one or more UI descriptors referenced in one or more respective activities of an RPA workflow; and

automatically update at least one of the one or more UI descriptors in the RPA workflows of the one or more detected RPA processes with one or more respective UI descriptors that belong to the application and another application version, wherein

the RPA workflow comprises a plurality of activities that comprise the one or more activities, and

the activities are a set of steps developed in the workflow.

9. The computing system of claim 8 , wherein the computer program instructions are further configured to cause the at least one processor to:

extract at least one UI descriptor from the RPA workflow; and

add the extracted at least one UI descriptor to a structured schema that groups the one or more UI descriptors by UI applications, screens, and graphical elements of the UI.

10. The computing system of claim 8 , wherein

the one or more UI descriptors identify respective graphical elements in the UI for the respective activities in the RPA workflow at runtime,

the UI object repository comprises a plurality of UI descriptors corresponding to one or more screens from multiple application versions of an application, and

the plurality of UI descriptors comprise a UI element selector, an anchor selector, a computer vision (CV) descriptor, a unified target descriptor, a screen image capture, a graphical element image capture, or any combination thereof.

11. The computing system of claim 8 , wherein the one or more UI descriptors are called via one or more web services.

12. The computing system of claim 8 , wherein the RPA workflow comprises a selector-based identification activity, a computer vision (CV)-based identification activity, a unified target identification activity, an image matching identification activity, a selector and optical character recognition (OCR)-based identification activity, or a combination thereof.

13. The computing system of claim 8 , wherein

the UI object repository comprises one or more UI object libraries, and

at least one of the one or more UI object libraries is an encapsulation of UI descriptors grouped by applications, application versions, and screens.

14. The computing system of claim 8 , wherein an application shown in the UI is a web application and the one or more UI descriptors comprise HyperText Markup Language (HTML) paths to the respective graphical elements for the one or more corresponding UI descriptors.

15. A computer-implemented method, comprising:

scanning a set of projects in a user interface (UI) object repository for one or more robotic process automation (RPA) processes that are using one or more UI descriptors that belong to an application, by a computing system;

detecting the one or more RPA processes in the scanned projects that are using the one or more UI descriptors referenced in one or more respective activities of an RPA workflow, by the computing system; and

automatically updating at least one of the one or more UI descriptors in the RPA workflows of the one or more detected RPA processes with one or more respective UI descriptors that belong to the application and another application version, by the computing system, wherein

the one or more UI descriptors identify respective graphical elements in the UI for the respective activities in the RPA workflow at runtime,

the UI object repository comprises a plurality of UI descriptors corresponding to one or more screens from multiple application versions of an application,

the plurality of UI descriptors comprise a UI element selector, an anchor selector, a computer vision (CV) descriptor, a unified target descriptor, a screen image capture, a graphical element image capture, or any combination thereof,

the RPA workflow comprises a plurality of activities that comprise the one or more activities, and

the activities are a set of steps developed in the workflow.

16. The computer-implemented method of claim 15 , further comprising:

extracting at least one UI descriptor from the RPA workflow, by the computing system; and

adding the extracted at least one UI descriptor, by the computing system, to a structured schema that groups the one or more UI descriptors by UI applications, screens, and graphical elements of the UI.

17. The computer-implemented method of claim 15 , wherein the one or more UI descriptors are called via one or more web services.

18. The computer-implemented method of claim 15 , wherein the RPA workflow comprises a selector-based identification activity, a computer vision (CV)-based identification activity, a unified target identification activity, an image matching identification activity, a selector and optical character recognition (OCR)-based identification activity, or a combination thereof.

19. The computer-implemented method of claim 15 , wherein

the UI object repository comprises one or more UI object libraries, and

at least one of the one or more UI object libraries is an encapsulation of UI descriptors grouped by applications, application versions, and screens.

20. The computer-implemented method of claim 15 , wherein an application shown in the UI is a web application and the one or more UI descriptors comprise HyperText Markup Language (HTML) paths to the respective graphical elements for the one or more corresponding UI descriptors.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2023
From: GRIGORE, MIRCEA
To: UIPATH, INC.
Reel/Frame 065402/0145 →
Continuity (3)
Continuation 16941758 · Jul 29, 2020
Continuation 16922289 · Jul 7, 2020
Related Publication 20240061660A1 · Feb 22, 2024
References Cited (57)
US 8819068B1 · Knote et al. · 2014 [cited by applicant]
US 9555544B2 · Bataller et al. · 2017 [cited by applicant]
US 10620975B1 · Zohar et al. · 2020 [cited by applicant]
US 10654166B1 · Hall · 2020 [cited by applicant]
US 20070201654A1 · Shenfield · 2007 [cited by applicant]
US 20100223325A1 · Wendker et al. · 2010 [cited by applicant]
US 20110214107A1 · Barmeir · 2011 [cited by examiner]
US 20110321008A1 · Jhoney et al. · 2011 [cited by applicant]
US 20120124495A1 · Amichai · 2012 [cited by examiner]
US 20120173998A1 · Chaturvedi et al. · 2012 [cited by applicant]
US 20140250386A1 · Schick · 2014 [cited by applicant]
US 20150067664A1 · Ligman et al. · 2015 [cited by applicant]
US 20160034441A1 · Nguyen et al. · 2016 [cited by applicant]
US 20170060368A1 · Kochura · 2017 [cited by applicant]
US 20180165264A1 · Venkataraman · 2018 [cited by examiner]
US 20180217722A1 · Venkataraman et al. · 2018 [cited by applicant]
US 20180370029A1 · Hall et al. · 2018 [cited by applicant]
US 20190180746A1 · Diwan et al. · 2019 [cited by applicant]
US 20190303269A1 · Arieli · 2019 [cited by applicant]
US 20190340224A1 · Akhoury · 2019 [cited by examiner]
US 20200050983A1 · Balasubramanian et al. · 2020 [cited by applicant]
US 20200073686A1 · Hanke · 2020 [cited by examiner]
US 20200073687A1 · Karoliwal · 2020 [cited by examiner]
US 20200401431A1 · Rashid · 2020 [cited by examiner]
US 20210026594A1 · Kessler et al. · 2021 [cited by applicant]
US 20210132757A1 · Golub · 2021 [cited by examiner]
US 20210333983A1 · Singh · 2021 [cited by examiner]
CN 1661555A · 2005 [cited by applicant]
CN 104423969A · 2015 [cited by applicant]
CN 109325203A · 2019 [cited by applicant]
CN 110892375A · 2020 [cited by applicant]
EP 3112965A1 · 2017 [cited by applicant]
JP 2018535459A · 2018 [cited by applicant]
WO 2016141131 · 2016 [cited by applicant]
Automation Anywhere Object Properties Configuration Page available at https://docs.automationanywhere.com/bundle/enterprise-v11.3/page/enterprise/topics/aae-client/metabots/getting-started/configuring-metabot-screens.ht… [cited by applicant]
David Chappell, “Understanding RPA Scalability—the Blue Prism Example,” available at https://www.blueprism.com/uploads/resources/white-papers/Understanding-RPA-Scalability-The-Blue-Prism-Example-1.0.pdf (2018). [cited by applicant]
Decision on Appeal issued in U.S. Appl. No. 16/922,289 on Apr. 6, 2023. [cited by applicant]
Inflectra Rapise RPA Test Automation Features Page available at https://www.inflectra.com/rapise/highlights/robotic-process-automation.aspx (last accessed May 20, 2020). [cited by applicant]
International Search Report & Written Opinion, issued Apr. 7, 2021, PCT Application No. PCT/US20/52429. [cited by applicant]
International Search Report & Written Opinion, issued Apr. 7, 2021, PCT Application No. PCT/US20/52436. [cited by applicant]
Katalon Spy Web Utility Page available at https://docs.katalon.com/katalon-studio/docs/spy-web-utility.html (last accessed Jul. 27, 2020). [cited by applicant]
Keith D Bloomquist, “Decision on Appeal”, issued May 3, 2023, U.S. Appl. No. 16/941,758. [cited by applicant]
Keith D Bloomquist, “Examiner's Answer”, issued Jan. 24, 2022, U.S. Appl. No. 16/922,289. [cited by applicant]
Keith D Bloomquist, “Examiner's Answer”, issued May 13, 2022, U.S. Appl. No. 16/941,758. [cited by applicant]
Keith D Bloomquist, “Final Office Action”, issued Aug. 6, 2021, U.S. Appl. No. 16/922,289. [cited by applicant]
Keith D Bloomquist, “Final Office Action”, issued Nov. 2, 2021, U.S. Appl. No. 16/941,758. [cited by applicant]
Keith D Bloomquist, “Non-Final Office Action”, issued Feb. 3, 2021, U.S. Appl. No. 16/922,289. [cited by applicant]
Keith D Bloomquist, “Non-Final Office Action”, issued May 25, 2021, U.S. Appl. No. 16/941,758. [cited by applicant]
Keith D Bloomquist, “Notice of Allowance”, issued Jul. 12, 2023, U.S. Appl. No. 16/922,289. [cited by applicant]
Keith D Bloomquist, “Notice of Allowance”, issued Sep. 13, 2023, U.S. Appl. No. 16/941,758. [cited by applicant]
First Office Action Search Report, issued Apr. 27, 2024, CN Patent Application No. 202080104226.X. [cited by applicant]
First Office Action, issued Apr. 27, 2024, CN Patent Application No. 202080104226.X. [cited by applicant]
Office Action, issued Oct. 3, 2024, JP Patent Application No. 2023-501012. [cited by applicant]
Final Notification of Reasons for Refusal, issued Feb. 28, 2025, JP Patent Application No. 2023-501012. [cited by applicant]
Notice to Grant a Patent, issued Feb. 26, 2025, CN Patent Application No. 202080104226.X. [cited by applicant]
Notification of Patent Registration, issued Feb. 26, 2025, CN Patent Application No. 202080104226.X. [cited by applicant]
Yoshioka, “RPA UiPath Introduction”, Japan, Shuwa System Co., Ltd., Jan. 15, 2020, pp. 37 38 42 to 50, 53, 61-66, 104, 165-166, and 205. [cited by applicant]