studio
latest
false
UiPath logo, featuring letters U and I in white

Studio User Guide

Last updated Dec 17, 2024

About Selectors

To automate specific actions in the user interface, you are required to interact with various windows, buttons, drop-down lists and many others. One of the ways in which UI elements can be identified is by using their position on the screen, but this can be unreliable.

To overcome this problem, Studio uses what we call selectors. These store the attributes of a graphical user interface element and its parents, in the shape of an XML fragment.

Most of the times, selectors are automatically generated by Studio and do not require further input from you, especially if the apps you are trying to automate have a static user interface.

However, some software programs have changing layouts and attribute nodes with volatile values, such as some web-apps. Studio cannot predict these changes and, therefore, you might have to manually generate some selectors.

A selector has the following structure:

<node_1/><node_2/>...<node_N/><node_1/><node_2/>...<node_N/>

The last node represents the GUI element that interests you, and all the previous ones represent the parents of that element. <node_1> is usually referred to as a root node, and represents the top window of the app.

Each node has one or more attributes that help you correctly identify a specific level of the selected application.

Each node has the following format: 

<ui_system attr_name_1='attr_value_1' ... attr_name_N='attr_value_N'/><ui_system attr_name_1='attr_value_1' ... attr_name_N='attr_value_N'/>

Every attribute has an assigned value. It is important to pick attributes with a constant value. If the value of an attribute changes each time the app is started, then the selector will not be able to correctly identify the element.

Selectors are displayed in the Properties panel of activities, under Input > Target > Selector. All activities related to graphical elements have this property.



The Selection Options window enables you to select and edit a target. To access this window, in the Workflow Designer panel, click the Options button in the body of an activity and select Indicate target on screen or Edit target.



The Selector Editor window enables you to see the automatically-generated selector and edit it and its attributes. To access this window, use the Ellipsis button next to the Selector field, in the Properties panel.



Option

Description

Validate

The button shows the status of the selector by checking the validity of the selector definition and the visibility of the target element on the screen.

The Validate button has three states:

  • docs image Selector is being validated
  • docs image Valid selector
  • docs image Invalid selector
  • docs image Modified selector, revalidate

The button is correlated with UI Explorer validation states.

Indicate Element

Indicate a new UI element to replace the previous one.

Repair

Enables you to re-indicate the same target UI element and repair the selector. This operation does not completely replace the previous selector. The button is available only when the selector is invalid.

Highlight

Brings the target element in the foreground. The highlight stays on until the option is disabled with a click. The button is enabled only if the selector is valid.

Edit Attributes

Contains all the application components needed to identify the target application (a window, a button etc.). This section is editable.

Edit Selector

Holds the actual selector. This section is editable.

Open in UI Explorer

Launches the UI Explorer. The option is enabled only for valid selectors.

Note: In some situations, when Studio and the targeted application are opened with different elevated privileges, the selector might not work. We recommend to always open both applications with the same privileges.

Supported tags and attributes

The following tables present the compatibility between tags and attributes used to build selectors and the selector capability:

Note: Selectors generated for Java applications which contain multiple WND tags cannot be used with events monitoring.

WND

Attribute

Description

Fuzzy

RegEx

Case-Sensitive

app

The file name of the application containing the UI element.

available

available

available

cls

Class name of the window containing the UI element.

available

available

available

title

The window title of the UI element.

available

available

available

aaname

'Active Accessibility' name of the UI element.

available

available

available

ctrlname (WinForms)

WinForms name of the UI element.

available

available

available

ctrlid (WinForms)

Win32 control ID of the window containing the UI element.

available

available

available

idx

The instance number of the UI element.

not available

not available

not available

tid

ID of the thread that created the UI element.

not available

not available

not available

pid

Process ID of the application containing the UI element.

not available

not available

not available

isremoteapp

 

not available

not available

not available

aastate

'Active Accessibility' state of the UI element.

available

available

available

sapClient (SAP)

SAP Client selected on the login screen.

available

available

available

sapLanguage (SAP)

SAP Language specified on the login screen.

available

available

available

sapProgram (SAP)

SAP source program that is currently being executed.

available

available

available

sapScreen (SAP)

SAP Screen number currently displayed.

not available

not available

not available

sapSession (SAP)

SAP Session Number, also displayed in SAP GUI statusbar.

not available

not available

not available

sapSysName (SAP)

SAP System Name.

available

available

available

sapSysNumber (SAP)

SAP Application server.

not available

not available

not available

sapSysSessionId (SAP)

All SAP GUI sessions of the same connection are represented on the server with the same SysSessionId.

available

available

available

sapTransaction (SAP)

SAP Transaction that is currently being executed.

available

available

available

sapUser (SAP)

SAP User logged into the system.

available

available

available

HTML

Attribute

Description

Fuzzy

RegEx

Case-Sensitive

url

The URL of the web page containing the current element.

available

available

available

htmlwindowname

 

available

available

available

title

The window title of the element.

available

available

available

class

Class name of the accessible context of the element.

available

available

available

app

The file name of the application containing the UI element

not available

not available

not available

idx

The instance number of the UI element.

not available

not available

not available

pid

Process ID of the application containing the UI element.

not available

not available

not available

tid

ID of the thread that created the UI element.

not available

not available

not available

excludehwnd

 

not available

not available

not available

bsid (Browser Session ID)

 

not available

not available

not available

isremoteapp

 

not available

not available

not available

WEBCTRL

The tag and idx attributes use string values. All other WEBCTRL attributes have dynamic values.

Attribute

Description

Fuzzy

RegEx

Case-Sensitive

tag

HTML tag of the element.

idx

The instance number of the UI element.

available

available

available

aaname

'Active Accessibility' name of the UI element.

available

available

available

name

Name property of the UI element.

available

available

available

id

The unique identifier of the UI element.

available

available

available

parentid

HTML ID attribute of the fist ancestor element that have ID.

available

available

available

class

 

available

available

available

css-selector

 

not available

not available

not available

innertext

The innerText property of a HTML element.

available

available

available

visibleinnertext

 

available

available

available

isleaf

 

available

available

available

parentclass

HTML class attribute of the fist ancestor element that has class.

available

available

available

parentname

HTML name attribute of the fist ancestor UI element that has a name.

available

available

available

src

Specifies the location, or source of the element.

available

available

available

href

The URL of the page the link goes to.

available

available

available

tableCol

Table column number that contains the UI element.

available

available

available

tableRow

Table row number that contains the UI element.

available

available

available

colName

The name of the table column that contains the UI element.

available

available

available

rowName

The name of the table row that contains the UI element.

available

available

available

aria-label

Aria label attribute of the element.

available

available

available

aria-labelledby

 

available

available

available

CTRL

Attribute

Description

Fuzzy

RegEx

Case-Sensitive

role

The 'Active Accessibility' role property of the UI element.

available

available

available

name

Name property of the UI element.

available

available

available

automationid

The 'UI Automation' ID of the UI element.

available

available

available

labeledby

The 'UI Automation' labeled by attribute of the UI element.

available

available

available

aastate

'Active Accessibility' state of the UI element.

available

available

available

virtualname

The name of the element given by the underlying accessibility technology.

available

available

available

text

The text of the UI element as it appears on the screen.

available

available

available

rowName

The name of the table row that contains the UI element.

available

available

available

idx

The instance number of the UI element.

not available

not available

not available

UIA

Attribute

Description

Fuzzy

RegEx

Case-Sensitive

accelkey (Accelerator Key)

 

available

available

available

acskey (Access Key)

 

available

available

available

automationid

The 'UI Automation' ID of the UI element.

available

available

available

cls

Class name of the window containing the UI element.

available

available

available

helpText

The help string of the UI element.

available

available

available

legacyAccHelp (Legacy Accessible Help)

 

available

available

available

enabled

 

available

available

available

kbfocus (Is Keyboard Focusable)

 

available

available

available

ispwd (Is Password)

 

available

available

available

itemstatus

 

available

available

available

itemtype

 

available

available

available

rtid (Runtime ID)

 

available

available

available

role

The 'Active Accessibility' role property of the UI element.

available

available

available

name

Name property of the UI element.

available

available

available

pid

Process ID of the application containing the UI element.

available

available

available

tableRow

Table row number that contains the UI element.

not available

not available

not available

tableCol

Table column number that contains the UI element.

not available

not available

not available

rowName

The name of the table row that contains the UI element.

available

available

available

colName

The name of the table column that contains the UI element.

available

available

available

idx

The instance number of the UI element.

not available

not available

not available

JAVA

Attribute

Description

Fuzzy

RegEx

Case-Sensitive

role

The 'Active Accessibility' role property of the UI element.

available

available

available

name

Name property of the UI element.

available

available

available

virtualname

The name of the element given by the underlying accessibility technology.

available

available

available

javastate

The state of the UI element as provided by 'Java Accessibility Bridge.

available

available

available

tableRow

Table row number that contains the UI element.

not available

not available

not available

tableCol

Table column number that contains the UI element.

not available

not available

not available

rowName

The name of the table row that contains the UI element.

available

available

available

colName

The name of the table column that contains the UI element.

available

available

available

idx

The instance number of the UI element.

not available

not available

not available

SAP

Attribute

Description

Fuzzy

RegEx

Case-Sensitive

id

The unique identifier of the UI element.

available

available

available

leafid

This attribute is not exposed in the Attribute panel because it is mutual-exclusive with the id attribute. It can be added manually.

available

available

available

tableRow

Table row number that contains the UI element.

not available

not available

not available

tableCol

Table column number that contains the UI element.

not available

not available

not available

colName

The name of the table column that contains the UI element.

available

available

available

relpath

 

available

available

available

itemId

 

available

available

available

SILVERLIGHT

Please note that the Silverlight tag does not support Fuzzy, RegEx, and Case-Sensitive capabilities.

  • Supported tags and attributes
  • WND
  • HTML
  • WEBCTRL
  • CTRL
  • UIA
  • JAVA
  • SAP
  • SILVERLIGHT

Was this page helpful?

Get The Help You Need
Learning RPA - Automation Courses
UiPath Community Forum
Uipath Logo White
Trust and Security
© 2005-2024 UiPath. All rights reserved.