Purpose of ARIA is Describe Semantics and Behavior
- Provide an inter-operable way to describe the features of custom widgets:
-
Role: Describes the type of widget, which implies the keyboard interaction.
-
Properties and States: Describing features like "expandable", "checked" or "selected".
-
Language independence: Roles, properties and states can be translated by the operating systems and assistive technologies to local languages.
-
Labeling: How to label the features of the widget and its components (e.g. accessible name).
-
Relationships: How different components relate to each other (e.g. descriptions, controls, owns).
-
Grouping: Groups of related components (e.g. lists, menus, trees, tab panels).
- Define markup mappings to accessibility APIs:
- ATK/AT-SPI (Linux/Unix)
- Microsoft Active Accessibility (MSAA) + IAccessible2
- Microsoft UI Automate
- MacOS Accessibility API