Mapping ARIA roles to UI Automation
The table in this section shows how Accessible Rich Internet Applications (ARIA) roles map to Microsoft UI Automation control types and control patterns. The following notes pertain to the table:
- Most HTML elements that are typically invisible in UI Automation become visible if the role attribute is present. The exceptions include INPUT TYPE=hidden, a PARAM hosted in an OBJECT element, and elements in the HEAD section.
- Although the SCRIPT element is typically invisible in UI Automation, it does appear in the UI Automation tree if the role attribute is present and the element is closed with the </SCRIPT> tag. If the SCRIPTelement has a role attribute but is closed with "/>", the element may or may not appear in the UI Automation tree.
- The "Control type of visible tags" column identifies the control type that results when you apply the specified role to an HTML element that is typically visible in UI Automation.
- The "Control type of invisible tags" column identifies the control type that results when you apply the specified role to an HTML element that is typically invisible in UI Automation, such as the DIV or FIELDSET element.
- "Not applicable" means that the role does not affect how the element maps to UI Automation.
- If the role attribute exists on an element that is typically mapped to UI Automation as a Text control with no children, the element is mapped as specified in the following table, and the element will contain a Text child element.
- Because the LegacyIAccessible, ScrollItem and TextChild control patterns are always supported, they are omitted from the following table.
- If the OPTION element includes any ARIA property, the element is mapped as a Text control instead of a ListItem control.
- A role attribute can add UI Automation control patterns to the patterns that would be supported by the native HTML tag by itself. Exceptions include the following:
| ARIA | UI Automation | ||||
|---|---|---|---|---|---|
| Role | Attributes | Control type of visible tags | Control type of invisible tags | Supported control patterns | Notes |
| alert | Text | Text | |||
| alertdialog | Pane | Pane | |||
| application | Pane | Pane | |||
| article | Not applicable | Text | |||
| banner | Not applicable | Text | |||
| button | Button | Button | Invoke | ||
| checkbox | CheckBox | CheckBox | Toggle | ||
| columnheader | HeaderItem | HeaderItem | GridItem, Invoke, TableItem | ||
| combobox | ComboBox | ComboBox | Selection | ||
| combobox | +aria-valuetext | ComboBox | ComboBox | Selection, Value | |
| command | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | ||
| complementary | Not applicable | Text | |||
| composite | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| contentinfo | Not applicable | Text | |||
| definition | Not applicable | Text | |||
| dialog | Pane | Pane | |||
| directory | List | List | |||
| document | document | document | |||
| form | Not applicable | Text | |||
| grid | DataGrid | DataGrid | Grid | ||
| gridcell | DataItem | DataItem | Grid, Invoke | ||
| group | Group | Group | |||
| heading | Text | Text | |||
| img | Image | Image | |||
| input | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| landmark | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| link | Hyperlink | Hyperlink | Invoke | ||
| link | +aria-valuetext | Hyperlink | Hyperlink | Invoke, Value | |
| list | List | List | |||
| listbox | List | List | Selection | ||
| listitem | DataItem | DataItem | |||
| log | Not applicable | Text | |||
| main | Not applicable | Text | |||
| marquee | Text | Text | |||
| math | Not applicable | Text | |||
| menu | Menu | Menu | |||
| menubar | MenuBar | MenuBar | |||
| menuitem | MenuItem | MenuItem | Invoke | ||
| menuitemcheckbox | MenuItem | MenuItem | Toggle | ||
| menuitemradio | MenuItem | MenuItem | |||
| navigation | Not applicable | Text | |||
| note | Not applicable | Text | |||
| option | ListItem | ListItem | Invoke | ||
| presentation | Not applicable | Not applicable | This role has no effect on whether an HTML tag is visible in UI Automation. | ||
| progressbar | ProgressBar | ProgressBar | |||
| progressbar | +aria-valuenow | aria-valuemax | aria-valuemin | ProgressBar | ProgressBar | RangeValue | |
| radio | RadioButton | RadioButton | |||
| radiogroup | List | List | Selection | ||
| range | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| region | Pane | Pane | |||
| roletype | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| row | Group | Group | |||
| rowgroup | Group | Group | |||
| rowheader | HeaderItem | HeaderItem | GridItem, Invoke, TableItem | ||
| scrollbar | ScrollBar | ScrollBar | RangeValue | ||
| search | Not applicable | Text | |||
| section | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| sectionhead | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| select | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| separator | Separator | Separator | |||
| slider | Slider | Slider | RangeValue | ||
| spinbutton | Spinner | Spinner | RangeValue | ||
| status | StatusBar | StatusBar | |||
| structure | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| tab | TabItem | TabItem | |||
| tablist | Tab | Tab | Selection | ||
| tabpanel | Pane | Pane | |||
| textbox | Edit | Edit | Value | ||
| timer | Not applicable | Text | |||
| toolbar | ToolBar | ToolBar | |||
| tooltip | ToolTip | ToolTip | |||
| tree | Tree | Tree | |||
| treegrid | DataGrid | DataGrid | Grid | ||
| treeitem | TreeItem | TreeItem | ExpandCollapse, Invoke | ||
| widget | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
| window | Not applicable | Group if DIV, Separator if SPAN, Text otherwise | The patterns supported by Group, Separator, or Text | Abstract role. | |
Related topics
Show: