WAI-ARIA: What does it do?

I’ve just been listening a podcast by Freedom Scientific (developer of the JAWS screenreader software), which focused on the WAI-ARIA (Web Accessibility Initiative Accessible Rich Internet Applications) suite.

The hour long podcast was conducted in the form of an interview by Jonathan Mosen with Freedom Scientific’s Chief Technical Officer, Glen Gordon, who gave an overview of what it does. Following the interview, Mosen gave an example of it in use.

Gordon started off by talking about Web 2.0 and how web pages are becoming more and more like applications and suggested that, in a way, we were returning to days of the dumb terminal. The distribution model has also changed. Nowadays, many applications are free to use, with funding either from advertising or as “pay-as-you-go” or “pay-in-chunks”. Web 2.0 has various benefits including centralisation of documents, which can be accessed from anywhere in the world via multiple device types, and ease of collaboration.

However, there can be accessibility issues. Prior to the development of the ARIA suite, there was no standard way of displaying web pages. Although HTML (Hypertext Mark-up Language) is a standard way of presenting content, it doesn’t actually cover concepts relating to the layout of applications or the web page itself (e.g. trees, the difference between a navigation menu and a list of resources in the content, etc). Therefore, it is difficult for other applications (such as screenreaders) to understand the layout of the page itself.

Most web pages are divided up into separate areas (e.g. navigation, content, banner, etc), but it is not always easy to tell where one area ends and another begins. ARIA, however, allows each area to be labeled as a “landmark” of a particular type (such as navigation, main content area, search, etc) so that other applications know how to interact with different parts of a web page. In a way, it allows web page developers to annotate pages in a standard way, which can then be interpreted by other applications.

ARIA consists of “roles” (“document” or “application”) for each page, with each role containing “attributes” (e.g. “menu item”), which are applied as an HTML tag. Changes in “state” can also be identified, e.g. whether a tree view is open or closed, and “alerts”, such as a change to an advert or a new contribution to an online chat, can be described as important or not important.

Mosen then demonstrated an example of an alpha version of an online player for Radio New Zealand, which includes an ARIA-enabled slide control for the volume (only usable in an ARIA-enabled browser or with other ARIA-enabled software, such as JAWS 10.0) and also allows the user to move forward in the programme.

At present, only the latest version of Firefox 3 supports some of ARIA’s features, although other browsers such as IE8 (Internet Explorer), Opera, and Safari are following suit.