[Draft $Date: 2011/01/21 13:21:47 $ analysis & changelog]

[Draft] Agents


Browsers And Authoring Tools

The web is critical not merely to the digital revolution but to our continued prosperity - and even our liberty. Like democracy itself, it needs defending.
Tim Berners-Lee, W3C Director and inventor of the World Wide Web

As Tim has written, the web is yours. It is a public resource on which you, your business, your community and your government depend. A continuous, worldwide conversation, more critical to free speech than any other medium. But the web as we know it is being threatened, as some of its most successful inhabitants have begun to chip away at its egalitarian principles. Content is walled off, islands of information made available only to people with the right browser, publishing restricted to particular tools, owned by particular people.

The web's usefulness and growth depends on its universality. We should be able to publish regardless of the software we use, the computer we have, the language we speak, whether we are wired or wireless, regardless of our sensory or interaction modes. The web must work with and allow linking to any form of information - a document or a data point - and with any quality of data - a jokey tweet or a scholarly paper (we leave it up to you which one of those has the most value). And we should be able to access the web from any kind of hardware that can connect to the internet - stationary or mobile, small or large.

The web is not static. Brilliant and crazy new software for reading and writing the web is being created all the time, by all sorts of smart people, all over the world. You may indeed be one of these smart people. There are lots of other smart people out there, and so that the web can be the best it can be, they are all listening to each other and respecting each other's crazy ideas (as long as they have written some working code, naturally) and even blending them together to result in even better crazy ideas.

The W3C facilitate this listening and blending through the medium of web standards. These standards ensure that all the crazy brilliance continues to improve a web that is open to us all.

Those who create the software that allows us to to read and write the web have a noble vocation. Web standards help to ensure that these essential elements of the web work well together, indeed, allow the web to achieve its fullest potential. We need your help - firstly by trying to keep to those standards wherever possible, but also in continuously improving those standards for ourselves and those who come after us.

Browsers, Media Players & More

For developers of software that reads the web for us - browsers, media players, publishing platforms, social networks, bots, aggregators, forums, media-sharing sites and other user agents - the standard is the User Agent Accessibility Guidelines (UAAG).

Authoring Tools & Social Media

For developers of software that writes the web for us - web site authoring tools and environments, social media profile pages and apps, blogging tools and sites, microblogging tools, social bookmarks, forums, and video and photo sharing and more - the standard is the Authoring Tool Accessibility Guidelines (ATAG).


Browsers, media players and other user agents

'User agents' - 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, written by people from all over the world, in many different languages, on many different computers, using many different input and output devices.

What: examples of user agent standards issues

User agent developers need to pay particular heed to issues surrounding use of their agents by people in other parts of the owrld, 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: a content developer may wish to display appropriate tooltips [image here of visual tooltip] when a user hovers over a link or brings it into keyboard focus. On most browsers this is implemented on hover automatically - the content of any title element on a link will be displayed when a pointer hovers over the link. However, many browsers (Opera is an honourable exception) do not automatically exhibit the same behaviour for keyboard-only users, forcing the developer to run scripts to achieve this. The user's experience relies on the experience and attention to detail of the developer - were the browser to implement this behaviour by default no such intervention by the developer would be necessary.

Example 2: a developer uses the css declaration text-transform: uppercase to style a magazine headline. The content is then internationalised for a Turkish-language audience, and a language of Turkish declared using the atttribute lang="tr". The capitalisation of the Turkish character i should result in İ. Major browsers convert the letter Turkish character i to I. An innocuous headline suddenly becomes a terrible insult [can we come up with an actual example of this probably apocryphal tale?]. War ensues.

How: make your user agent follow the guidelines

The current formally approved, stable and referenceable technical recommendation is UAAG 1.0.

You can implement the latest draft of the user agent accessibility guidelines (UAAG 2.0) by following Implementing UAAG 2.0 - a guide to implementing and understanding the guidelines.

UAAG2.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 2010. Uh, 2011, sorry. Find out how you can help speed the process along (ar, at least, make it better) below.

Who: some of the people who co-ordinate and support the guidelines

The User Agent Accessibility Guidelines is an open standard - any committed expert can become involved in their improvement, it has been widely reviewed as acceptable, it is available for free on the Web, and it is (and always will be) royalty-free for developers and users alike.

The Guidelines are 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) or the Protocols and Formats Working Group (PFWG).

The most likely participation for you to get involved with will be reviewing and commenting on the working draft when it becomes a last call working draft [how does the reader register their interest in this?].

Or you could donate some money to the grand enterprise, just like [funder list goes here].


Authoring Tools & Social Media

Authoring tools, at their best, should allow all of us to publish to a universal space of web content, read by people from all over the world, in many different languages, on many different computers, using many different input and output devices.

What: examples of authoring tools and authoring tool issues

"Authoring tools" covers any software is used to write the web, from enterprise content management systems through to microblogging mobile apps.

- Content Management Systems
- WYSIWYG web page editors (such as Dreamweaver)
- HTML editors and text editors (such as Homesite, vi, vim, notepad)
- Multimedia authoring tools
- Blogging platforms (such as WordPress, Type03)
- social media profile updates (such as Facebook, Orkut)
- microblogging sites and apps (such as twitter)
- photo and video upload (such as Flickr, YouTube)
- forums
- Script libraries (such as jquery, scriptaulous)
- Web Application frameworks, IDEs and SDKs (such as Ruby on Rails, MonoRail, ColdFusion on Wheels, DotNetNuke, Flex)
- Software for developing mobile apps
- Software that generates content via scripts etc
- Email clients that send messages in html
- Document convertors (such as MS-Word's save as html function)
- debugging tools for content (such as Firebug)

[Note - could just pull the bullet list of 'who is ATAG' for from /WAI/intro/atag.php]

Authoring tools are an essential element in achieving a universal, accessible web. The best authoring tools require less technical knowledge from their users in order to produce accessible, robust web content.

Example: a developer wishes to introduce the HTML5 canvas element to her website in order to create a thesaurus navigation. Her authoring tool requires her to provide a number of elemnts equivalent to those used in the canvastool to ensure that the thesaurus navigation is accessible. [assuming that shadow DOM is the way to go. Who knows. Maybe the superimagemap will be better. Or maybe the extension of the canvas API to allow focus to some elements within the canvas and alternative text. Why not all three, hmm?]. Without such user agent support the level of technical knowledge required from the developer would make the project uneconomic - web browsers alone could not render the element accessible without authoring tool assistance.

[another example would be nice]

How: make your authoring tool follow the guidelines

The current formally approved, stable and referenceable technical recommendation is ATAG 1.0.

You can implement the latest draft of the authoring tool accessibility guidelines (ATAG 2.0) by following Implementing ATAG 2.0 - a guide to implementing and understanding the guidelines.

ATAG2.0 is intended for the current and future generation of authoring tools. ATAG 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 2011. Find out how you can help speed the process along (ar, at least, make it better) below.

Who: some of the people who co-ordinate and support the guidelines

The Authoring Tool Accessibility Guidelines is an open standard - any committed expert can become involved in their improvement, it has been widely reviewed as acceptable, it is available for free on the Web, and it is (and always will be) royalty-free for developers and users alike.

The Guidelines are 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 Authoring Tool Accessibility Guidelines Working Group (UAWG).

The most likely participation for you to get involved with will be reviewing and commenting on the working draft when it becomes a last call working draft [how does the reader register their interest in this?].

Or you could donate some money to the grand enterprise, just like [funder list goes here].

Current Status of Specifications

Learn more about the current status of specifications related to:

These W3C Groups are working on the related specifications:

Current Status

Logos

  • @@

Acknowledgements

Editors: Liam McGee.
Contributors: @@, and other participants of the Education and Outreach Working Group (EOWG).