WAI-ARIA

Web Accessibility Initiative – Accessible Rich Internet Applications (WAI-ARIA) is a technical specification published by the World Wide Web Consortium (W3C) that specifies how to increase the accessibility of web pages, in particular, dynamic content, and user interface components developed with Ajax, HTML, JavaScript, and related technologies.

In the 15 September 2008 working draft, SVG 1.2 Tiny added support for WAI-ARIA. On 20 March 2014, WAI-ARIA 1.0 became a completed W3C Recommendation. 14 December 2017 saw the release of WAI-ARIA 1.1.

The 5 Rules of ARIA

 * 1) Don’t use ARIA if you can achieve the same semantics with a native HTML element or attribute
 * 2) Do not change the semantics of native HTML (unless you really have to)
 * 3) All interactive ARIA controls must be usable with the keyboard.
 * 4) Do not remove semantics or hide focusable elements (using  role="presentation" or aria-hidden="true" on a focusable element)
 * 5) Ensure all interactive elements have an accessible name (Accessibility API accessible name).

Scope
Web developers increasingly use client-side scripts to create user interface controls that cannot be created with HTML alone. They also use client-side scripts to update sections of a page without requesting a completely new page from a web server. Such techniques on websites are called rich Internet applications. These user interface controls and content updates are often not accessible to users with disabilities, especially screen reader users and users who cannot use a mouse or other pointing device. WAI-ARIA allows web pages (or portions of pages) to declare themselves as applications rather than as static documents, by adding role, property, and state information to dynamic web applications. ARIA is intended for use by developers of web applications, web browsers, assistive technologies, and accessibility evaluation tools.

WAI-ARIA describes how to add semantics and other metadata to HTML content in order to make user interface controls and dynamic content more accessible. For example, with WAI-ARIA it is possible to identify a list of links as a navigation menu and to state whether it is expanded or collapsed. Although originally developed to address accessibility issues in HTML, the use of WAI-ARIA is not limited to HTML: in principle, it can also be used in other markup languages such as Scalable Vector Graphics (SVG).

Documents
The Web Accessibility Initiative has published an overview of WAI-ARIA that introduces the subject and guides readers to the WAI-ARIA Suite documents:


 * Accessible Rich Internet Applications (WAI-ARIA) Version 1.0
 * This is primarily aimed at developers of Web browsers, assistive technologies, and other user agents, in addition to developers of other technical specifications, and developers of accessibility evaluation tools. The WAI-ARIA has been marked as completed on 20 March 2014 and is therefore a W3C recommendation.


 * WAI-ARIA Overview
 * This is a technical introduction to WAI-ARIA. It describes the problems WAI-ARIA tries to address, the underlying concepts, the technical approach and business reasons for adopting WAI-ARIA.


 * WAI-ARIA Authoring Practices
 * This document describes best practices for delivering rich Internet applications with WAI-ARIA: it discusses subjects such as general steps for building accessible widgets, keyboard navigation, relationships, form properties, drag-and-drop support, alert and dialog boxes, reusable component libraries, and testing.
 * Roadmap for Accessible Rich Internet Applications (WAI-ARIA Roadmap)
 * Much of the content of this document has been moved into other documents.

The ARIA specifications editors have included Lisa Seeman, Rich Schwerdtfeger, James Craig, Michael Cooper, and Lisa Pappas.