[Irl-dean] Creating accessible javascript

Gez Lemon gez.lemon at gmail.com
Thu Sep 28 00:00:13 IST 2006

Hi Barry,

> Thanks Gez - but I'm still not clear whether you are suggesting
> that 6.2 somehow requires conforming user agents to be capable of
> *executing server provided code or script* (effectively
> javascript for the current conversation), as opposed to just
> exposing an API that client provided code, such as AT, may need
> to use?

When people think of assistive technology, they typically think of
things like screen readers; most likely because accessibility is
typically assumed to be solely about people with visual impairments.
I'm not suggesting that you or anyone else on this list hold that
belief, but before answering your question, I would like to refer to
the definition of "Assistive Technology" (AT) [1] as defined by the
user agent accessibility guidelines we're discussing:

In the context of this document, an assistive technology is a user agent that:

1. relies on services (such as retrieving Web resources and parsing
markup) provided by one or more other "host" user agents. Assistive
technologies communicate data and messages with host user agents by
using and monitoring APIs.

2. provides services beyond those offered by the host user agents to
meet the requirements of users with disabilities. Additional services
include alternative renderings (e.g., as synthesized speech or
magnified content), alternative input methods (e.g., voice),
additional navigation or orientation mechanisms, and content
transformations (e.g., to make tables more accessible).

In particular: "content transformations (e.g., to make tables more
accessible)" - an important, if often overlooked, accessibility

It's typically very difficult to cater for people with cognitive
disabilities, as what benefits one person might be a hindrance to
another person with the same type of cognitive disability. To allow
for this diversity, the best way to cater for people with cognitive
disabilities is for developers to ensure that structure, presentation,
and behaviour are separated, so that people with cognitive
difficulties can employ user-defined scriptlets to repurpose content
for their specific needs. For this to work, user agents must provide
programmatic access to the DOM, as required by checkpoint 6.2.

To further clarify this, the note under checkpoint 6.2 suggests that
this particular checkpoint (6.2) exists to illustrate how to provide
access to the information required in checkpoint 6.1 [3]:

"Note: This checkpoint stands apart from checkpoint 6.1 to emphasize
the distinction between what information is required and how to
provide access to that information. Furthermore, the DOM Level 2 Core
Specification does not provide access to current states and values
referred to in provision three of checkpoint 6.1. For HTML content,
the interfaces defined in [DOM2HTML] do provide access to current
states and values."

So in a nutshell, I am suggesting that checkpoint 6.2 of UAAG is
somehow requiring conforming user agents to provide programmatic
access to its DOM (or some other mechanism for non-HMTL technologies
that might not be DOM-based).

[1] http://www.w3.org/TR/UAAG10/glossary.html#def-assistive-technology
[2] http://www.w3.org/TR/UAAG10/guidelines.html#tech-dom-access-api
[3] http://www.w3.org/TR/UAAG10/guidelines.html#tech-infoset-access



Supplement your vitamins

More information about the CEUD-ICT mailing list