Editors Draft: $Date: 2011/06/23 00:03:25 $ [analysis
This document is an unapproved in-progress draft and should not be referenced or quoted under any circumstances.
Please send comments to firstname.lastname@example.org (a publicly archived list).
'User agents' - web browsers, media players, browser extensions, on-the-fly converters, plug-ins, bots, aggregators and mobile browsers - provide a human or machine interface to the web. At their best, they allow all of us to explore a universal space of web content.
User agent developers need to pay particular heed to issues surrounding use of their agents by people in other parts of the world, speaking other languages, using other devices and with a variety of assistive technologies that allow users to use different modes of input and output (such as speech input, tactile displays, semantic navigation, and a variety of display preferences).
Example 1: An online app developer wants to provide context-sensitive help in a tooltip that is displayed when the user (with a mouse) hovers over or (with a keyboard) focuses a "Help" icon. In most browsers, the functionality automatically works for hover; the title element is displayed. However, most browsers don't provide the same functionality for keyboard users on focus. To compensate for the missing functionality in the browsers, the developer has to create scripts to provide it for her content. Unfortunately most developers don't do this - and indeed, they shouldn't have to because the browser should provide the same functionality for people who cannot use the mouse.
Example 2: A developer uses the css declaration
text-transform: lowercase to style a magazine headline (about fresh orange juice) originally composed in caps. The content is then internationalised for a Turkish-language audience, and a language of Turkish declared using the attribute
lang="tr". The lower case of the Turkish character İ (a capital I dotted) should return a i. Major browsers, however convert the Turkish character I to i. An innocuous headline "Squeeze Often" suddenly becomes rather rude...
Browser developers need some help at making the web readable by all; extension developers can respond to limitations of particular browser functionality, and the best extensions can be incorporated into the browsers' standard functionality. Whether you develop browsers, extensions, bots, aggregators, media players or an as-yet undreamed of way of reading the web, to create that web that is readable by all, the User Agent Accessibility Guidelines (UAAG) provide the place to start.
The current formally approved, stable and referenceable technical recommendation for accessibility is UAAG 1.0.
UAAG 2.0 is intended for the current and future generation of user agents. UAAG 2.0 is currently still a Working Draft, albeit one that the W3C believes is almost ready for use - the intent is for it to be completed and approved in 2012. Find out how you can help make it better below.
UAAG is an open standard - any committed expert can become involved in developing it, it has been widely reviewed as acceptable, it is available for free on the Web, and it is royalty-free for developers and users alike.
UAAG is the result of international cooperation between the development community, industry, disability organizations, accessibility researchers, government and others interested in Web accessibility.
You can participate in the process - for example, by volunteering to help implement, promote and review guidelines; through regular (or occasional) participation in an interest group mailing list; or through dedicated participation in a Working Group such as the User Agent Working Group (UAWG).
A common way to get involved is reviewing and commenting on Working Drafts (and not just when it becomes a Last Call). Calls for Review and document stages are announced via: the WAI IG mailing list; twitter; identi.ca, WAI home page Highlights; and WAI Highlights RSS feed.
And you could donate some money to the grand collaborative effort, just like these WAI Sponsors.
Learn more about the current status of specifications related to:
These W3C Groups are working on the related specifications: