Core AAM 1.1 Testable Statements
Role Mapping Tests
alert
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='alert' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for alert.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_ALERT |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | alert | |
property | LiveSetting | is | Assertive (2) | |
ATK | property | role | is | ROLE_ALERT |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationAlert | |
property | AXRoleDescription | is | 'alert' |
alertdialog
Associated changes since Core AAM 1.0:
- 20-Mar-2017: Modified AX API AXRoleDescription mappings of role alertdialog.
- 21-Mar-2014: Added UIA.
if given <div role='alertdialog' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for alertdialog.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_DIALOG |
UIA | property | ControlType | is | Pane |
ATK | property | role | is | ROLE_DIALOG |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationAlertDialog | |
property | AXRoleDescription | is | 'web alert dialog' |
application
Associated changes since Core AAM 1.0:
- 11-Apr-2016: For role="application", replaced AX API subrole AXLandmarkAppliction with AXWebAppliction, and role description 'application' with 'web application'.
- 11-Jan-2016: Modified UIA mapping for application.
- 03-Oct-2015: Modified UIA role mappings of application.
- 21-Mar-2014: Added UIA.
if given <div role='application' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for application.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_APPLICATION |
UIA | property | ControlType | is | Pane |
property | LocalizedControlType | is | application | |
ATK | property | role | is | ROLE_EMBEDDED |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXWebApplication | |
property | AXRoleDescription | is | 'web application' |
article
Associated changes since Core AAM 1.0:
- 11-Jan-2016: Modified UIA mapping for article.
- 03-Oct-2015: Modified UIA role mappings of article.
- 05-Jun-2014: Modified ATK/AT-SPI mappings for article.
- 21-Mar-2014: Added UIA.
if given <div role='article' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for article.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_DOCUMENT |
IAccessible2 | property | states | contains | STATE_SYSTEM_READONLY |
property | objectAttributes | contains | xml-roles:article | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | article | |
ATK | property | role | is | ROLE_ARTICLE |
property | objectAttributes | contains | xml-roles:article | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXDocumentArticle | |
property | AXRoleDescription | is | 'article' |
banner
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 07-Mar-2016: Updated all UIA mappings for landmark roles to include Landmark Type and Localized Landmark Type.
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 03-Oct-2015: Modified UIA role mappings of banner.
- 30-May-2014: Modified ATK/AT-SPI mappings for banner.
- 21-Mar-2014: Added UIA.
if given <div role='banner' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for banner.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:banner | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | banner | |
property | Landmark Type | is | Custom | |
property | LocalizedLandmarkType | is | banner | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:banner | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXLandmarkBanner | |
property | AXRoleDescription | is | 'banner' |
button with default values for aria-pressed and aria-haspopup
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for button.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_PUSHBUTTON |
UIA | property | ControlType | is | Button |
ATK | property | role | is | ROLE_PUSH_BUTTON |
AXAPI | property | AXRole | is | AXButton |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'button' |
button with aria-haspopup="true"
Associated changes since Core AAM 1.0:
- 28-Apr-2017: Updated AX API AXRole and AXRoleDescription for role="button" where aria-haspoppup is not false.
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test' aria-haspopup='true'>content</div> then expose the element with id of 'test' with the platform role mappings for a popup button.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_BUTTONMENU |
UIA | property | ControlType | is | Button |
ATK | property | role | is | ROLE_PUSH_BUTTON |
AXAPI | property | AXRole | is | AXPopUpButton |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'pop up button' | |
property | actions | contains | AXShowMenu |
button with aria-haspopup="dialog" NEW
Associated changes since Core AAM 1.0:
- aria-haspopup switched from boolean to token in ARIA 1.1.
- In addition to testing the new property values, we need to test that a role-based value changes the role of button just like a value of true does.
- 06-Jun-2016: Added MSAA+IA2, UIA, and ATK/AT-SPI mappings for the new values of aria-haspopup added for ARIA 1.1.
- 06-May-2016: Added changes for revised values for aria-haspopup for ATK/AT-SPI and MSAA+IA2 along with error handling.
if given <div role='button' id='test' aria-haspopup='dialog'>content</div> then expose the element with id of 'test' with the platform role mappings for a popup button.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_BUTTONMENU |
UIA | property | ControlType | is | Button |
ATK | property | role | is | ROLE_PUSH_BUTTON |
AXAPI | property | AXRole | is | AXPopUpButton |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'pop up button' | |
property | actions | contains | AXShowMenu |
button with defined value for aria-pressed
Associated changes since Core AAM 1.0:
- 04-Sep-2017: Fix AXSubrole for button with aria-pressed defined: Should be AXToggle; not AXToggleButton.
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test' aria-pressed='true'>content</div> then expose the element with id of 'test' with the platform role mappings for button.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_PUSHBUTTON |
IAccessible2 | property | role | is | IA2_ROLE_TOGGLE_BUTTON |
UIA | property | ControlType | is | Button |
ATK | property | role | is | ROLE_TOGGLE_BUTTON |
AXAPI | property | AXRole | is | AXCheckBox |
property | AXSubrole | is | AXToggle | |
property | AXRoleDescription | is | 'toggle button' |
cell NEW
Associated changes since Core AAM 1.0:
- The cell role is new to ARIA 1.1 and thus needs full testing
- 17-Aug-2017: Add TableItem Control Pattern to role=cell mapping.
- 17-Aug-2017: Add Localized ControlType for cell
- 08-Aug-2017: Update UIA mappings for cell
if given <div role='table'> <div role='row'> <div role='cell' id='test'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for cell.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_CELL |
IAccessible2 | property | interfaces | contains | IAccessibleTableCell |
UIA | property | ControlType | is | DataItem |
property | LocalizedControlType | is | cell | |
property | Control Pattern | is | TableItem | |
ATK | property | role | is | ROLE_TABLE_CELL |
property | interfaces | contains | TableCell | |
AXAPI | property | AXRole | is | AXCell |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'cell' |
checkbox
Associated changes since Core AAM 1.0:
- 20-Jul-2017: Change AXRoleDescription for AXCheckBox from "check box" to "checkbox".
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for checkbox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_CHECKBUTTON |
UIA | property | ControlType | is | Checkbox |
ATK | property | role | is | ROLE_CHECK_BOX |
AXAPI | property | AXRole | is | AXCheckBox |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'checkbox' |
columnheader
Associated changes since Core AAM 1.0:
- 28-Aug-2017: Remove AXSortButton as an alternative role mapping for columnheader.
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='columnheader' id='test'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for columnheader.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_COLUMNHEADER |
IAccessible2 | property | interfaces | contains | IAccessibleTableCell |
UIA | property | ControlType | is | HeaderItem |
ATK | property | role | is | ROLE_COLUMN_HEADER |
property | interfaces | contains | TableCell | |
AXAPI | property | AXRole | is | AXCell |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'cell' |
combobox
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='combobox' aria-expanded='false' id='test'> <div role='textbox'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for combobox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_COMBOBOX |
IAccessible2 | property | states | contains | STATE_SYSTEM_HASPOPUP |
property | states | contains | STATE_SYSTEM_COLLAPSED | |
UIA | property | ControlType | is | Combobox |
ATK | property | role | is | ROLE_COMBO_BOX |
property | states | contains | STATE_EXPANDABLE | |
property | states | contains | STATE_HAS_POPUP | |
AXAPI | property | AXRole | is | AXComboBox |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'combo box' |
complementary
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 07-Mar-2016: Updated all UIA mappings for landmark roles to include Landmark Type and Localized Landmark Type.
- 03-Oct-2015: Modified UIA role mappings of complementary.
- 30-May-2014: Modified ATK/AT-SPI mappings for complementary (not in ChangeLog, but all landmarks were updated to ROLE_LANDMARK).
- 21-Mar-2014: Added UIA.
if given <div role='complementary' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for complementary.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:complementary | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | complementary | |
property | Landmark Type | is | Custom | |
property | LocalizedLandmarkType | is | complementary | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:complementary | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXLandmarkComplementary | |
property | AXRoleDescription | is | 'complementary' |
contentinfo
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 20-Jul-2017: Change AXRoleDescription for contentinfo from "content" to "content information".
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 07-Mar-2016: Updated all UIA mappings for landmark roles to include Landmark Type and Localized Landmark Type.
- 03-Oct-2015: Modified UIA role mappings of contentinfo.
- 30-May-2014: Modified ATK/AT-SPI mappings for contentinfo (not in ChangeLog, but all landmarks were updated to ROLE_LANDMARK).
- 21-Mar-2014: Added UIA.
if given <div role='contentinfo' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for contentinfo.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:contentinfo | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | content information | |
property | Landmark Type | is | Custom | |
property | LocalizedLandmarkType | is | content information | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:contentinfo | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXLandmarkContentInfo | |
property | AXRoleDescription | is | 'content information' |
definition
Associated changes since Core AAM 1.0:
- 26-Jul-2017: Map definition role to ROLE_DESCRIPTION_VALUE for ATK.
- 03-Oct-2015: Modified UIA role mappings of definition.
- 21-Mar-2014: Added UIA.
if given <div role='definition' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for definition.
element test | ||||
IAccessible2 | property | objectAttributes | contains | xml-roles:definition |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | definition | |
ATK | property | role | is | ROLE_DESCRIPTION_VALUE |
property | objectAttributes | contains | xml-roles:definition | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXDefinition | |
property | AXRoleDescription | is | 'definition' |
dialog
Associated changes since Core AAM 1.0:
- 20-Mar-2017: Modified AX API AXRoleDescription mappings of role dialog.
- 21-Mar-2014: Added UIA.
if given <div role='dialog' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for dialog.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_DIALOG |
UIA | property | ControlType | is | Pane |
ATK | property | role | is | ROLE_DIALOG |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationDialog | |
property | AXRoleDescription | is | 'web dialog' |
directory
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='directory' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for directory.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LIST |
UIA | property | ControlType | is | List |
ATK | property | role | is | ROLE_LIST |
AXAPI | property | AXRole | is | AXList |
property | AXSubrole | is | AXContentList | |
property | AXRoleDescription | is | 'content list' |
document
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='document' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for document.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_DOCUMENT |
IAccessible2 | property | states | contains | STATE_SYSTEM_READONLY |
UIA | property | ControlType | is | Document |
ATK | property | role | is | ROLE_DOCUMENT_FRAME |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXDocument | |
property | AXRoleDescription | is | 'document' |
feed NEW
- The feed role is new to ARIA 1.1 and thus needs full testing.
- 01-May-2017: Changed AX API AXSubrole for role="feed" from "<nil>" to "AXApplicationGroup" and its AXRoleDescription from "group" to "feed".
- 07-Dec-2016: Added UIA mappings for feed.
- 08-Sep-2016: Added feed role.
if given <div role='feed' id='test'> <div role='article'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for feed.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_GROUPING |
IAccessible2 | property | objectAttributes | contains | xml-roles:feed |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | feed | |
ATK | property | role | is | ROLE_PANEL |
property | objectAttributes | contains | xml-roles:feed | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationGroup | |
property | AXRoleDescription | is | 'feed' |
figure NEW
Associated changes since Core AAM 1.0:
- The feed role is new to ARIA 1.1 and thus needs full testing.
- 07-Dec-2016: Added UIA mappings for figure.
- 08-Sep-2016: Added figure role.
if given <div role='figure' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for figure.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_GROUPING |
IAccessible2 | property | objectAttributes | contains | xml-roles:figure |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | figure | |
ATK | property | role | is | ROLE_PANEL |
property | objectAttributes | contains | xml-roles:figure | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'figure' |
form
Note: The Form role is not new. But some additional changes to platforms need to be added below.
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 08-Sep-2016: Reverted role mapping back to IA2_ROLE_FORM (object attribute addition retained).
- 02-May-2016: Updated mappings of MSAA+IA2 and ATK (changed role and added object attribute exposure).
- 07-Mar-2016: Updated all UIA mappings for landmark roles to include Landmark Type and Localized Landmark Type.
- 21-Mar-2014: Added UIA.
if given <div role='form' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for form.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_FORM |
property | objectAttributes | contains | xml-roles:form | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | form | |
property | Landmark Type | is | Form | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:form | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'group' |
grid
Associated changes since Core AAM 1.0:
- 27-Apr-2017: Updated AX API AXRoleDescription for role="grid" to 'table'. It was formerly "grid". (This seems to have undone/reverted the 2014 change.)
- 29-Aug-2014: Modified mappings of grid role to differentiate a grid from a table.
- 21-Mar-2014: Added UIA.
if given <div role='grid' id='test'> <div role='row' id='headerrow'> <div role='columnheader' id='colheader1'>content</div> <div role='columnheader' id='colheader2'>content</div> </div> <div role='row'> <div role='rowheader' id='rowheader1'>content</div> <div role='gridcell'>content</div> </div> <div role='row'> <div role='rowheader' id='rowheader2'>content</div> <div role='gridcell'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for grid.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_TABLE |
IAccessible2 | property | objectAttributes | contains | xml-roles:grid |
property | interfaces | contains | IAccessibleTable2 | |
result | IAccessible::accSelect() | is | TBD | |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | DataGrid |
property | Control Pattern | is | Selection | |
ATK | property | role | is | ROLE_TABLE |
property | objectAttributes | contains | xml-roles:grid | |
property | interfaces | contains | Table | |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXTable |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'table' | |
property | AXColumnHeaderUIElements | is | [colheader1, colheader2] | |
property | AXHeader | is | AXGroup | |
property | AXRowHeaderUIElements | is | [rowheader1, rowheader2] |
gridcell
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Add Localized ControlType for gridcell.
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='gridcell' id='test'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for gridcell.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_CELL |
IAccessible2 | property | interfaces | contains | IAccessibleTableCell |
UIA | property | ControlType | is | DataItem |
property | LocalizedControlType | is | gridcell | |
property | Control Pattern | is | SelectionItem | |
property | SelectionItem.SelectionContainer | is | the containing grid | |
ATK | property | role | is | ROLE_TABLE_CELL |
property | interfaces | contains | TableCell | |
AXAPI | property | AXRole | is | AXCell |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'cell' |
group
Associated changes since Core AAM 1.0:
- 13-Apr-2017: Changed AX API AXSubrole for role="group" from "<nil>" to "AXApplicationGroup".
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for group.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_GROUPING |
UIA | property | ControlType | is | Group |
ATK | property | role | is | ROLE_PANEL |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationGroup | |
property | AXRoleDescription | is | 'group' |
heading
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='heading' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for heading.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_HEADING |
property | objectAttributes | contains | xml-roles:heading | |
UIA | property | ControlType | is | Text |
property | LocalizedControlType | is | heading | |
ATK | property | role | is | ROLE_HEADING |
AXAPI | property | AXRole | is | AXHeading |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'heading' |
img
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='img' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for img.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_GRAPHIC |
IAccessible2 | property | interfaces | contains | IAccessibleImage |
UIA | property | ControlType | is | Image |
ATK | property | role | is | ROLE_IMAGE |
property | interfaces | contains | Image | |
AXAPI | property | AXRole | is | AXImage |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'image' |
link
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove exposure of HTML's href attribute from link role mapping for UIA.
- 02-Aug-2017: Replace STATE_LINKED with STATE_SYSTEM_LINKED for MSAA + IAccessible2 mapping of role link.
- 21-Mar-2014: Added UIA.
if given <div role='link' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for link.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LINK |
IAccessible2 | property | states | contains | STATE_SYSTEM_LINKED |
property | states | contains | STATE_SYSTEM_LINKED | |
property | interfaces | contains | IAccessibleHypertext | |
UIA | property | ControlType | is | HyperLink |
property | Control Pattern | is | Value | |
ATK | property | role | is | ROLE_LINK |
property | interfaces | contains | Hyperlink | |
AXAPI | property | AXRole | is | AXLink |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'link' |
list
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove SelectionPattern from list role; add it to listbox role.
- 21-Mar-2014: Added UIA.
if given <div role='list' id='test'> <div role='listitem'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for list.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LIST |
IAccessible2 | property | states | contains | STATE_SYSTEM_READONLY |
UIA | property | ControlType | is | List |
ATK | property | role | is | ROLE_LIST |
AXAPI | property | AXRole | is | AXList |
property | AXSubrole | is | AXContentList | |
property | AXRoleDescription | is | 'content list' |
listbox not owned by or child of combobox
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove SelectionPattern from list role; add it to listbox role.
- 30-May-2014: Modified ATK/AT-SPI mappings for listbox.
- 21-Mar-2014: Added UIA.
if given <div role='listbox' id='test'> <div role='option'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for listbox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LIST |
IAccessible2 | result | IAccessible::accSelect() | is | TBD |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | List |
property | Control Pattern | is | Selection | |
ATK | property | role | is | ROLE_LIST_BOX |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXList |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'list' |
listbox owned by or child of combobox
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove SelectionPattern from list role; add it to listbox role.
- 21-Mar-2014: Added UIA.
if given <div role='combobox'> <div role='textbox'>content</div> <div role='listbox' id='test'> <div role='option'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for listbox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LIST |
IAccessible2 | result | IAccessible::accSelect() | is | TBD |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | List |
property | Control Pattern | is | Selection | |
ATK | property | role | is | ROLE_MENU |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXList |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'list' |
listitem
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='list'> <div role='listitem' id='test'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for listitem.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LISTITEM |
IAccessible2 | property | states | contains | STATE_SYSTEM_READONLY |
UIA | property | ControlType | is | ListItem |
property | Control Pattern | is | SelectionItem | |
property | SelectionItem.SelectionContainer | is | the containing list | |
ATK | property | role | is | ROLE_LIST_ITEM |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'group' |
log
Associated changes since Core AAM 1.0:
- 03-Oct-2015: Modified UIA role mappings of log.
- 30-May-2014: Modified ATK/AT-SPI mappings for log.
- 21-Mar-2014: Added UIA.
if given <div role='log' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for log.
element test | ||||
IAccessible2 | property | objectAttributes | contains | xml-roles:log |
property | objectAttributes | contains | container-live:polite | |
property | objectAttributes | contains | live:polite | |
property | objectAttributes | contains | container-live-role:log | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | log | |
property | LiveSetting | is | Polite (1) | |
ATK | property | role | is | ROLE_LOG |
property | objectAttributes | contains | xml-roles:log | |
property | objectAttributes | contains | container-live:polite | |
property | objectAttributes | contains | live:polite | |
property | objectAttributes | contains | container-live-role:log | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationLog | |
property | AXRoleDescription | is | 'log' |
main
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 02-Feb-2016: Modified UIA mapping of main role to include a Landmark Type and a Localized Landmark Type.
- 03-Oct-2015: Modified UIA role mappings of main.
- 30-May-2014: Modified ATK/AT-SPI mappings for main (not in ChangeLog, but all landmarks were updated to ROLE_LANDMARK).
- 21-Mar-2014: Added UIA.
if given <div role='main' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for main.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:main | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | main | |
property | Landmark Type | is | Main | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:main | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXLandmarkMain | |
property | AXRoleDescription | is | 'main' |
marquee
Associated changes since Core AAM 1.0:
- 30-May-2014: Modified ATK/AT-SPI mappings for marquee.
- 21-Mar-2014: Added UIA.
if given <div role='marquee' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for marquee.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_ANIMATION |
IAccessible2 | property | objectAttributes | contains | xml-roles:marquee |
property | objectAttributes | contains | container-live:off | |
property | objectAttributes | contains | live:off | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | marquee | |
property | LiveSetting | is | Off (0) | |
ATK | property | role | is | ROLE_MARQUEE |
property | objectAttributes | contains | container-live:off | |
property | objectAttributes | contains | live:off | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationMarquee | |
property | AXRoleDescription | is | 'marquee' |
math
Associated changes since Core AAM 1.0:
- 03-Oct-2015: Modified UIA role mappings of math.
- 30-May-2014: Modified ATK/AT-SPI mappings for math.
- 21-Mar-2014: Added UIA.
if given <div role='math' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for math.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_EQUATION |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | math | |
ATK | property | role | is | ROLE_MATH |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXDocumentMath | |
property | AXRoleDescription | is | 'math' |
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='menu' id='test'> <div role='menuitemradio'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for menu.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_MENUPOPUP |
IAccessible2 | result | IAccessible::accSelect() | is | TBD |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | Menu |
ATK | property | role | is | ROLE_MENU |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXMenu |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'menu' |
Associated changes since Core AAM 1.0:
- 08-Aug-2017: Remove erroneous statement about not exposing submenus in ATK. Core AAM 1.0 stated "These (menu) objects are not exposed for a submenu if there is a parent menu item spawning the submenu. Since ATK/AT-SPI allows menuitems to have menuitem children, interposing menu objects are not exposed, except for the root parent."
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitem'> <div role='menu' id='test'> <div role='menuitemradio'>content</div> </div> <div role='menuitem'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for menu.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_MENUPOPUP |
IAccessible2 | result | IAccessible::accSelect() | is | TBD |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | Menu |
ATK | property | role | is | ROLE_MENU |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXMenu |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'menu' |
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='menubar' id='test'> <div role='menuitemradio'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for menubar.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_MENUBAR |
IAccessible2 | result | IAccessible::accSelect() | is | TBD |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | MenuBar |
ATK | property | role | is | ROLE_MENU_BAR |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXMenuBar |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'menu bar' |
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitem' id='test'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for menuitem.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_MENUITEM |
UIA | property | ControlType | is | MenuItem |
ATK | property | role | is | ROLE_MENU_ITEM |
AXAPI | property | AXRole | is | AXMenuItem |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'menu item' |
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='group'> <div role='menuitem' id='test'>content 1</div> </div> <div role='menuitem'>content 2</div> </div> then expose the element with id of 'test' with the platform role mappings for menuitem.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_MENUITEM |
UIA | property | ControlType | is | MenuItem |
ATK | property | role | is | ROLE_MENU_ITEM |
AXAPI | property | AXRole | is | AXMenuButton |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'menu button' |
menuitemcheckbox in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitemcheckbox' id='test'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for menuitemcheckbox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_CHECKBUTTON or ROLE_SYSTEM_MENUITEM |
IAccessible2 | property | role | is | IA2_ROLE_CHECK_MENU_ITEM |
UIA | property | ControlType | is | MenuItem |
property | Control Pattern | is | Toggle | |
ATK | property | role | is | ROLE_CHECK_MENU_ITEM |
AXAPI | property | AXRole | is | AXMenuItem |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'menu item' |
Associated changes since Core AAM 1.0:
- 11-Mar-2016: Added Toggle and SelectionItem patterns.
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitemradio' id='test'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for menuitemradio.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_RADIOBUTTON or ROLE_SYSTEM_MENUITEM |
IAccessible2 | property | role | is | IA2_ROLE_RADIO_MENU_ITEM |
UIA | property | ControlType | is | MenuItem |
property | Control Pattern | is | Toggle | |
property | Control Pattern | is | SelectionItem | |
ATK | property | role | is | ROLE_RADIO_MENU_ITEM |
AXAPI | property | AXRole | is | AXMenuItem |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'menu item' |
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 07-Mar-2016: Updated all UIA mappings for landmark roles to include Landmark Type and Localized Landmark Type.
- 03-Oct-2015: Modified UIA role mappings of navigation.
- 30-May-2014: Modified ATK/AT-SPI mappings for navigation.
- 21-Mar-2014: Added UIA.
if given <div role='navigation' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for navigation.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:navigation | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | navigation | |
property | Landmark Type | is | Navigation | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:navigation | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXLandmarkNavigation | |
property | AXRoleDescription | is | 'navigation' |
none NEW
Associated changes since Core AAM 1.0:
- The none role was added in ARIA 1.1 and thus requires full testing.
if given <div role='none' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for none.
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
none used on ul element with li children NEW
Associated changes since Core AAM 1.0:
- Mapping of required owned descendants of elements with role none was added in Core AAM 1.1 and thus needs full testing.
- 09-Jan-2017: Updated AX API mappings for role none/none.
- 15-Jun-2015: Modified MSAA+IA2 mappings of none / none roles for required owned descendants.
- 02-Jun-2015: Modified ATK/AT-SPI and UIA mappings of none / none roles for required owned descendants.
if given <ul role='none'> <li id='test' aria-label='name to force inclusion'>item 1</li> <li>item 2</li> </ul> then expose the element with id of 'test' with the platform role mappings for a required owned descendant of role none.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_SECTION |
UIA | property | accessible | is | false |
ATK | property | role | is | ROLE_SECTION |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'group' |
none used on table element with td children NEW
Associated changes since Core AAM 1.0:
- Mapping of required owned descendants of elements with role none was added in Core AAM 1.1 and thus needs full testing.
- 09-Jan-2017: Updated AX API mappings for role none/none.
- 15-Jun-2015: Modified MSAA+IA2 mappings of none / none roles for required owned descendants.
- 02-Jun-2015: Modified ATK/AT-SPI and UIA mappings of none / none roles for required owned descendants.
if given <table role='none'> <tr><td id='test' aria-label='name to force inclusion'>row 1, col 1</td><td>row 1, col 2</td></tr> </table> then expose the element with id of 'test' with the platform role mappings for a required owned descendant of role none.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_SECTION |
UIA | property | accessible | is | false |
ATK | property | role | is | ROLE_SECTION |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'group' |
none used on element that is focused or fires event
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div id='test' role='none' tabindex='0'>content</div> then expose the element with id of 'test' when it is focused.
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
note
Associated changes since Core AAM 1.0:
- 03-Oct-2015: Modified UIA role mappings of note.
- 30-May-2014: Modified ATK/AT-SPI mappings for note.
- 21-Mar-2014: Added UIA.
if given <div role='note' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for note.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_NOTE |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | note | |
ATK | property | role | is | ROLE_COMMENT |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXDocumentNote | |
property | AXRoleDescription | is | 'note' |
option not inside combobox
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='listbox'> <div role='option' id='test'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for option.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LISTITEM |
UIA | property | ControlType | is | ListItem |
property | Control Pattern | is | Invoke | |
ATK | property | role | is | ROLE_LIST_ITEM |
AXAPI | property | AXRole | is | AXStaticText |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'text' |
option inside combobox
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='combobox'> <div role='textbox'>content</div> <div role='listbox'> <div role='option' id='test'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for option.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_LISTITEM |
UIA | property | ControlType | is | ListItem |
property | Control Pattern | is | Invoke | |
ATK | property | role | is | ROLE_MENU_ITEM |
AXAPI | property | AXRole | is | AXStaticText |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'text' |
presentation
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='presentation' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for presentation.
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
presentation used on ul element with li children NEW
Associated changes since Core AAM 1.0:
- Mapping of required owned descendants of elements with role presentation was added in Core AAM 1.1 and thus needs full testing.
- 09-Jan-2017: Updated AX API mappings for role presentation/none.
- 15-Jun-2015: Modified MSAA+IA2 mappings of presentation / none roles for required owned descendants.
- 02-Jun-2015: Modified ATK/AT-SPI and UIA mappings of presentation / none roles for required owned descendants.
if given <ul role='presentation'> <li id='test' aria-label='name to force inclusion'>item 1</li> <li>item 2</li> </ul> then expose the element with id of 'test' with the platform role mappings for a required owned descendant of role presentation.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_SECTION |
UIA | property | accessible | is | false |
ATK | property | role | is | ROLE_SECTION |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'group' |
presentation used on table element with td children NEW
Associated changes since Core AAM 1.0:
- Mapping of required owned descendants of elements with role presentation was added in Core AAM 1.1 and thus needs full testing.
- 09-Jan-2017: Updated AX API mappings for role presentation/none.
- 15-Jun-2015: Modified MSAA+IA2 mappings of presentation / none roles for required owned descendants.
- 02-Jun-2015: Modified ATK/AT-SPI and UIA mappings of presentation / none roles for required owned descendants.
if given <table role='presentation'> <tr><td id='test' aria-label='name to force inclusion'>row 1, col 1</td><td>row 1, col 2</td></tr> </table> then expose the element with id of 'test' with the platform role mappings for a required owned descendant of role presentation.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_SECTION |
UIA | property | accessible | is | false |
ATK | property | role | is | ROLE_SECTION |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'group' |
presentation used on element that is focused or fires event
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div id='test' role='presentation' tabindex='0'>content</div> then expose the element with id of 'test' when it is focused.
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
progressbar
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Fix name of UIA pattern for range roles (should be RangeValue; not Range).
- 21-Mar-2014: Added UIA.
if given <div role='progressbar' aria-valuenow='20' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for progressbar.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_PROGRESSBAR |
IAccessible2 | property | states | contains | STATE_SYSTEM_READONLY |
property | interfaces | contains | IAccessibleValue | |
UIA | property | ControlType | is | ProgressBar |
property | Control Pattern | is | RangeValue | |
ATK | property | role | is | ROLE_PROGRESS_BAR |
property | interfaces | contains | Value | |
AXAPI | property | AXRole | is | AXProgressIndicator |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'progress indicator' |
radio
Associated changes since Core AAM 1.0:
- 11-Mar-2016: Added Toggle and SelectionItem patterns.
- 21-Mar-2014: Added UIA.
if given <div role='radio' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for radio.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_RADIOBUTTON |
UIA | property | ControlType | is | RadioButton |
property | Control Pattern | is | Toggle | |
property | Control Pattern | is | SelectionItem | |
ATK | property | role | is | ROLE_RADIO_BUTTON |
AXAPI | property | AXRole | is | AXRadioButton |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'radio button' |
radiogroup
Associated changes since Core AAM 1.0:
- 30-May-2014: Modified ATK/AT-SPI mappings for radiogroup.
- 21-Mar-2014: Added UIA.
if given <div role='radiogroup' id='test'> <div role='radio'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for radiogroup.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_GROUPING |
UIA | property | ControlType | is | List |
ATK | property | role | is | ROLE_PANEL |
AXAPI | property | AXRole | is | AXRadioGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'radio group' |
region with an accessible name NEW
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 05-May-2016: Updated AX API mapping of role region to reflect its inheritance from the landmark role.
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 07-Mar-2016: Updated all UIA mappings for landmark roles to include Landmark Type and Localized Landmark Type.
- 24-Aug-2015: Modified mappings of region role in light of its new status as a landmark.
- 21-Mar-2014: Added UIA.
if given <div role='region' aria-label='name for region' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for region.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:region | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | region | |
property | Landmark Type | is | Custom | |
property | LocalizedLandmarkType | is | region | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:region | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXLandmarkRegion | |
property | AXRoleDescription | is | 'region' |
region without an accessible name NEW
Associated changes since Core AAM 1.0:
- 05-May-2016: Updated AX API mapping of role region to reflect its inheritance from the landmark role.
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 24-Aug-2015: Modified mappings of region role in light of its new status as a landmark.
- 21-Mar-2014: Added UIA.
if given <div role='region' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for region.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_SECTION |
UIA | property | ControlType | is | Group |
ATK | property | role | is | ROLE_SECTION |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | group |
row not inside treegrid
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Add Localized ControlType for gridcell.
- 30-May-2014: Modified ATK/AT-SPI mappings for row.
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row' id='test'> <div role='gridcell'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for row.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_ROW |
UIA | property | ControlType | is | DataItem |
property | LocalizedControlType | is | row | |
property | Control Pattern | is | SelectionItem | |
ATK | property | role | is | ROLE_TABLE_ROW |
AXAPI | property | AXRole | is | AXRow |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'row' |
row inside treegrid
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='treegrid'> <div role='row' id='test'> <div role='gridcell'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for row.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_OUTLINEITEM |
UIA | property | ControlType | is | DataItem |
property | LocalizedControlType | is | row | |
property | Control Pattern | is | SelectionItem | |
ATK | property | role | is | ROLE_TABLE_ROW |
AXAPI | property | AXRole | is | AXRow |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'row' |
rowgroup
Associated changes since Core AAM 1.0:
- 16-Jun-2015: Modified MSAA+UIA Express and ATK/AT-SPI mappings of rowgroup role. (No net change.)
- 14-Jan-2015: Mappings for rowgroup. (No net change.)
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='rowgroup' id='test'> <div role='row'> <div role='cell'>content</div> </div> <div role='row'> <div role='cell'>content</div> </div> </div> </div> then expose the element with id of 'test' with the platform role mappings for rowgroup.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_GROUPING |
UIA | property | ControlType | is | Group |
ATK | property | role | is | ROLE_PANEL |
AXAPI | property | accessible | is | false |
rowheader
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='rowheader' id='test'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for rowheader.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_ROWHEADER |
IAccessible2 | property | interfaces | contains | IAccessibleTableCell |
UIA | property | ControlType | is | HeaderItem |
ATK | property | role | is | ROLE_ROW_HEADER |
property | interfaces | contains | TableCell | |
AXAPI | property | AXRole | is | AXCell |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'cell' |
scrollbar
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Fix name of UIA pattern for range roles (should be RangeValue; not Range).
- 07-Dec-2016: Added UIA Range Value Pattern to scrollbar.
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for scrollbar.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_SCROLLBAR |
IAccessible2 | property | interfaces | contains | IAccessibleValue |
UIA | property | ControlType | is | ScrollBar |
property | Control Pattern | is | RangeValue | |
ATK | property | role | is | ROLE_SCROLL_BAR |
property | interfaces | contains | Value | |
AXAPI | property | AXRole | is | AXScrollBar |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'scroll bar' |
search
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Remove Localized Landmark Type when it is redundant to the Landmark Type.
- 18-Apr-2016: MSAA+IA2 now uses IA2_ROLE_LANDMARK for landmark roles.
- 07-Mar-2016: Updated all UIA mappings for landmark roles to include Landmark Type and Localized Landmark Type.
- 03-Oct-2015: Modified UIA role mappings of search.
- 21-Mar-2014: Added UIA.
if given <div role='search' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for search.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:search | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | search | |
property | Landmark Type | is | Search | |
ATK | property | role | is | ROLE_LANDMARK |
property | objectAttributes | contains | xml-roles:search | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXLandmarkSearch | |
property | AXRoleDescription | is | 'search' |
searchbox NEW
Associated changes since Core AAM 1.0:
- The searchbox role is new to ARIA 1.1 and thus needs full testing.
- 20-Jul-2017: Add role exposure via xml-roles object attribute for searchbox to ATK mappings.
- 11-Mar-2015: Mappings for searchbox.
if given <div role='searchbox' contenteditable id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for searchbox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_TEXT |
IAccessible2 | property | objectAttributes | contains | text-input-type:search |
UIA | property | ControlType | is | Edit |
property | LocalizedControlType | is | search box | |
ATK | property | role | is | ROLE_ENTRY |
property | objectAttributes | contains | xml-roles:searchbox | |
property | interfaces | contains | EditableText | |
AXAPI | property | AXRole | is | AXTextField |
property | AXSubrole | is | AXSearchField | |
property | AXRoleDescription | is | 'search text field' |
separator non-focusable
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='separator' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for separator.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_SEPARATOR |
UIA | property | ControlType | is | Separator |
ATK | property | role | is | ROLE_SEPARATOR |
AXAPI | property | AXRole | is | AXSplitter |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'splitter' |
separator focusable NEW
Associated changes since Core AAM 1.0:
- The use of the separator role, when focusable, as a splitter is new to ARIA 1.1 and thus needs full testing.
- 17-Aug-2017: Added UIA Range Value Pattern to focusable separator.
- 27-Jun-2016: For MSAA+IA2, UIA, and ATK/AT-SPI, modified mappings of role="separator" when it is a window splitter.
if given <div role='separator' tabindex='0' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for separator.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_SEPARATOR |
IAccessible2 | property | interfaces | contains | IAccessibleValue |
UIA | property | ControlType | is | Thumb |
property | Control Pattern | is | RangeValue | |
ATK | property | role | is | ROLE_SEPARATOR |
property | interfaces | contains | Value | |
AXAPI | property | AXRole | is | AXSplitter |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'splitter' |
slider
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Fix name of UIA pattern for range roles (should be RangeValue; not Range).
- 07-Dec-2016: Added UIA Range Value Pattern to slider.
- 21-Mar-2014: Added UIA.
if given <div role='slider' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for slider.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_SLIDER |
IAccessible2 | property | interfaces | contains | IAccessibleValue |
UIA | property | ControlType | is | Slider |
property | Control Pattern | is | RangeValue | |
ATK | property | role | is | ROLE_SLIDER |
property | interfaces | contains | Value | |
AXAPI | property | AXRole | is | AXSlider |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'slider' |
spinbutton
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Fix name of UIA pattern for range roles (should be RangeValue; not Range).
- 07-Dec-2016: Added UIA Range Value Pattern to spinbutton.
- 21-Mar-2014: Added UIA.
if given <div role='spinbutton' id='test'>10</div> then expose the element with id of 'test' with the platform role mappings for spinbutton.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_SPINBUTTON |
IAccessible2 | property | interfaces | contains | IAccessibleValue |
UIA | property | ControlType | is | Spinner |
property | Control Pattern | is | RangeValue | |
ATK | property | role | is | ROLE_SPIN_BUTTON |
property | interfaces | contains | Value | |
AXAPI | property | AXRole | is | AXIncrementor |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'stepper' |
status
Associated changes since Core AAM 1.0:
- 24-Apr-2017: Changed AX API AXRoleDescription for role="status" from "status" to "application status".
- 21-Mar-2014: Added UIA.
if given <div role='status' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for status.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_STATUSBAR |
IAccessible2 | property | objectAttributes | contains | container-live:polite |
property | objectAttributes | contains | live:polite | |
property | objectAttributes | contains | container-live-role:status | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | status | |
property | LiveSetting | is | Polite (1) | |
ATK | property | role | is | ROLE_STATUSBAR |
property | objectAttributes | contains | container-live:polite | |
property | objectAttributes | contains | live:polite | |
property | objectAttributes | contains | container-live-role:status | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationStatus | |
property | AXRoleDescription | is | 'application status' |
switch NEW
Associated changes since Core AAM 1.0:
- The switch role is new to ARIA 1.1 and thus needs full testing.
- 04-Aug-2017: Add MSAA mapping for the switch role.
- 20-Jul-2017: Add role exposure via xml-roles object attribute for switch to ATK mappings.
- 04-Mar-2015: Additional mappings for switch.
- 23-Feb-2015: Mappings for switch.
if given <div role='switch' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for switch.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_CHECKBUTTON |
IAccessible2 | property | role | is | IA2_ROLE_TOGGLE_BUTTON |
property | objectAttributes | contains | xml-roles:switch | |
UIA | property | ControlType | is | Button |
property | LocalizedControlType | is | toggleswitch | |
property | Control Pattern | is | Toggle | |
ATK | property | role | is | ROLE_TOGGLE_BUTTON |
property | objectAttributes | contains | xml-roles:switch | |
AXAPI | property | AXRole | is | AXCheckBox |
property | AXSubrole | is | AXSwitch | |
property | AXRoleDescription | is | 'switch' |
tab
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='tablist'> <div role='tab' id='test'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for tab.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_PAGETAB |
UIA | property | ControlType | is | TabItem |
ATK | property | role | is | ROLE_PAGE_TAB |
AXAPI | property | AXRole | is | AXRadioButton |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'tab' |
table NEW
Associated changes since Core AAM 1.0:
- The table role is new to ARIA 1.1 and thus needs full testing
- 14-Aug-2017: Fix AXRoleDescription for table role, which should be "table"; not "grid".
if given <div role='table' id='test'> <div role='row' id='headerrow'> <div role='columnheader' id='colheader1'>content</div> <div role='columnheader' id='colheader2'>content</div> </div> <div role='row'> <div role='rowheader' id='rowheader1'>content</div> <div role='cell'>content</div> </div> <div role='row'> <div role='rowheader' id='rowheader2'>content</div> <div role='cell'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for table.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_TABLE |
IAccessible2 | property | objectAttributes | contains | xml-roles:table |
property | interfaces | contains | IAccessibleTable2 | |
UIA | property | ControlType | is | Table |
property | Control Pattern | is | Grid | |
property | Control Pattern | is | Table | |
ATK | property | role | is | ROLE_TABLE |
property | objectAttributes | contains | xml-roles:table | |
property | interfaces | contains | Table | |
AXAPI | property | AXRole | is | AXTable |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'table' | |
property | AXColumnHeaderUIElements | is | [colheader1, colheader2] | |
property | AXHeader | is | AXGroup | |
property | AXRowHeaderUIElements | is | [rowheader1, rowheader2] |
tablist
Associated changes since Core AAM 1.0:
- 15-Apr-2017: Fix AXRoleDescription ("tab group"; not "tabgroup").
- 15-May-2014: Removed live-region-related object attributes for IA2 and ATK.
- 21-Mar-2014: Added UIA.
if given <div role='tablist' id='test'> <div role='tab'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for tablist.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_PAGETABLIST |
IAccessible2 | result | IAccessible::accSelect() | is | TBD |
result | IAccessible::get_accSelection() | is | TBD | |
property | objectAttributes | doesNotContain | container-live:polite | |
property | objectAttributes | doesNotContain | live:polite | |
property | objectAttributes | doesNotContain | container-live-role:tablist | |
UIA | property | ControlType | is | Tab |
property | Control Pattern | is | Selection | |
ATK | property | role | is | ROLE_PAGE_TAB_LIST |
property | interfaces | contains | Selection | |
property | objectAttributes | doesNotContain | container-live:polite | |
property | objectAttributes | doesNotContain | live:polite | |
property | objectAttributes | doesNotContain | container-live-role:tablist | |
AXAPI | property | AXRole | is | AXTabGroup |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'tab group' |
tabpanel
Associated changes since Core AAM 1.0:
- 04-Sep-2017: Fix AXSubrole for tabpanel: Should be AXTabPanel; not TabPanel.
- 21-Mar-2014: Added UIA.
if given <div role='tabpanel' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for tabpanel.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_PANE or ROLE_SYSTEM_PROPERTYPAGE |
UIA | property | ControlType | is | Pane |
ATK | property | role | is | ROLE_SCROLL_PANE |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXTabPanel | |
property | AXRoleDescription | is | 'tab panel' |
term NEW
Associated changes since Core AAM 1.0:
- The term role is new to ARIA 1.1 and thus needs full testing.
- 04-Aug-2017: Correct IAccessible2 mapping for term role, changing it from ROLE_SYSTEM_LISTITEM to IA2_ROLE_TEXT_FRAME.
- 07-Dec-2016: Added UIA mappings for term.
- 08-Sep-2016: Added term role mappings.
if given <div role='term' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for term.
element test | ||||
IAccessible2 | property | role | is | IA2_ROLE_TEXT_FRAME |
property | objectAttributes | contains | xml-roles:term | |
UIA | property | ControlType | is | Text |
property | LocalizedControlType | is | term | |
ATK | property | role | is | ROLE_DESCRIPTION_TERM |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXTerm | |
property | AXRoleDescription | is | 'term' |
textbox when aria-multiline is false
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='textbox' contenteditable aria-multiline='false' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for textbox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_TEXT |
IAccessible2 | property | states | contains | IA2_STATE_SINGLE_LINE |
UIA | property | ControlType | is | Edit |
ATK | property | role | is | ROLE_ENTRY |
property | states | contains | STATE_SINGLE_LINE | |
property | interfaces | contains | EditableText | |
AXAPI | property | AXRole | is | AXTextField |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'text field' |
textbox when aria-multiline is true
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='textbox' contenteditable aria-multiline='true' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for textbox.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_TEXT |
IAccessible2 | property | states | contains | IA2_STATE_MULTI_LINE |
UIA | property | ControlType | is | Edit |
ATK | property | role | is | ROLE_ENTRY |
property | states | contains | STATE_MULTI_LINE | |
property | interfaces | contains | EditableText | |
AXAPI | property | AXRole | is | AXTextArea |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'text entry area' |
timer
Associated changes since Core AAM 1.0:
- 30-May-2014: Modified ATK/AT-SPI mappings for timer.
- 21-Mar-2014: Added UIA.
if given <div role='timer' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for timer.
element test | ||||
IAccessible2 | property | objectAttributes | contains | xml-roles:timer |
property | objectAttributes | contains | container-live:off | |
property | objectAttributes | contains | live:off | |
property | objectAttributes | contains | container-live-role:timer | |
UIA | property | ControlType | is | Group |
property | LocalizedControlType | is | timer | |
property | LiveSetting | is | Off (0) | |
ATK | property | role | is | ROLE_TIMER |
property | objectAttributes | contains | container-live:off | |
property | objectAttributes | contains | live:off | |
property | objectAttributes | contains | container-live-role:timer | |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXApplicationTimer | |
property | AXRoleDescription | is | 'timer' |
toolbar
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='toolbar' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for toolbar.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_TOOLBAR |
UIA | property | ControlType | is | ToolBar |
ATK | property | role | is | ROLE_TOOL_BAR |
AXAPI | property | AXRole | is | AXToolbar |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'toolbar' |
tooltip
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='tooltip' id='test'>content</div> then expose the element with id of 'test' with the platform role mappings for tooltip.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_TOOLTIP |
UIA | property | ControlType | is | ToolTip |
ATK | property | role | is | ROLE_TOOL_TIP |
AXAPI | property | AXRole | is | AXGroup |
property | AXSubrole | is | AXUserInterfaceTooltip | |
property | AXRoleDescription | is | 'tooltip' |
tree
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='tree' id='test'> <div role='treeitem'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for tree.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_OUTLINE |
IAccessible2 | result | IAccessible::accSelect() | is | TBD |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | Tree |
ATK | property | role | is | ROLE_TREE |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXOutline |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'outline' |
treegrid
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='treegrid' id='test'> <div role='row'> <div role='gridcell'>content</div> </div> </div> then expose the element with id of 'test' with the platform role mappings for treegrid.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_OUTLINE |
IAccessible2 | property | interfaces | contains | IAccessibleTable2 |
result | IAccessible::accSelect() | is | TBD | |
result | IAccessible::get_accSelection() | is | TBD | |
UIA | property | ControlType | is | DataGrid |
ATK | property | role | is | ROLE_TREE_TABLE |
property | interfaces | contains | Table | |
property | interfaces | contains | Selection | |
AXAPI | property | AXRole | is | AXTable |
property | AXSubrole | is | <nil> | |
property | AXRoleDescription | is | 'table' |
treeitem
Associated changes since Core AAM 1.0:
- 30-May-2014: Modified ATK/AT-SPI mappings for treeitem.
- 21-Mar-2014: Added UIA.
if given <div role='tree'> <div role='treeitem' id='test'>content</div> </div> then expose the element with id of 'test' with the platform role mappings for treeitem.
element test | ||||
MSAA | property | role | is | ROLE_SYSTEM_OUTLINEITEM |
UIA | property | ControlType | is | TreeItem |
ATK | property | role | is | ROLE_TREE_ITEM |
AXAPI | property | AXRole | is | AXRow |
property | AXSubrole | is | AXOutlineRow | |
property | AXRoleDescription | is | 'outline row' |
State and Property Mapping Tests
aria-activedescendant (TODO)
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
aria-atomic=true
aria-atomic=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-atomic='true' aria-live='polite'> <div role='group' id='child'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-atomic='true'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | atomic:true |
property | objectAttributes | contains | container-atomic:true | |
UIA | property | AriaProperties.atomic | is | true |
ATK | property | objectAttributes | contains | atomic:true |
property | objectAttributes | contains | container-atomic:true | |
AXAPI | property | AXARIAAtomic | is | YES |
element child | ||||
IAccessible2 | property | objectAttributes | contains | container-atomic:true |
relation | IA2_RELATION_MEMBER_OF | is | [test] | |
ATK | property | objectAttributes | contains | container-atomic:true |
relation | RELATION_MEMBER_OF | is | [test] |
aria-atomic=false
aria-atomic=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-atomic='false' aria-live='polite'> <div role='group' id='child'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-atomic='false'.
element test | ||||
IAccessible2 | property | objectAttributes | doesNotContain | atomic:true |
property | objectAttributes | doesNotContain | container-atomic:true | |
UIA | property | AriaProperties.atomic | is | false |
ATK | property | objectAttributes | doesNotContain | atomic:true |
property | objectAttributes | doesNotContain | container-atomic:true | |
AXAPI | property | AXARIAAtomic | is | NO |
aria-autocomplete=inline
aria-autocomplete=inline, list, or both in the Core AAM
Associated changes since Core AAM 1.0:
- 08-Aug-2017: Update UIA mappings for aria-autocomplete to "not-mapped" (thus not testable).
if given <div role='combobox' id='test' aria-autocomplete='inline'> <div role='textbox'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-autocomplete='inline'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | autocomplete:inline |
property | states | contains | IA2_STATE_SUPPORTS_AUTOCOMPLETION | |
ATK | property | objectAttributes | contains | autocomplete:inline |
property | states | contains | STATE_SUPPORTS_AUTOCOMPLETION |
aria-autocomplete=list
aria-autocomplete=inline, list, or both in the Core AAM
Associated changes since Core AAM 1.0:
- 08-Aug-2017: Update UIA mappings for aria-autocomplete to "not-mapped" (thus not testable).
if given <div role='combobox' id='test' aria-autocomplete='list'> <div role='textbox'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-autocomplete='list'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | autocomplete:list |
property | states | contains | IA2_STATE_SUPPORTS_AUTOCOMPLETION | |
ATK | property | objectAttributes | contains | autocomplete:list |
property | states | contains | STATE_SUPPORTS_AUTOCOMPLETION |
aria-autocomplete=both
aria-autocomplete=inline, list, or both in the Core AAM
Associated changes since Core AAM 1.0:
- 08-Aug-2017: Update UIA mappings for aria-autocomplete to "not-mapped" (thus not testable).
if given <div role='combobox' id='test' aria-autocomplete='both'> <div role='textbox'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-autocomplete='both'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | autocomplete:both |
property | states | contains | IA2_STATE_SUPPORTS_AUTOCOMPLETION | |
ATK | property | objectAttributes | contains | autocomplete:both |
property | states | contains | STATE_SUPPORTS_AUTOCOMPLETION |
aria-busy=true
aria-busy=true in the Core AAM
Associated changes since Core AAM 1.0:
- 15-May-2014: Change AXAPI mapping for aria-busy (now AXElementBusy; not AXARIABusy).
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-busy='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-busy='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_BUSY |
UIA | property | AriaProperties.busy | is | true |
ATK | property | states | contains | STATE_BUSY |
AXAPI | property | AXElementBusy | is | YES |
aria-busy=false
aria-busy=false in the Core AAM
Associated changes since Core AAM 1.0:
- 15-May-2014: Change AXAPI mapping for aria-busy (now AXElementBusy; not AXARIABusy).
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-busy='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-busy='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_BUSY |
UIA | property | AriaProperties.busy | is | false |
ATK | property | states | doesNotContain | STATE_BUSY |
AXAPI | property | AXElementBusy | is | NO |
aria-checked=true on checkbox
aria-checked=true in the Core AAM
Associated changes since Core AAM 1.0:
- 05-Jun-2014: Modified ATK/AT-SPI mappings for checkbox, menuitemcheckbox, menuitemradio, and aria-checked.
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test' aria-checked='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-checked='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_CHECKED |
IAccessible2 | property | objectAttributes | contains | checkable:true |
UIA | property | Toggle.ToggleState | is | On (1) |
ATK | property | states | contains | STATE_CHECKABLE |
property | states | contains | STATE_CHECKED | |
AXAPI | property | AXValue | is | 1 |
aria-checked=true in the Core AAM
Associated changes since Core AAM 1.0:
- 05-Jun-2014: Modified ATK/AT-SPI mappings for checkbox, menuitemcheckbox, menuitemradio, and aria-checked.
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitemradio' id='test' aria-checked='true'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-checked='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_CHECKED |
IAccessible2 | property | objectAttributes | contains | checkable:true |
UIA | property | Toggle.ToggleState | is | On (1) |
property | SelectionItem.IsSelected | is | True | |
ATK | property | states | contains | STATE_CHECKABLE |
property | states | contains | STATE_CHECKED | |
AXAPI | property | AXValue | is | 1 |
property | AXMenuItemMarkChar | is | "✓" |
aria-checked=false on checkbox
aria-checked=false in the Core AAM
Associated changes since Core AAM 1.0:
- 05-Jun-2014: Modified ATK/AT-SPI mappings for checkbox, menuitemcheckbox, menuitemradio, and aria-checked.
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test' aria-checked='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-checked='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_CHECKED |
IAccessible2 | property | objectAttributes | contains | checkable:true |
UIA | property | Toggle.ToggleState | is | Off (0) |
ATK | property | states | contains | STATE_CHECKABLE |
property | states | doesNotContain | STATE_CHECKED | |
AXAPI | property | AXValue | is | 0 |
aria-checked=false in the Core AAM
Associated changes since Core AAM 1.0:
- 05-Jun-2014: Modified ATK/AT-SPI mappings for checkbox, menuitemcheckbox, menuitemradio, and aria-checked.
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitemradio' id='test' aria-checked='false'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-checked='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_CHECKED |
IAccessible2 | property | objectAttributes | contains | checkable:true |
UIA | property | Toggle.ToggleState | is | Off (0) |
property | SelectionItem.IsSelected | is | False | |
ATK | property | states | contains | STATE_CHECKABLE |
property | states | doesNotContain | STATE_CHECKED | |
AXAPI | property | AXValue | is | 0 |
property | AXMenuItemMarkChar | is | <nil> |
aria-checked=mixed
aria-checked=mixed in the Core AAM
Associated changes since Core AAM 1.0:
- 05-Jun-2014: Modified ATK/AT-SPI mappings for checkbox, menuitemcheckbox, menuitemradio, and aria-checked.
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test' aria-checked='mixed'>content</div> then expose the element with id of 'test' with the platform mappings for aria-checked='mixed'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_MIXED |
IAccessible2 | property | objectAttributes | contains | checkable:true |
UIA | property | Toggle.ToggleState | is | Indeterminate (2) |
ATK | property | states | contains | STATE_INDETERMINATE |
property | states | contains | STATE_CHECKABLE | |
property | states | doesNotContain | STATE_CHECKED | |
AXAPI | property | AXValue | is | 2 |
aria-colcount NEW
Associated changes since Core AAM 1.0:
- aria-colcount and aria-rowcount are new to ARIA 1.1 and thus need full testing.
- 07-Aug-2017: Update ATK mappings for indeterminate colcount and rowcount.
- 20-Jan-2017: Added AX API mappings for aria-colcount and aria-rowcount.
- 07-Dec-2016: Added UIA mappings for aria-colcount and aria-rowcount.
if given <div role='table' id='test' aria-colcount='3'> <div role='row'> <div role='cell' id='cell'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-colcount.
element test | ||||
IAccessible2 | property | objectAttributes | contains | colcount:3 |
UIA | property | Grid.ColumnCount | is | 3 |
ATK | property | objectAttributes | contains | colcount:3 |
result | atk_table_get_n_columns() | is | 3 | |
AXAPI | property | AXARIAColumnCount | is | 3 |
element cell | ||||
IAccessible2 | property | groupPosition | contains | similarItemsInGroup:3 |
aria-colindex NEW
Associated changes since Core AAM 1.0:
- aria-colindex and aria-rowindex are new to ARIA 1.1 and thus need full testing.
- 20-Jan-2017: Added AX API mappings for aria-colindex and aria-rowindex.
- 08-Sep-2016: Updated table properties for row and column for MSAA/IA2 and ATK/AT-SPI.
- 03-Jan-2016: Added UIA mappings for aria-colindex and aria-rowindex. Added placeholders for the other AAPIs.
if given <div role='grid'> <div role='row'> <div role='cell' id='test' aria-colindex='3'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-colindex.
element test | ||||
IAccessible2 | property | objectAttributes | contains | colindex:3 |
property | groupPosition | contains | positionInGroup:3 | |
UIA | property | GridItem.Column | is | 2 |
ATK | property | objectAttributes | contains | colindex:3 |
result | atk_table_cell_get_position() | contains | column=2 | |
AXAPI | property | AXARIAColumnIndex | is | 3 |
aria-colspan NEW
Associated changes since Core AAM 1.0:
- aria-colspan and aria-rowspan are new to ARIA 1.1 and thus need full testing.
- 20-Jan-2017: Added AX API mappings for aria-colspan and aria-rowspan.
- 07-Dec-2016: Added UIA mappings for aria-colspan and aria-rowspan.
- 08-Sep-2016: Added aria-colspan and aria-rowspan mappings.
if given <div role='grid'> <div role='row'> <div role='cell' id='test' aria-colspan='3'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-colspan.
element test | ||||
IAccessible2 | property | objectAttributes | contains | colspan:3 |
property | columnExtent | is | 3 | |
UIA | property | GridItem.ColumnSpan | is | 3 |
ATK | property | objectAttributes | contains | colspan:3 |
result | atk_table_cell_get_row_column_span() | contains | column_span=3 | |
AXAPI | property | AXColumnIndexRange.length | is | 3 |
aria-controls
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='combobox' id='test' aria-controls='list'> <div role='textbox'>content</div> </div> <div role='listbox' id='list'> <div role='option'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-controls.
element test | ||||
IAccessible2 | relation | IA2_RELATION_CONTROLLER_FOR | is | [list] |
UIA | property | ControllerFor | is | [list] |
ATK | relation | RELATION_CONTROLLER_FOR | is | [list] |
AXAPI | property | AXLinkedUIElements | is | [list] |
element list | ||||
IAccessible2 | relation | IA2_RELATION_CONTROLLED_BY | is | [test] |
ATK | relation | RELATION_CONTROLLED_BY | is | [test] |
aria-current with non-false allowed value NEW
aria-current with non-false allowed value in the Core AAM
Associated changes since Core AAM 1.0:
- aria-current is new to ARIA 1.1 and thus needs full testing.
- 21-Jul-2017: Add aria-current mapping to "true" when value is not in list of allowed values.
- 28-Mar-2017: Changed MSAA/IA2 and ATK/AT-SPI object attribute for aria-current mapping from "active" to "current".
- 25-Jan-2016: Added AX API mappings for aria-current.
- 15-Jan-2016: Added UIA mappings for aria-current.
- 11-Jan-2016: Finalized IA2 mapping of aria-current.
- 25-Jun-2015: ATK/AT-SPI mapping for aria-current.
if given <div role='group' id='test' aria-current='step'>content</div> then expose the element with id of 'test' with the platform mappings for aria-current with non-false allowed value.
element test | ||||
IAccessible2 | property | objectAttributes | contains | current:step |
UIA | property | AriaProperties.current | is | "step" |
ATK | property | objectAttributes | contains | current:step |
property | states | contains | STATE_ACTIVE | |
AXAPI | property | AXARIACurrent | is | "step" |
aria-current with unrecognized value NEW
aria-current with unrecognized value in the Core AAM
Associated changes since Core AAM 1.0:
- aria-current is new to ARIA 1.1 and thus needs full testing.
- 21-Jul-2017: Add aria-current mapping to "true" when value is not in list of allowed values.
- 28-Mar-2017: Changed MSAA/IA2 and ATK/AT-SPI object attribute for aria-current mapping from "active" to "current".
- 25-Jan-2016: Added AX API mappings for aria-current.
- 15-Jan-2016: Added UIA mappings for aria-current.
- 11-Jan-2016: Finalized IA2 mapping of aria-current.
- 25-Jun-2015: ATK/AT-SPI mapping for aria-current.
if given <div role='group' id='test' aria-current='foo'>content</div> then expose the element with id of 'test' with the platform mappings for aria-current with unrecognized value.
element test | ||||
IAccessible2 | property | objectAttributes | contains | current:true |
UIA | property | AriaProperties.current | is | true |
ATK | property | objectAttributes | contains | current:true |
property | states | contains | STATE_ACTIVE | |
AXAPI | property | AXARIACurrent | is | true |
aria-describedby
aria-describedby in the Core AAM
Associated changes since Core AAM 1.0:
- 04-Apr-2016: Added new UIA FullDescription property for mapping aria-describedby.
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-describedby='description'>content</div> <div id='description'>hello world</div> then expose the element with id of 'test' with the platform mappings for aria-describedby.
element test | ||||
IAccessible2 | property | accDescription | is | "hello world" |
relation | IA2_RELATION_DESCRIBED_BY | is | [description] | |
UIA | property | FullDescription | is | "hello world" |
property | DescribedBy | is | [description] | |
ATK | property | description | is | "hello world" |
relation | RELATION_DESCRIBED_BY | is | [description] | |
AXAPI | property | AXHelp | is | "hello world" |
element description | ||||
IAccessible2 | relation | IA2_RELATION_DESCRIPTION_FOR | is | [test] |
ATK | relation | RELATION_DESCRIPTION_FOR | is | [test] |
aria-details NEW
Associated changes since Core AAM 1.0:
- aria-details is new to ARIA 1.1 and thus needs full testing.
- Note: aria-details is not mapped in AX API.
- 07-Dec-2016: Added UIA mappings for aria-details.
- 04-Oct-2016: Add reverse relationships for aria-details on platforms MSAA/IA2 and ATK/ATSPI.
- 08-Sep-2016: Added MSAA+IA2 and ATK/AT-SPI mappings of aria-details.
if given <div role='group' id='test' aria-details='details'>content</div> <div id='details'>hello world</div> then expose the element with id of 'test' with the platform mappings for aria-details.
element test | ||||
IAccessible2 | relation | IA2_RELATION_DETAILS | is | [details] |
UIA | property | DescribedBy | is | [details] |
ATK | relation | RELATION_DETAILS | is | [details] |
element details | ||||
IAccessible2 | relation | IA2_RELATION_DETAILS_FOR | is | [test] |
ATK | relation | RELATION_DETAILS_FOR | is | [test] |
aria-disabled=true
aria-disabled=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-disabled='true'> <div role='checkbox' id='checkbox' tabindex='0'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-disabled='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_UNAVAILABLE |
UIA | property | IsEnabled | is | false |
ATK | property | states | doesNotContain | STATE_ENABLED |
AXAPI | property | AXEnabled | is | NO |
element checkbox | ||||
MSAA | property | states | contains | STATE_SYSTEM_UNAVAILABLE |
aria-disabled=false
aria-disabled=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-disabled='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-disabled='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_UNAVAILABLE |
UIA | property | IsEnabled | is | true |
ATK | property | states | contains | STATE_ENABLED |
AXAPI | property | AXEnabled | is | YES |
aria-dropeffect=copy
aria-dropeffect=copy, move, link, execute, or popup in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-dropeffect='copy'>content</div> then expose the element with id of 'test' with the platform mappings for aria-dropeffect='copy'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | dropeffect:copy |
UIA | property | AriaProperties.dropeffect | is | "copy" |
ATK | property | objectAttributes | contains | dropeffect:copy |
AXAPI | property | AXDropEffects | is | [copy] |
aria-dropeffect=move
aria-dropeffect=copy, move, link, execute, or popup in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-dropeffect='move'>content</div> then expose the element with id of 'test' with the platform mappings for aria-dropeffect='move'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | dropeffect:move |
UIA | property | AriaProperties.dropeffect | is | "move" |
ATK | property | objectAttributes | contains | dropeffect:move |
AXAPI | property | AXDropEffects | is | [move] |
aria-dropeffect=link
aria-dropeffect=copy, move, link, execute, or popup in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-dropeffect='link'>content</div> then expose the element with id of 'test' with the platform mappings for aria-dropeffect='link'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | dropeffect:link |
UIA | property | AriaProperties.dropeffect | is | "link" |
ATK | property | objectAttributes | contains | dropeffect:link |
AXAPI | property | AXDropEffects | is | [link] |
aria-dropeffect=execute
aria-dropeffect=copy, move, link, execute, or popup in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-dropeffect='execute'>content</div> then expose the element with id of 'test' with the platform mappings for aria-dropeffect='execute'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | dropeffect:execute |
UIA | property | AriaProperties.dropeffect | is | "execute" |
ATK | property | objectAttributes | contains | dropeffect:execute |
AXAPI | property | AXDropEffects | is | [execute] |
aria-dropeffect=popup
aria-dropeffect=copy, move, link, execute, or popup in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-dropeffect='popup'>content</div> then expose the element with id of 'test' with the platform mappings for aria-dropeffect='popup'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | dropeffect:popup |
UIA | property | AriaProperties.dropeffect | is | "popup" |
ATK | property | objectAttributes | contains | dropeffect:popup |
AXAPI | property | AXDropEffects | is | [popup] |
aria-dropeffect=none
aria-dropeffect=none in the Core AAM
if given <div role='group' id='test' aria-dropeffect='none'>content</div> then expose the element with id of 'test' with the platform mappings for aria-dropeffect='none'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | dropeffect:none |
ATK | property | objectAttributes | contains | dropeffect:none |
aria-errormessage
aria-errormessage in the Core AAM
Associated changes since Core AAM 1.0:
- aria-errormessage is new to ARIA 1.1 and thus needs full testing
- 09-Aug-2017: Add macOS AXValidationError/AXValidationErrorChanged for aria-errormessage.
- 20-Jul-2017: Correct IA2 mapping for aria-errormessage: It should be IA2_RELATION_ERROR; not IA2_RELATION_ERROR_MESSAGE.
- 04-Oct-2016: Add reverse relationships for aria-errormessage on platforms MSAA/IA2 and ATK/ATSPI
- 08-Sep-2016: Added MSAA+IA2 and ATK/AT-SPI mappings of aria-errormessage.
- 02-Feb-2016: Added UIA mapping for aria-errormessage.
if given <div role='group' id='test' aria-errormessage='error' aria-invalid='true'>content</div> <div id='error'>hello world</div> then expose the element with id of 'test' with the platform mappings for aria-errormessage.
element test | ||||
IAccessible2 | relation | IA2_RELATION_ERROR | is | [error] |
UIA | property | ControllerFor | is | error |
ATK | relation | RELATION_ERROR_MESSAGE | is | [error] |
AXAPI | property | AXValidationError | is | "hello world" |
element error | ||||
IAccessible2 | relation | IA2_RELATION_ERROR_FOR | is | [test] |
ATK | relation | RELATION_ERROR_FOR | is | [test] |
aria-expanded=true
aria-expanded=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test' aria-expanded='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-expanded='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_EXPANDED |
UIA | property | ExpandCollapse.ExpandCollapseState | is | Expanded |
ATK | property | states | contains | STATE_EXPANDABLE |
property | states | contains | STATE_EXPANDED | |
AXAPI | property | AXExpanded | is | YES |
aria-expanded=false
aria-expanded=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test' aria-expanded='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-expanded='false'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_COLLAPSED |
UIA | property | ExpandCollapse.ExpandCollapseState | is | Collapsed |
ATK | property | states | contains | STATE_EXPANDABLE |
property | states | doesNotContain | STATE_EXPANDED | |
AXAPI | property | AXExpanded | is | NO |
aria-flowto
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-flowto='next'>content</div> <div role='group' id='next'>content</div> then expose the element with id of 'test' with the platform mappings for aria-flowto.
element test | ||||
IAccessible2 | relation | IA2_RELATION_FLOWS_TO | is | [next] |
UIA | property | FlowsTo | is | [next] |
ATK | relation | RELATION_FLOWS_TO | is | [next] |
AXAPI | property | AXLinkedUIElements | is | [next] |
element next | ||||
IAccessible2 | relation | IA2_RELATION_FLOWS_FROM | is | [test] |
ATK | relation | RELATION_FLOWS_FROM | is | [test] |
aria-grabbed=true
aria-grabbed=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-grabbed='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-grabbed='true'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | grabbed:true |
UIA | property | AriaProperties.grabbed | is | true |
ATK | property | objectAttributes | contains | grabbed:true |
AXAPI | property | AXGrabbed | is | YES |
aria-grabbed=false
aria-grabbed=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-grabbed='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-grabbed='false'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | grabbed:false |
UIA | property | AriaProperties.grabbed | is | false |
ATK | property | objectAttributes | contains | grabbed:false |
AXAPI | property | AXGrabbed | is | NO |
aria-haspopup=true
aria-haspopup=true in the Core AAM
Associated changes since Core AAM 1.0:
- 06-Jul-2017: Remove AXPress action from the macOS mapping of aria-haspopup. (Note: Test needs to use element and role that lacks any other reason for having the AXPress action.)
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-haspopup='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-haspopup='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_HASPOPUP |
IAccessible2 | property | objectAttributes | contains | haspopup:true |
UIA | property | Control Pattern | is | ExpandCollapse |
ATK | property | states | contains | STATE_HAS_POPUP |
property | objectAttributes | contains | haspopup:true | |
AXAPI | property | actions | contains | AXShowMenu |
property | actions | doesNotContain | AXPress |
aria-haspopup=false
aria-haspopup=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-haspopup='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-haspopup='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_HASPOPUP |
IAccessible2 | property | objectAttributes | contains | haspopup:false |
aria-haspopup=dialog NEW
aria-haspopup=dialog in the Core AAM
Associated changes since Core AAM 1.0:
- aria-haspopup switched from boolean to token in ARIA 1.1.
- 06-Jul-2017: Remove AXPress action from the macOS mapping of aria-haspopup. (Note: Test needs to use element and role that lacks any other reason for having the AXPress action.)
- 06-Jul-2017: Remove AXPress action from the macOS mapping of aria-haspopup. (Note: Test needs to use element and role that lacks any other reason for having the AXPress action.)
- 06-Jun-2016: Added MSAA+IA2, UIA, and ATK/AT-SPI mappings for the new values of aria-haspopup added for ARIA 1.1.
- 06-May-2016: Added changes for revised values for aria-haspopup for ATK/AT-SPI and MSAA+IA2 along with error handling.
if given <div role='group' id='test' aria-haspopup='dialog'>content</div> then expose the element with id of 'test' with the platform mappings for aria-haspopup='dialog'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_HASPOPUP |
IAccessible2 | property | objectAttributes | contains | haspopup:dialog |
UIA | property | Control Pattern | is | ExpandCollapse |
ATK | property | states | contains | STATE_HAS_POPUP |
property | objectAttributes | contains | haspopup:dialog | |
AXAPI | property | actions | contains | AXShowMenu |
property | actions | doesNotContain | AXPress |
aria-haspopup=listbox NEW
aria-haspopup=listbox in the Core AAM
Associated changes since Core AAM 1.0:
- aria-haspopup switched from boolean to token in ARIA 1.1.
- 06-Jul-2017: Remove AXPress action from the macOS mapping of aria-haspopup. (Note: Test needs to use element and role that lacks any other reason for having the AXPress action.)
- 06-Jun-2016: Added MSAA+IA2, UIA, and ATK/AT-SPI mappings for the new values of aria-haspopup added for ARIA 1.1.
- 06-May-2016: Added changes for revised values for aria-haspopup for ATK/AT-SPI and MSAA+IA2 along with error handling.
if given <div role='group' id='test' aria-haspopup='listbox'>content</div> then expose the element with id of 'test' with the platform mappings for aria-haspopup='listbox'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_HASPOPUP |
IAccessible2 | property | objectAttributes | contains | haspopup:listbox |
UIA | property | Control Pattern | is | ExpandCollapse |
ATK | property | states | contains | STATE_HAS_POPUP |
property | objectAttributes | contains | haspopup:listbox | |
AXAPI | property | actions | contains | AXShowMenu |
property | actions | doesNotContain | AXPress |
aria-haspopup=menu in the Core AAM
Associated changes since Core AAM 1.0:
- aria-haspopup switched from boolean to token in ARIA 1.1.
- 06-Jul-2017: Remove AXPress action from the macOS mapping of aria-haspopup. (Note: Test needs to use element and role that lacks any other reason for having the AXPress action.)
- 06-Jun-2016: Added MSAA+IA2, UIA, and ATK/AT-SPI mappings for the new values of aria-haspopup added for ARIA 1.1.
- 06-May-2016: Added changes for revised values for aria-haspopup for ATK/AT-SPI and MSAA+IA2 along with error handling.
if given <div role='group' id='test' aria-haspopup='menu'>content</div> then expose the element with id of 'test' with the platform mappings for aria-haspopup='menu'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_HASPOPUP |
IAccessible2 | property | objectAttributes | contains | haspopup:menu |
UIA | property | Control Pattern | is | ExpandCollapse |
ATK | property | states | contains | STATE_HAS_POPUP |
property | objectAttributes | contains | haspopup:menu | |
AXAPI | property | actions | contains | AXShowMenu |
property | actions | doesNotContain | AXPress |
aria-haspopup=tree NEW
aria-haspopup=tree in the Core AAM
Associated changes since Core AAM 1.0:
- aria-haspopup switched from boolean to token in ARIA 1.1.
- 06-Jul-2017: Remove AXPress action from the macOS mapping of aria-haspopup. (Note: Test needs to use element and role that lacks any other reason for having the AXPress action.)
- 06-Jun-2016: Added MSAA+IA2, UIA, and ATK/AT-SPI mappings for the new values of aria-haspopup added for ARIA 1.1.
- 06-May-2016: Added changes for revised values for aria-haspopup for ATK/AT-SPI and MSAA+IA2 along with error handling.
if given <div role='group' id='test' aria-haspopup='tree'>content</div> then expose the element with id of 'test' with the platform mappings for aria-haspopup='tree'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_HASPOPUP |
IAccessible2 | property | objectAttributes | contains | haspopup:tree |
UIA | property | Control Pattern | is | ExpandCollapse |
ATK | property | states | contains | STATE_HAS_POPUP |
property | objectAttributes | contains | haspopup:tree | |
AXAPI | property | actions | contains | AXShowMenu |
property | actions | doesNotContain | AXPress |
Note: The mapping is a "SHOULD"; not a "MUST".
aria-hidden=true on unfocused element in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div id='test' aria-hidden='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-hidden='true'.
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
aria-hidden=true when element is focused or fires an accessibility event in the Core AAM
Associated changes since Core AAM 1.0:
- 24-March-2014: Updated mapping of aria-hidden=true to indicate that user agents should not expose unless the accessible object is focused or fires an accessibility event.
if given <div id='test' aria-hidden='true' tabindex='0'>content</div> then expose the element with id of 'test' with the platform mappings for aria-hidden='true'.
event test:focus | ||||
element test | ||||
MSAA | property | accessible | is | true |
IAccessible2 | property | objectAttributes | contains | hidden:true |
UIA | property | accessible | is | true |
property | AriaProperties.hidden | is | true | |
ATK | property | accessible | is | true |
property | objectAttributes | contains | hidden:true | |
AXAPI | property | accessible | is | true |
aria-invalid=true
aria-invalid=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-invalid='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-invalid='true'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:true | |
UIA | property | IsDataValidForForm | is | false |
ATK | property | states | contains | STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:true | |
AXAPI | property | AXInvalid | is | true |
aria-invalid=false
aria-invalid=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-invalid='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-invalid='false'.
element test | ||||
IAccessible2 | property | states | doesNotContain | IA2_STATE_INVALID_ENTRY |
UIA | property | IsDataValidForForm | is | true |
ATK | property | states | doesNotContain | STATE_INVALID_ENTRY |
AXAPI | property | AXInvalid | is | false |
aria-invalid=spelling
aria-invalid=spelling or grammar in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-invalid='spelling'>content</div> then expose the element with id of 'test' with the platform mappings for aria-invalid='spelling'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:spelling | |
UIA | property | IsDataValidForForm | is | "spelling" |
ATK | property | states | contains | STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:spelling | |
AXAPI | property | AXInvalid | is | "spelling" |
aria-invalid=grammar
aria-invalid=spelling or grammar in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-invalid='grammar'>content</div> then expose the element with id of 'test' with the platform mappings for aria-invalid='grammar'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:grammar | |
UIA | property | IsDataValidForForm | is | "grammar" |
ATK | property | states | contains | STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:grammar | |
AXAPI | property | AXInvalid | is | "grammar" |
aria-invalid with unrecognized value NEW
aria-invalid with unrecognized value in the Core AAM
Associated changes since Core AAM 1.0:
- 14-Nov-2014: Fixed mappings of aria-invalid=<unknown value>.
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-invalid='foo'>content</div> then expose the element with id of 'test' with the platform mappings for aria-invalid with unrecognized value.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:true | |
UIA | property | IsDataValidForForm | is | false |
ATK | property | states | contains | STATE_INVALID_ENTRY |
property | textAttributes | contains | invalid:true | |
AXAPI | property | AXInvalid | is | true |
aria-keyshortcuts NEW
aria-keyshortcuts in the Core AAM
Associated changes since Core AAM 1.0:
- aria-details is new to ARIA 1.1 and thus needs full testing.
- 04-Jul-2016: Added AX API mapping for aria-keyshortcuts (mapping is "not mapped")
- 27-Jun-2016: Added ATK/AT-SPI mapping for aria-keyshortcuts.
- 03-Jun-2016: Added MSAA+IA2 mapping of aria-keyshortcuts.
- 20-May-2016: Added UIA mapping of aria-keyshortcuts.
if given <div role='group' id='test' aria-keyshortcuts='Shift+Space'>content</div> then expose the element with id of 'test' with the platform mappings for aria-keyshortcuts.
element test | ||||
IAccessible2 | property | accKeyboardShortcut | is | Shift+Space |
UIA | property | AcceleratorKey | is | "Shift+Space" |
ATK | property | objectAttributes | contains | keyshortcuts:Shift+Space |
aria-label
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-label='hello world'>content</div> then expose the element with id of 'test' with the platform mappings for aria-label.
element test | ||||
IAccessible2 | property | accName | is | "hello world" |
UIA | property | Name | is | "hello world" |
ATK | property | name | is | "hello world" |
AXAPI | property | AXDescription | is | "hello world" |
aria-labelledby
aria-labelledby in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-labelledby='label'>content</div> <div id='label'>hello world</div> then the element with id of 'test' should get its name from the element with id of 'label'.
element test | ||||
IAccessible2 | property | accName | is | "hello world" |
relation | IA2_RELATION_LABELLED_BY | is | [label] | |
UIA | property | Name | is | "hello world" |
property | LabeledBy | is | [label] | |
ATK | property | name | is | "hello world" |
relation | RELATION_LABELLED_BY | is | [label] | |
AXAPI | property | AXDescription | is | "hello world" |
property | AXTitleUIElement | is | label | |
element label | ||||
IAccessible2 | relation | IA2_RELATION_LABEL_FOR | is | [test] |
ATK | relation | RELATION_LABEL_FOR | is | [test] |
aria-level on non-heading
aria-level on non-heading in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='tree'> <div role='treeitem' id='test' aria-level='5'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-level on non-heading.
element test | ||||
IAccessible2 | property | objectAttributes | contains | level:5 |
property | groupPosition | contains | groupLevel:5 | |
UIA | property | AriaProperties.level | is | 5 |
ATK | property | objectAttributes | contains | level:5 |
AXAPI | property | AXDisclosureLevel | is | 4 |
aria-level on heading
aria-level on heading in the Core AAM
Associated changes since Core AAM 1.0:
- 03-Nov-2014: Specified UIA mappings of aria-level when used in conjunction with role heading.
- 21-Mar-2014: Added UIA.
if given <div role='heading' id='test' aria-level='2'>content</div> then expose the element with id of 'test' with the platform mappings for aria-level on heading.
element test | ||||
IAccessible2 | property | objectAttributes | contains | level:2 |
UIA | property | AriaProperties.level | is | 2 |
property | StyleId_Heading | is | 2 | |
ATK | property | objectAttributes | contains | level:2 |
AXAPI | property | AXValue | is | 2 |
aria-live=assertive
aria-live=assertive in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-live='assertive'> <div role='group' id='child'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-live='assertive'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | live:assertive |
property | objectAttributes | contains | container-live:assertive | |
UIA | property | LiveSetting | is | "assertive" |
ATK | property | objectAttributes | contains | live:assertive |
property | objectAttributes | contains | container-live:assertive | |
AXAPI | property | AXARIALive | is | "assertive" |
element child | ||||
IAccessible2 | property | objectAttributes | contains | container-live:assertive |
ATK | property | objectAttributes | contains | container-live:assertive |
aria-live=polite
aria-live=polite in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-live='polite'> <div role='group' id='child'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-live='polite'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | live:polite |
property | objectAttributes | contains | container-live:polite | |
UIA | property | LiveSetting | is | "polite" |
ATK | property | objectAttributes | contains | live:polite |
property | objectAttributes | contains | container-live:polite | |
AXAPI | property | AXARIALive | is | "polite" |
element child | ||||
IAccessible2 | property | objectAttributes | contains | container-live:polite |
ATK | property | objectAttributes | contains | container-live:polite |
aria-live=off
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-live='off'> <div role='group' id='child'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-live='off'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | live:off |
property | objectAttributes | contains | container-live:off | |
UIA | property | LiveSetting | is | "off" |
ATK | property | objectAttributes | contains | live:off |
property | objectAttributes | contains | container-live:off | |
AXAPI | property | AXARIALive | is | "off" |
element child | ||||
IAccessible2 | property | objectAttributes | contains | container-live:off |
ATK | property | objectAttributes | contains | container-live:off |
aria-modal=true NEW
aria-modal=true in the Core AAM
Associated changes since Core AAM 1.0:
- aria-modal is new to ARIA 1.1 and thus needs full testing
- 11-Apr-2016: Added AX API mappings for aria-modal="true" and aria-modal="false".
- 27-Nov-2014: Added mappings for aria-modal property.
if given <div role='group' id='group'>content</div> <div role='dialog' id='test' aria-modal='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-modal='true'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_MODAL |
UIA | property | Window.IsModal | is | true |
ATK | property | states | contains | STATE_MODAL |
element group | ||||
AXAPI | property | accessible | is | false |
aria-modal=false NEW
aria-modal=false in the Core AAM
Associated changes since Core AAM 1.0:
- aria-modal is new to ARIA 1.1 and thus needs full testing
- 11-Apr-2016: Added AX API mappings for aria-modal="true" and aria-modal="false".
- 27-Nov-2014: Added mappings for aria-modal property.
if given <div role='group' id='group'>content</div> <div role='dialog' id='test' aria-modal='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-modal='false'.
element test | ||||
IAccessible2 | property | states | doesNotContain | IA2_STATE_MODAL |
UIA | property | Window.IsModal | is | false |
ATK | property | states | doesNotContain | STATE_MODAL |
element group | ||||
AXAPI | property | accessible | is | true |
aria-multiline=true
aria-multiline=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='textbox' id='test' aria-multiline='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-multiline='true'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_MULTI_LINE |
property | states | doesNotContain | IA2_STATE_SINGLE_LINE | |
UIA | property | AriaProperties.multiline | is | true |
ATK | property | states | contains | STATE_MULTI_LINE |
property | states | doesNotContain | STATE_SINGLE_LINE |
aria-multiline=false
aria-multiline=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='textbox' id='test' aria-multiline='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-multiline='false'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_SINGLE_LINE |
property | states | doesNotContain | IA2_STATE_MULTI_LINE | |
ATK | property | states | contains | STATE_SINGLE_LINE |
property | states | doesNotContain | STATE_MULTI_LINE |
aria-multiselectable=true
aria-multiselectable=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid' id='test' aria-multiselectable='true'> <div role='row'> <div role='cell'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-multiselectable='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_MULTISELECTABLE |
property | states | contains | STATE_SYSTEM_EXTSELECTABLE | |
UIA | property | Selection.CanSelectMultiple | is | true |
ATK | property | states | contains | STATE_MULTISELECTABLE |
aria-multiselectable=false
aria-multiselectable=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid' id='test' aria-multiselectable='false'> <div role='row'> <div role='cell'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-multiselectable='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_MULTISELECTABLE |
property | states | doesNotContain | STATE_SYSTEM_EXTSELECTABLE | |
ATK | property | states | doesNotContain | STATE_MULTISELECTABLE |
aria-orientation=horizontal
aria-orientation=horizontal in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar' id='test' aria-orientation='horizontal'>content</div> then expose the element with id of 'test' with the platform mappings for aria-orientation='horizontal'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_HORIZONTAL |
property | states | doesNotContain | IA2_STATE_VERTICAL | |
UIA | property | Orientation | is | horizontal |
ATK | property | states | contains | STATE_HORIZONTAL |
property | states | doesNotContain | STATE_VERTICAL | |
AXAPI | property | AXOrientation | is | AXHorizontalOrientation |
aria-orientation=vertical
aria-orientation=vertical in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar' id='test' aria-orientation='vertical'>content</div> then expose the element with id of 'test' with the platform mappings for aria-orientation='vertical'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_VERTICAL |
property | states | doesNotContain | IA2_STATE_HORIZONTAL | |
UIA | property | Orientation | is | vertical |
ATK | property | states | contains | STATE_VERTICAL |
property | states | doesNotContain | STATE_HORIZONTAL | |
AXAPI | property | AXOrientation | is | AXVerticalOrientation |
aria-orientation=undefined NEW
aria-orientation is undefined in the Core AAM
Associated changes since Core AAM 1.0:
- In ARIA 1.1, undefined became a supported value of aria-orientation. Thus this value needs full testing.
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar' id='test' aria-orientation='undefined'>content</div> then expose the element with id of 'test' with the platform mappings for aria-orientation='undefined'.
element test | ||||
ATK | property | states | doesNotContain | STATE_VERTICAL |
property | states | doesNotContain | STATE_HORIZONTAL | |
AXAPI | property | AXOrientation | is | AXUnknownOrientation |
aria-owns may need manual verification
NOTE: The mappings for some platforms have an either/or condition, namely either modify the tree or use accessible relations. The automated testing tools don't yet have smarts for that sort of thing. Hence flagging this situation in the name of the test.
Associated changes since Core AAM 1.0:
- 07-Sep-2017: Add statement to ATK and MSAA/IA2 mappings for aria-owns indicating that user agents may modify the accessibility tree as an alternative to using accessible relations.
- 31-Mar-2015: AX API mappings for aria-owns.
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-owns='owned1 owned2'>content</div> <div role='group' id='owned1'>content</div> <div role='group' id='owned2'>content</div> then expose the element with id of 'test' with the platform mappings for aria-owns.
element test | ||||
IAccessible2 | relation | IA2_RELATION_NODE_PARENT_OF | is | [owned1, owned2] |
UIA | property | Children | is | [owned1, owned2] |
ATK | relation | RELATION_NODE_PARENT_OF | is | [owned1, owned2] |
AXAPI | property | AXOwns | is | [owned1, owned2] |
element owned1 | ||||
IAccessible2 | relation | IA2_RELATION_NODE_CHILD_OF | is | [test] |
UIA | property | Parent | is | test |
ATK | relation | RELATION_NODE_CHILD_OF | is | [test] |
element owned2 | ||||
IAccessible2 | relation | IA2_RELATION_NODE_CHILD_OF | is | [test] |
UIA | property | Parent | is | test |
ATK | relation | RELATION_NODE_CHILD_OF | is | [test] |
aria-placeholder NEW
aria-placeholder in the Core AAM
Associated changes since Core AAM 1.0:
- aria-placeholder is new to ARIA 1.1 and thus needs full testing.
- 24-Oct-2016: Changed name of IA2 object property name for aria-placeholder to "placeholder-text" (was "placeholder").
- 31-Jul-2015: Finalized all mappings of aria-placeholder.
- 02-Jun-2015: MSAA+UIA Express and UIA mappings for aria-placeholder.
- 28-Apr-2015: ATK/AT-SPI mappings for aria-placeholder.
if given <div role='textbox' id='test' aria-placeholder='hello world'>content</div> then expose the element with id of 'test' with the platform mappings for aria-placeholder.
element test | ||||
IAccessible2 | property | objectAttributes | contains | placeholder-text:hello world |
UIA | property | AriaProperties.placeholder | is | "hello world" |
ATK | property | objectAttributes | contains | placeholder-text:hello world |
AXAPI | property | AXPlaceholderValue | is | "hello world" |
aria-posinset
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='list'> <div role='listitem' id='test' aria-posinset='2'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-posinset.
element test | ||||
IAccessible2 | property | objectAttributes | contains | posinset:2 |
property | groupPosition | contains | positionInGroup:2 | |
UIA | property | AriaProperties.posinset | is | 2 |
ATK | property | objectAttributes | contains | posinset:2 |
AXAPI | property | AXARIAPosInSet | is | 2 |
aria-pressed=true
aria-pressed=true in the Core AAM
Associated changes since Core AAM 1.0:
- 15-May-2014: Remove checkable:true object attribute from IA2 and ATK mappings
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test' aria-pressed='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-pressed='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_PRESSED |
IAccessible2 | property | objectAttributes | doesNotContain | checkable:true |
UIA | property | Toggle.ToggleState | is | On (1) |
ATK | property | states | contains | STATE_PRESSED |
property | objectAttributes | doesNotContain | checkable:true | |
AXAPI | property | AXValue | is | 1 |
aria-pressed=mixed
aria-pressed=mixed in the Core AAM
Associated changes since Core AAM 1.0:
- 04-Aug-2017: Correct MSAA mapping for aria-pressed="mixed", changing it from STATE_SYSTEM_PRESSED to STATE_SYSTEM_MIXED.
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test' aria-pressed='mixed'>content</div> then expose the element with id of 'test' with the platform mappings for aria-pressed='mixed'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_MIXED |
UIA | property | Toggle.ToggleState | is | Indeterminate (2) |
ATK | property | states | contains | STATE_INDETERMINATE |
AXAPI | property | AXValue | is | 2 |
aria-pressed=false
aria-pressed=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button' id='test' aria-pressed='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-pressed='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_PRESSED |
UIA | property | Toggle.ToggleState | is | Off (3) |
ATK | property | states | doesNotContain | STATE_PRESSED |
AXAPI | property | AXValue | is | 0 |
aria-readonly=true on checkbox
aria-readonly=true in the Core AAM
Associated changes since Core AAM 1.0:
- 02-Aug-2017: For aria-readonly="true", add statement that ATK_STATE_CHECKABLE not be exposed on roles which support aria-checked.
- 27-Apr-2017: Replaced deprecated AX API accessibilityIsAttributeSettable() with AXUIElementIsAttributeSettable().
- 08-Aug-2016: Modified ATK/AT-SPI mappings of aria-readonly.
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test' aria-readonly='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-readonly='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_READONLY |
UIA | property | Value.IsReadOnly | is | true |
ATK | property | states | contains | STATE_READ_ONLY |
property | states | doesNotContain | STATE_CHECKABLE | |
AXAPI | result | AXUIElementIsAttributeSettable(AXValue) | is | NO |
aria-readonly=true on radiogroup
aria-readonly=true in the Core AAM
Associated changes since Core AAM 1.0:
- 02-Aug-2017: For aria-readonly="true", add statement that ATK_STATE_CHECKABLE not be exposed on roles which support aria-checked.
- 27-Apr-2017: Replaced deprecated AX API accessibilityIsAttributeSettable() with AXUIElementIsAttributeSettable().
- 08-Aug-2016: Modified ATK/AT-SPI mappings of aria-readonly.
- 21-Mar-2014: Added UIA.
if given <div role='radiogroup' id='test' aria-readonly='true'> <div role='radio' id='radio'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-readonly='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_READONLY |
UIA | property | Value.IsReadOnly | is | true |
ATK | property | states | contains | STATE_READ_ONLY |
AXAPI | result | AXUIElementIsAttributeSettable(AXValue) | is | NO |
element radio | ||||
ATK | property | states | doesNotContain | STATE_CHECKABLE |
aria-readonly=true on textbox
aria-readonly=true in the Core AAM
Associated changes since Core AAM 1.0:
- 27-Apr-2017: Replaced deprecated AX API accessibilityIsAttributeSettable() with AXUIElementIsAttributeSettable().
- 08-Aug-2016: Modified ATK/AT-SPI mappings of aria-readonly.
- 21-Mar-2014: Added UIA.
if given <div role='textbox' id='test' aria-readonly='true'>content</div> then expose the element with id of 'test' with the platform mappings for aria-readonly='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_READONLY |
UIA | property | Value.IsReadOnly | is | true |
ATK | property | states | contains | STATE_READ_ONLY |
property | states | doesNotContain | STATE_EDITABLE | |
AXAPI | result | AXUIElementIsAttributeSettable(AXValue) | is | NO |
aria-readonly=false
aria-readonly=false in the Core AAM
Associated changes since Core AAM 1.0:
- 02-Aug-2017: Change mapping of aria-readonly="false" from exposing ATK_STATE_EDITABLE on textbox to clearing ATK_STATE_READ_ONLY.
- 27-Apr-2017: Replaced deprecated AX API accessibilityIsAttributeSettable() with AXUIElementIsAttributeSettable().
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test' aria-readonly='false'>content</div> then expose the element with id of 'test' with the platform mappings for aria-readonly='false'.
element test | ||||
MSAA | property | states | doesNotContain | STATE_SYSTEM_READONLY |
IAccessible2 | property | states | contains | IA2_STATE_EDITABLE |
UIA | property | Value.IsReadOnly | is | false |
ATK | property | states | doesNotContain | STATE_READ_ONLY |
AXAPI | result | AXUIElementIsAttributeSettable(AXValue) | is | YES |
aria-readonly is unspecified on gridcell NEW
aria-readonly is unspecified on gridcell in the Core AAM
Associated changes since Core AAM 1.0:
- Inheritance of the value of aria-readonly from the grid is new to ARIA 1.1.
- 27-Apr-2017: Replaced deprecated AX API accessibilityIsAttributeSettable() with AXUIElementIsAttributeSettable().
if given <div role='grid' aria-readonly='true'> <div role='row'> <div role='gridcell' id='test'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-readonly inherited from the grid.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_READONLY |
UIA | property | Value.IsReadOnly | is | true |
ATK | property | states | contains | STATE_READ_ONLY |
property | states | doesNotContain | STATE_EDITABLE | |
AXAPI | result | AXUIElementIsAttributeSettable(AXValue) | is | NO |
aria-relevant
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test' aria-relevant='additions' aria-live='polite'> <div role='group' id='child'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-relevant.
element test | ||||
IAccessible2 | property | objectAttributes | contains | relevant:additions |
property | objectAttributes | contains | container-relevant:additions | |
UIA | property | AriaProperties.relevant | is | "additions" |
ATK | property | objectAttributes | contains | relevant:additions |
property | objectAttributes | contains | container-relevant:additions | |
AXAPI | property | AXARIARelevant | is | "additions" |
element child | ||||
IAccessible2 | property | objectAttributes | contains | container-relevant:additions |
ATK | property | objectAttributes | contains | container-relevant:additions |
aria-required=true
aria-required=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='combobox' id='test' aria-required='true'> <div role='textbox'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-required='true'.
element test | ||||
IAccessible2 | property | states | contains | IA2_STATE_REQUIRED |
UIA | property | IsRequiredForForm | is | true |
ATK | property | states | contains | STATE_REQUIRED |
AXAPI | property | AXRequired | is | YES |
aria-roledescription NEW
aria-roledescription in the Core AAM
Associated changes since Core AAM 1.0:
- aria-roledescription is new to ARIA 1.1 and thus needs full testing.
- 03-Oct-2016: Added aria-roledescription mappings for empty and whitespace strings as well as error handling text.
- 18-Aug-2015: Added mappings of aria-roledescription for MSAA+IA2, UIA, ATK/AT-SPI and AX API.
if given <div role='group' id='test' aria-roledescription='hello world'>content</div> then expose the element with id of 'test' with the platform mappings for aria-roledescription.
element test | ||||
IAccessible2 | property | localizedExtendedRole | is | "hello world" |
UIA | property | LocalizedControlType | is | "hello world" |
ATK | property | objectAttributes | contains | roledescription:hello world |
AXAPI | property | AXRoleDescription | is | "hello world" |
aria-roledescription is empty or whitespace characters NEW
aria-roledescription is empty or whitespace characters in the Core AAM
Associated changes since Core AAM 1.0:
- aria-roledescription is new to ARIA 1.1 and thus needs full testing.
- 03-Oct-2016: Added aria-roledescription mappings for empty and whitespace strings as well as error handling text.
- 18-Aug-2015: Added mappings of aria-roledescription for MSAA+IA2, UIA, ATK/AT-SPI and AX API.
if given <div role='group' id='test' aria-roledescription=' '>content</div> then expose the element with id of 'test' with the platform mappings for aria-roledescription is empty or whitespace characters.
element test | ||||
UIA | property | Localized ControlType | is | Group |
AXAPI | property | AXRoleDescription | is | "group" |
aria-rowcount NEW
Associated changes since Core AAM 1.0:
- aria-colcount and aria-rowcount are new to ARIA 1.1 and thus need full testing.
- 07-Aug-2017: Update ATK mappings for indeterminate colcount and rowcount.
- 20-Jan-2017: Added AX API mappings for aria-colcount and aria-rowcount.
- 07-Dec-2016: Added UIA mappings for aria-colcount and aria-rowcount.
if given <div role='table' id='test' aria-rowcount='3'> <div role='row' id='row'> <div role='cell'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-rowcount.
element test | ||||
IAccessible2 | property | objectAttributes | contains | rowcount:3 |
UIA | property | Grid.RowCount | is | 3 |
ATK | property | objectAttributes | contains | rowcount:3 |
result | atk_table_get_n_rows() | is | 3 | |
AXAPI | property | AXARIARowCount | is | 3 |
element row | ||||
IAccessible2 | property | groupPosition | contains | similarItemsInGroup:3 |
aria-rowindex NEW
Associated changes since Core AAM 1.0:
- aria-colindex and aria-rowindex are new to ARIA 1.1 and thus need full testing.
- 20-Jan-2017: Added AX API mappings for aria-colindex and aria-rowindex.
- 08-Sep-2016: Updated table properties for row and column for MSAA/IA2 and ATK/AT-SPI.
- 03-Jan-2016: Added UIA mappings for aria-colindex and aria-rowindex. Added placeholders for the other AAPIs.
if given <div role='grid'> <div role='row' id='row'> <div role='cell' id='test' aria-rowindex='3'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-rowindex.
element test | ||||
IAccessible2 | property | objectAttributes | contains | rowindex:3 |
UIA | property | GridItem.Row | is | 2 |
ATK | property | objectAttributes | contains | rowindex:3 |
result | atk_table_cell_get_position() | contains | row=2 | |
AXAPI | property | AXARIARowIndex | is | 3 |
element row | ||||
IAccessible2 | property | groupPosition | contains | positionInGroup:3 |
aria-rowspan NEW
Associated changes since Core AAM 1.0:
- aria-colspan and aria-rowspan are new to ARIA 1.1 and thus need full testing.
- 20-Jan-2017: Added AX API mappings for aria-colspan and aria-rowspan.
- 07-Dec-2016: Added UIA mappings for aria-colspan and aria-rowspan.
- 08-Sep-2016: Added aria-colspan and aria-rowspan mappings.
if given <div role='grid'> <div role='row'> <div role='cell' id='test' aria-rowspan='2'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-rowspan.
element test | ||||
IAccessible2 | property | objectAttributes | contains | rowspan:2 |
property | rowExtent | is | 2 | |
UIA | property | GridItem.RowSpan | is | 2 |
ATK | property | objectAttributes | contains | rowspan:2 |
result | atk_table_cell_get_row_column_span() | contains | row_span=2 | |
AXAPI | property | AXRowIndexRange.length | is | 2 |
aria-selected=true
aria-selected=true in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='gridcell' id='test' aria-selected='true'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-selected='true'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_SELECTABLE |
property | states | contains | STATE_SYSTEM_SELECTED | |
UIA | property | SelectionItem.IsSelected | is | true |
ATK | property | states | contains | STATE_SELECTABLE |
property | states | contains | STATE_SELECTED | |
AXAPI | property | AXSelected | is | YES |
aria-selected=false
aria-selected=false in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='gridcell' id='test' aria-selected='false'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-selected='false'.
element test | ||||
MSAA | property | states | contains | STATE_SYSTEM_SELECTABLE |
property | states | doesNotContain | STATE_SYSTEM_SELECTED | |
UIA | property | SelectionItem.IsSelected | is | false |
ATK | property | states | contains | STATE_SELECTABLE |
property | states | doesNotContain | STATE_SELECTED | |
AXAPI | property | AXSelected | is | NO |
aria-setsize=3
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='list'> <div role='listitem' id='test' aria-setsize='3'>content</div> <div role='listitem' aria-setsize='3'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-setsize.
element test | ||||
IAccessible2 | property | objectAttributes | contains | setsize:3 |
UIA | property | AriaProperties.setsize | is | 3 |
ATK | property | objectAttributes | contains | setsize:3 |
property | states | doesNotContain | STATE_INDETERMINATE | |
AXAPI | property | AXARIASetSize | is | 3 |
aria-setsize=-1 NEW
Associated changes since Core AAM 1.0:
- -1 was added as a valid value for aria-setsize in ARIA 1.1, thus full testing is needed.
if given <div role='list'> <div role='listitem' id='test' aria-setsize='-1'>content</div> <div role='listitem' aria-setsize='-1'>content</div> </div> then expose the element with id of 'test' with the platform mappings for aria-setsize.
element test | ||||
IAccessible2 | property | objectAttributes | contains | setsize:-1 |
UIA | property | AriaProperties.setsize | is | -1 |
ATK | property | objectAttributes | contains | setsize:2 |
property | states | contains | STATE_INDETERMINATE | |
AXAPI | property | AXARIASetSize | is | -1 |
aria-sort=ascending
aria-sort=ascending in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='columnheader' id='test' aria-sort='ascending'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-sort='ascending'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | sort:ascending |
UIA | property | AriaProperties.sort | is | ascending |
property | ItemStatus | is | ascending | |
ATK | property | objectAttributes | contains | sort:ascending |
AXAPI | property | AXSortDirection | is | AXAscendingSortDirection |
aria-sort=descending
aria-sort=descending in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='columnheader' id='test' aria-sort='descending'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-sort='descending'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | sort:descending |
UIA | property | AriaProperties.sort | is | descending |
property | ItemStatus | is | descending | |
ATK | property | objectAttributes | contains | sort:descending |
AXAPI | property | AXSortDirection | is | AXDescendingSortDirection |
aria-sort=other
aria-sort=other in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='grid'> <div role='row'> <div role='columnheader' id='test' aria-sort='other'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-sort='other'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | sort:other |
UIA | property | AriaProperties.sort | is | other |
property | ItemStatus | is | other | |
ATK | property | objectAttributes | contains | sort:other |
AXAPI | property | AXSortDirection | is | AXUnknownSortDirection |
aria-sort=none
aria-sort=none in the Core AAM
if given <div role='grid'> <div role='row'> <div role='columnheader' id='test' aria-sort='none'>content</div> </div> </div> then expose the element with id of 'test' with the platform mappings for aria-sort='none'.
element test | ||||
IAccessible2 | property | objectAttributes | contains | sort:none |
ATK | property | objectAttributes | contains | sort:none |
aria-valuemax
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Fix name of UIA pattern for range roles (should be RangeValue; not Range).
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar' id='test' aria-valuemax='10'>content</div> then expose the element with id of 'test' with the platform mappings for aria-valuemax.
element test | ||||
IAccessible2 | property | maximumValue | is | 10 |
UIA | property | RangeValue.Maximum | is | 10 |
ATK | result | atk_value_get_maximum_value() | is | 10 |
AXAPI | property | AXMaxValue | is | 10 |
aria-valuemin
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Fix name of UIA pattern for range roles (should be RangeValue; not Range).
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar' id='test' aria-valuemin='2'>content</div> then expose the element with id of 'test' with the platform mappings for aria-valuemin.
element test | ||||
IAccessible2 | property | minimumValue | is | 2 |
UIA | property | RangeValue.Minimum | is | 2 |
ATK | result | atk_value_get_minimum_value() | is | 2 |
AXAPI | property | AXMinValue | is | 2 |
aria-valuenow
Associated changes since Core AAM 1.0:
- 17-Aug-2017: Fix name of UIA pattern for range roles (should be RangeValue; not Range).
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar' id='test' aria-valuenow='5'>content</div> then expose the element with id of 'test' with the platform mappings for aria-valuenow.
element test | ||||
IAccessible2 | property | currentValue | is | 5 |
property | accValue | is | 5 | |
UIA | property | RangeValue.Value | is | 5 |
ATK | result | atk_value_get_current_value() | is | 5 |
AXAPI | property | AXValue | is | 5 |
aria-valuetext
aria-valuetext in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='slider' id='test' aria-valuetext='hello world'>content</div> then expose the element with id of 'test' with the platform mappings for aria-valuetext.
element test | ||||
IAccessible2 | property | accValue | is | "hello world" |
property | objectAttributes | contains | valuetext:hello world | |
UIA | property | Value.Value | is | "hello world" |
ATK | property | objectAttributes | contains | valuetext:hello world |
AXAPI | property | AXValueDescription | is | "hello world" |
State and Property Accessible Event Tests
aria-activedescendant value changes (TODO)
aria-busy value changes
aria-busy event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-May-2014: Added additional AX API mapping for aria-busy (before there was no notification).
- 21-Mar-2014: Added UIA.
if given <div role='group' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-busy.
attribute test:aria-busy true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
UIA | event | type | is | PropertyChangedEvent |
ATK | event | type | is | object:state-changed:busy |
event | detail1 | is | 1 | |
AXAPI | event | type | is | AXElementBusyChanged |
attribute test:aria-busy false | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
UIA | event | type | is | PropertyChangedEvent |
ATK | event | type | is | object:state-changed:busy |
event | detail1 | is | 0 | |
AXAPI | event | type | is | AXElementBusyChanged |
aria-checked value changes
aria-checked event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-checked.
attribute test:aria-checked true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
UIA | event | type | is | TogglePattern.ToggleStateProperty |
ATK | event | type | is | object:state-changed:checked |
event | detail1 | is | 1 | |
AXAPI | event | type | is | AXValueChanged |
attribute test:aria-checked false | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
UIA | event | type | is | TogglePattern.ToggleStateProperty |
ATK | event | type | is | object:state-changed:checked |
event | detail1 | is | 0 | |
AXAPI | event | type | is | AXValueChanged |
aria-current value changes
aria-current event in the Core AAM
Associated changes since Core AAM 1.0:
- aria-current is new to ARIA 1.1 and thus needs full testing.
if given <div role="list"> <div id="test" role="listitem">1</li> <div role="listitem">2</li> </div> then emit the platform accessibility events for changes to the value of aria-current.
attribute test:aria-current true | ||||
element test | ||||
IAccessible2 | event | type | is | IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED |
UIA | event | type | is | PropertyChangedEvent |
ATK | event | type | is | object:state-changed:active |
event | detail1 | is | 1 | |
attribute test:aria-current false | ||||
element test | ||||
IAccessible2 | event | type | is | IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED |
UIA | event | type | is | PropertyChangedEvent |
ATK | event | type | is | object:state-changed:active |
event | detail1 | is | 0 |
aria-disabled value changes
aria-disabled event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='checkbox' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-disabled.
attribute test:aria-disabled true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:enabled |
event | detail1 | is | 0 | |
event | type | is | object:state-changed:sensitive | |
event | detail1 | is | 0 |
aria-dropeffect value changes
aria-dropeffect event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='group' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-dropeffect.
attribute test:aria-dropeffect copy | ||||
element test | ||||
IAccessible2 | event | type | is | IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED |
ATK | event | type | is | object:property-change |
aria-grabbed value changes
aria-grabbed event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='group' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-grabbed.
attribute test:aria-grabbed true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_SELECTION |
IAccessible2 | event | type | is | IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED |
ATK | event | type | is | object:property-change |
aria-hidden event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='checkbox' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-hidden.
attribute test:aria-hidden true | ||||
element test | ||||
IAccessible2 | event | type | is | IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED |
UIA | event | type | is | StructureChangedEvent |
ATK | event | type | is | object:property-change |
AXAPI | event | type | is | AXUIElementDestroyed |
attribute test:aria-hidden false | ||||
element test | ||||
IAccessible2 | event | type | is | IA2_EVENT_OBJECT_ATTRIBUTE_CHANGED |
UIA | event | type | is | StructureChangedEvent |
ATK | event | type | is | object:property-change |
AXAPI | event | type | is | AXUIElementCreated |
aria-invalid value changes
aria-invalid event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='textbox' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-invalid.
attribute test:aria-invalid true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:invalid-entry |
event | detail1 | is | 1 | |
AXAPI | event | type | is | AXInvalidStatusChanged |
attribute test:aria-invalid false | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:invalid-entry |
event | detail1 | is | 0 | |
AXAPI | event | type | is | AXInvalidStatusChanged |
aria-expanded value changes
aria-expanded event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='menu' id='test'> <div role='menuitem'>content</div> </div>then emit the platform accessibility events for changes to the value of aria-expanded.
attribute test:aria-expanded true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
UIA | event | type | is | ExpandCollapsePattern.ExpandCollapseStateProperty |
ATK | event | type | is | object:state-changed:expanded |
event | detail1 | is | 1 | |
AXAPI | event | type | is | AXRowExpanded |
event | type | is | AXRowCountChanged | |
attribute test:aria-expanded false | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
UIA | event | type | is | ExpandCollapsePattern.ExpandCollapseStateProperty |
ATK | event | type | is | object:state-changed:expanded |
event | detail1 | is | 0 | |
AXAPI | event | type | is | AXRowCollapsed |
event | type | is | AXRowCountChanged |
aria-pressed value changes
aria-pressed event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='button' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-pressed.
attribute test:aria-pressed true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:pressed |
event | detail1 | is | 1 | |
attribute test:aria-pressed false | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:pressed |
event | detail1 | is | 0 |
aria-readonly value changes
aria-readonly event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='textbox' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-readonly.
attribute test:aria-readonly true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:read-only |
event | detail1 | is | 1 | |
attribute test:aria-readonly false | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:read-only |
event | detail1 | is | 0 |
aria-required value changes
aria-required event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='textbox' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-required.
attribute test:aria-required true | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:required |
event | detail1 | is | 1 | |
attribute test:aria-required false | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_STATECHANGE |
ATK | event | type | is | object:state-changed:required |
event | detail1 | is | 0 |
aria-selected value changes(TODO)
aria-valuenow value changes
aria-valuenow event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='slider' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-valuenow.
attribute test:aria-valuenow 10 | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_VALUECHANGE |
UIA | event | type | is | ValuePattern.ValueProperty |
ATK | event | type | is | object:property-change:accessible-value |
AXAPI | event | type | is | AXValueChanged |
aria-valuetext value changes
aria-valuetext event in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA (but the mapping is no event, so nothing we can reliably test).
if given <div role='slider' id='test'>content</div> then emit the platform accessibility events for changes to the value of aria-valuetext.
attribute test:aria-valuetext great | ||||
element test | ||||
MSAA | event | type | is | EVENT_OBJECT_VALUECHANGE |
ATK | event | type | is | object:property-change:accessible-value |
AXAPI | event | type | is | AXValueChanged |
Relations (Referenced Elements) Tests
N.B. The Core AAM maps ARIA "relations" (properties which reference another element) to platform relations. The State and Property Tests above include assertions for platform relations and, where appropriate, reverse relations. As a result, there is no need for a dedicated set of tests for this area.
Accessibility Tree Tests
Note: Tests here are to cover sections 5.1.1 and 5.1.2. In some cases, the content in those sections is redundant to what is in mapping tables (and thus already covered in the tests above). Things already covered include:
- Elements with none or presentation as the first mappable role MUST be excluded when no other condition (e.g. being focused) necessitates inclusion.
- Elements with none or presentation as the first mappable role MUST be included when a specified condition (e.g. being focused) necessitates inclusion.
- Elements with aria-hidden="true" and their descendants SHOULD be excluded.
- Elements that may fire an accessibility API event MUST be included.
- Elements which have a mappable role attribute string, and have not already been excluded due to the rules in 5.1.1, MUST be included.
- Elements that may fire an accessibility event, if they have not been excluded due to the rules in 5.1.1, MUST be included.
Excluding Elements from the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button' style='display:none;'>content</div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Excluding Elements from the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button' style='visibility:hidden;'>content</div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Excluding Elements from the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button' hidden>content</div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of button
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='button'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of checkbox NEW
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- In ARIA 1.1, checkbox was added to the list of roles which have presentational children.
- 03-Jan-2017: Updated the list of roles with "Children Presentational" characteristic.
- 21-Mar-2014: Added UIA.
if given <div role='checkbox'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of img
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='img'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of math
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='math'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- In ARIA 1.1, menuitemcheckbox was added to the list of roles which have presentational children.
- 03-Jan-2017: Updated the list of roles with "Children Presentational" characteristic.
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitemcheckbox'> <div id='test'>content</div> </div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- In ARIA 1.1, menuitemradio was added to the list of roles which have presentational children.
- 03-Jan-2017: Updated the list of roles with "Children Presentational" characteristic.
- 21-Mar-2014: Added UIA.
if given <div role='menu'> <div role='menuitemradio'> <div id='test'>content</div> </div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of option NEW
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- In ARIA 1.1, option was added to the list of roles which have presentational children.
- 03-Jan-2017: Updated the list of roles with "Children Presentational" characteristic.
- 21-Mar-2014: Added UIA.
if given <div role='listbox'> <div role='option'> <div id='test'>content</div> </div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of progressbar
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='progressbar'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of radio NEW
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- In ARIA 1.1, radio was added to the list of roles which have presentational children.
- 03-Jan-2017: Updated the list of roles with "Children Presentational" characteristic.
- 21-Mar-2014: Added UIA.
if given <div role='radio'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of scrollbar
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='scrollbar'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of separator
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='separator'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of slider
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='slider'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of switch NEW
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- In ARIA 1.1, switch was added to the list of roles which have presentational children.
- 03-Jan-2017: Updated the list of roles with "Children Presentational" characteristic.
- 21-Mar-2014: Added UIA.
if given <div role='switch'> <div id='test'>content</div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Exclude presentational children of tab NEW
Excluding Elements from the Accessibility Tree in the Core AAM
Note: This exclusion is a "SHOULD"; not a "MUST".
Associated changes since Core AAM 1.0:
- In ARIA 1.1, tab was added to the list of roles which have presentational children.
- 03-Jan-2017: Updated the list of roles with "Children Presentational" characteristic.
- 21-Mar-2014: Added UIA.
if given <div role='tablist'> <div role='tab'> <div id='test'>content</div> </div> </div> then the element with id of 'test' should be excluded from the accessibility tree
element test | ||||
MSAA | property | accessible | is | false |
UIA | property | accessible | is | false |
ATK | property | accessible | is | false |
AXAPI | property | accessible | is | false |
Include element referenced by global aria-controls
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-controls='test'>content</div> <div id='test'>hello world</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element referenced by global aria-describedby
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-describedby='test'>content</div> <div id='test'>hello world</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element referenced by global aria-details NEW
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- aria-details is new to ARIA 1.1.
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-details='test'>content</div> <div id='test'>hello world</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element referenced by global aria-errormessage NEW
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- aria-errormessage is new to ARIA 1.1.
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-errormessage='test' aria-invalid='true'>content</div> <div id='test'>hello world</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element referenced by global aria-flowto
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-flowto='test'>content</div> <div id='test'>hello world</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element referenced by global aria-labelledby
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-labelledby='test'>content</div> <div id='test'>hello world</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element referenced by global aria-owns
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-owns='test'>content</div> <div id='test'>hello world</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element that is focusable
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div id='test' tabindex='0'>content</div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Include element with ID inside element with aria-activedescendant
Including Elements in the Accessibility Tree in the Core AAM
Associated changes since Core AAM 1.0:
- 21-Mar-2014: Added UIA.
if given <div role='group' aria-activedescendant='child' tabindex='0'> <div id='child'>content</div> <div id='test'>content</div> </div> then the element with id of 'test' should be included in the accessibility tree
element test | ||||
MSAA | property | accessible | is | true |
UIA | property | accessible | is | true |
ATK | property | accessible | is | true |
AXAPI | property | accessible | is | true |
Accessible Event Tests for Document Content Changes
Text Removed (TODO)
Text Inserted (TODO)
Text Changed (TODO)
Subtree Hidden (TODO)
Subtree Removed (TODO)
Subtree Shown (TODO)
Subtree Inserted (TODO)
Subtree Moved (TODO)
Subtree Changed (TODO)
Live Region Text Removed (TODO)
Live Region Text Inserted (TODO)
Live Region Text Changed (TODO)
Live Region Subtree Hidden (TODO)
Live Region Subtree Removed (TODO)
Live Region Subtree Shown (TODO)
Live Region Subtree Inserted (TODO)
Live Region Subtree Moved (TODO)
Live Region Subtree Changed (TODO)
Error Message Text Removed NEW (TODO)
Error Message Text Inserted NEW (TODO)
Error Message Text Changed NEW (TODO)
Other ChangeLog entries for which dedicated tests are not needed for 1.1
ChangeLog entries which are normative and have associated testing requirements are listed above under the test(s) which cover that entry. The rest can be found here.
"Changes" to things which no longer exist
- The "text" role was added to ARIA 1.1, but was later removed.
- 08-Jun-2016: Removed role text.
- 22-Feb-2016: IA2 mapping of role="text" changed to ROLE_SYSTEM_STATICTEXT from IA2_TEXT_FRAME.
- 27-Nov-2015: Added UIA mapping of role="text" as a Text control pattern; and ATK/AT-SPI mapping as ROLE_STATIC.
- 28-Sep-2015: Added IA2 mapping of role="text".
- 27-Nov-2014: Added mappings for role text.
- ARIA lacks a means to implement the popup-for ATK relation type.
- 14-Mar-2017: Undid the 1.1 addition of RELATION_POPUP_FOR to ATK/AT-SPI mappings of aria-haspopup. While the addition is correct in terms of platform expectations, the ARIA spec provides no means through which user agents could reliably implement this.
- 12-Sep-2016: Added RELATION_POPUP_FOR to ATK/AT-SPI mappings of aria-haspopup, for ARIA 1.1. N.B. This change has subsequently been undone. See entry for 14-Mar-2017.
Things in the ChangeLog which are non-normative and/or not testable
- mult. dates: Entries related to "updating default values" when these changes were strictly to the "context" and didn't impact the actual mappings via platform accessibility APIs.
- 01-Aug-2017: Remove explicit "do not expose STATE_EDITABLE" for roles which are by definition not editable from the ATK mappings.
- 28-Sep-2015: Removed all MSAA+UIA Express mappings.
- 11-Nov-2014: Added informative section on relationship between ATK and AT-SPI.
- 27-Oct-2014: Moved text alternative computation section to its own document.