ARIA (Accessible Rich Internet Applications) is a suite of specifications from the W3C. Knowing which specification has the information you need isn’t always obvious, so this post briefly introduces each specification and where it fits into the overall ARIA landscape.
The ARIA specification describes the roles, states, and properties that can be used to poly fill accessibility for screen readers. This is the specification you need when you want to find out which roles, states, and properties are available for use with HTML and/or SVG.
ARIA Authoring Practices Guide (APG)
The APG describes the keyboard interaction expected for custom components like tabpanels, dialogs, and menubars. It also explains which ARIA roles, states, and properties are required to make custom components accessible to screen readers. If you’re creating custom components in HTML or SVG, the ARIA APG is the reference manual you need.
Accessibility API Mappings (AAM)
The HTML AAM describes how native HTML elements are mapped to ARIA roles, and to the equivalent roles on different platforms (and consequently different browsers). The SVG AAM attempts to do the same for SVG elements, but at present browser support for SVG accessibility API mappings is much less robust than for HTML. The AAM specifications are where you should go when you want to know how browsers should handle different elements in terms of keyboard focus, role, state, and property information for accessibility.
ARIA in HTML
This specification documents the way tools should parse ARIA in HTML. ARIA in HTML 1.0 is under active development, and is expected to become an official W3C Recommendation later this year.
ARIA in HTML is intended for use by conformance checkers, and tools that test for accessibility. If you want to know how these tools are expected to handle ARIA when it’s used with HTML, this is the specification to use.
This describes a set of best practice principles for Using ARIA in HTML. It’s a reliable W3C Note, that is continually updated.
Using ARIA provides practical guidance for using ARIA in development. If you use ARIA with HTML, this specification is an essential reference point to help you make smart implementation choices.