PROPOSED: Checklists for Desktop Graphical User Agents and Dependent User Agents

After the current priority indication for a checkpoint is the following
will indicate if the checkpoint applies to desktop graphical user agents,
dependent user agents (assistive technology) or both technologies.

[DGUA] indicates checkpoint is part of checklist for desktop graphical user
agents

[AT] indicates checkpoint is part of checklist for dependent user agents
(assistive technology)

[BOTH] indicates checkpoint is in both lists

Summary
Most of the checkpoints I included in BOTH checklists.  I used BOTH most of
the time since compatibility is dependent on implmenting the feature.   If
an assistive technology implments a feature it should do it in an
accessible manner, just like a desktop graphical user agent.  For example,
many types of assistive technologies may not implment a feature like
rendering BACKGROUND images.  But if it does it should allow the user to
turn off the rendering.  But if an assistive technology does not implement
BACKGROUND images, then it does not need to worry about the feature to turn
off background images for compatibility.  

Does this make sense?

We need to make sure in the compatibility section that we have information
on what information DGUA need to expose to AT for them to implement the
specified features.

==========================================================================


Guideline 4.4 Ensure that users can disable features that might interfere
with accessibility

4.4.1 [Priority 2] [BOTH] 
     Allow the user to turn on and off rendering of images. 
4.4.2 [Priority 1] [BOTH] 
     Allow the user to turn on and off rendering of background images. 
4.4.3 [Priority 1] [BOTH]
     Allow the user to turn on and off rendering of video. 
4.4.4 [Priority 1] [BOTH]
     Allow the user to turn on and off rendering of sound. 
4.4.5 [Priority 1] [BOTH]
     Allow the user to turn on and off rendering of captions. 
4.4.6 [Priority 1] [BOTH]
     Allow the user to turn on and off animated or blinking text. 
4.4.7 [Priority 1] [BOTH]
     Allow the user to turn on and off animations and blinking images. 
4.4.8 [Priority 1] [BOTH]
     Allow the user to turn on and off support for scripts and applets. 
4.4.9 [Priority 1] [BOTH]
     Allow the user to turn on and off support for user style sheets. 
4.4.10 [Priority 1] [BOTH]
     Allow the user to turn on and off support for author style sheets. 
4.4.11 [Priority 2] [BOTH]
     Allow the user to turn on and off rendering of frames. 
4.4.12 [Priority 1] [BOTH]
     Allow the user to turn on and off support for spawned windows. 
4.4.13 [Priority 3] [BOTH]
     Allow the user to turn on and off automatic page forwarding. 

5 Ensure that content is accessible

5.1 Ensure that the user can control document styles

Checkpoints for fonts and colors:

5.1.1 [Priority 1] [BOTH]
     Allow the user to override font family. 
5.1.2 [Priority 1] [BOTH]
     Allow the user to override font size. 
5.1.3 [Priority 1] [BOTH]
     Allow the user to override foreground color. 
5.1.4 [Priority 1] [BOTH]
     Allow the user to override background color. 
5.1.5 [Priority 1] [BOTH]
     Allow the user to override selection highlighting (e.g., foreground
and background color). 
5.1.6 [Priority 1] [BOTH]
     Allow the user to override focus highlighting (e.g., foreground and
background color). 

Checkpoints for applets and animations:

5.1.7 [Priority 2] [BOTH]
     Allow the user to override animation rate. 

Checkpoints for video.

5.1.8 [Priority 1] [BOTH]
     Allow the user to override video frame rates. 
5.1.9 [Priority 2] [BOTH]
     Allow the user to start, stop, pause, and rewind video. 
5.1.10 [Priority 1] [BOTH]
     Allow the user to control the position of captions. 

Checkpoints for audio:

5.1.11 [Priority 1] [BOTH]
     Allow the user to override audio playback rate. 
5.1.12 [Priority 2] [BOTH]
     Allow the user to start, stop, pause, and rewind audio. 
5.1.13 [Priority 2] [BOTH]
     Allow the user to override audio volume. 

Checkpoints for speech:

5.1.14 [Priority 1] [BOTH]
     Allow the user to override speech playback rate. 
5.1.15 [Priority 2] [BOTH]
     Allow the user to override speech volume. 

Checkpoints for changes to the user interface:

5.1.16 [Priority 2] [BOTH]
     When new windows or user interface components are spawned, allow the
user to control window size and position. 

5.2 Provide access to alternative representations of content and control of
its rendering

General checkpoints: 

5.2.1 [Priority 1] [BOTH]
     Ensure that the user has access to alternative representations of
content (e.g., the value of "alt" in HTML or SMIL, the resource designated
by "longdesc",
     or the content of OBJECT in HTML 4.0, the "summary" attribute for
tables in HTML, etc.). 
5.2.2 [Priority 2] [BOTH]
     When no alternative text representation is available, indicate what
type of object is present. 
5.2.3 [Priority 3] [BOTH]
     When null alternative text has been defined, suppress the rendering of
the alternative representation. 

Checkpoints for audio:

5.2.4 [Priority 1] [BOTH]
     Allow the user to choose from among available audio tracks. 
5.2.5 [Priority 2] [BOTH]
     Allow the user specify that captions for audio be rendered at the same
time as the audio. 

Checkpoints for video:

5.2.6 [Priority 1] [BOTH]
     Allow the user specify that captions for video be rendered at the same
time as the video. 
5.2.7 [Priority 2] [BOTH]
     Allow the user specify that audio descriptions of video be rendered at
the same time as the video. 

5.3 Ensure that links are accessible

For all link navigation or searching, the focus is moved to the target link. 

5.3.1 [Priority 1] [BOTH]
     Allow the user to navigate sequentially among links. 
5.3.2 [Priority 1] [BOTH]
     Allow the user to search for a link in the current document based on
its link text. 
5.3.3 [Priority 1] [AT]
     Allow the user to search for a link based on its attribute values. 
5.3.4 [Priority 1] [AT]
     Allow the user to move the focus to a link based on its integer
(tabbing-order) position. 
5.3.5 [Priority 2] [AT]
     Provide the user with information about the number of links in a
document. 
5.3.6 [Priority 3] [BOTH]
     Provide a mechanism (e.g., through style sheets) to distinguish
visited links from unvisited links. 
5.3.7 [Priority 3] 

5.3.8 [Priority 1] [BOTH]
     Allow the user to navigate among elements with associated long
descriptions. 
5.3.9 [Priority 2] [AT]
     Allow the user to search linked long description text (i.e., in
another document). In case of a match, the focus should be moved to the
link in the current
     document. 

5.4 Ensure that tables are accessible

5.4.1 [Priority 1] [AT]
     Provide access to the contents of a specific cell. 
5.4.2 [Priority 1] [AT]
     Provide access to header information for a specific table cell. 
5.4.3 [Priority 1] [AT]
     Allow the user to navigate among tables in a document. 
5.4.4 [Priority 1] [AT]
     Allow the user to navigate among table cells of a table (notably
left/right within a row and up/down within a column). 
5.4.5 [Priority 2] [AT]
     Allow the user to search for a table cell based on its contents or
header information. 
5.4.6 [Priority 2] [AT]
     Allow the user to select a table cell and find out its row/column
coordinates in the table. 
5.4.7 [Priority 2] [AT]
     Allow the user to find out the dimensions of a table. 
5.4.8 [Priority 2] [AT]
     Allow the user to find out the number of tables in a document. 

5.5 Ensure that forms are accessible

5.5.1 [Priority 1] [BOTH]
     Allow the user to navigate among form controls within a form. 
5.5.2 [Priority 1] [BOTH]
     Allow the user to navigate among forms in a document. 
5.5.3 [Priority 1] [BOTH]
     Allow the user to search for a form control based on its text content. 
5.5.4 [Priority 1] [BOTH]
     Allow the user to search for a form control based on its attribute
values. 
5.5.5 [Priority 2] [AT]
     Provide the user with information about the number of forms in a
document. 
5.5.6 [Priority 2] [AT]
     Provide the user with information about the number of controls in a
form. 
5.5.7 [Priority 3] [BOTH]
     Allow the user to request to be prompted before a form is submitted. 

6 Help the user remain oriented

6.1 Provide information about the document view

6.1.1 [Priority 1] [BOTH]
     Provide a mechanism for highlighting and identifying (through a
standard interface where available) the current view. 
6.1.2 [Priority 1] [BOTH]
     Provide a mechanism for highlighting and identifying (through a
standard interface where available) the user selection. 
6.1.3 [Priority 1] [BOTH]
     Provide a mechanism for highlighting and identifying (through a
standard interface where available) the current focus. 
6.1.4 [Priority 2] [BOTH]
     Ensure that when the selection changes, it is in the viewport after
the change. 
6.1.5 [Priority 2] [BOTH]
     Ensure that when the focus changes, it is in the viewport after the
change. 
6.1.6 [Priority 1] [BOTH]
     Allow the user to navigate views (notably those with frame viewports).
Navigating into a view makes it the current view. 
6.1.7 [Priority 1] [BOTH]
     Keep track of the user's point of regard in each view and restore it
when the user returns to the view. 
6.1.8 [Priority 2] [AT]
     Provide the user with information about the number of viewports. 
6.1.9 [Priority 2] [AT]
     When a document is loaded or when requested by the user, make
available document summary information. 
6.1.10 [Priority 2] [AT]
     Provide the user with information about how much of the document has
been viewed (i.e., where the point of regard is with respect to the
beginning of the
     document). 
6.1.11 [Priority 3] [AT] 
     Provide the user with information about document loading status (e.g.,
whether loading has stalled, whether enough of the page has loaded to begin
     navigating, whether following a link involves a fee, etc.) 

6.2 Provide information about document structure

6.2.1 [Priority 2] [AT]
     Allow the user to view a document outline constructed from its
structural elements (e.g., from header and list elements). 
6.2.2 [Priority 2] [AT]
     Allow the user to navigate the document tree. 
6.2.3 [Priority 2] [AT]
     Allow the user to navigate sequentially among headers. 
6.2.4 [Priority 2] [AT]
     Allow the user to navigate sequentially among block elements (e.g.,
paragraphs, lists and list items, etc.) 
6.2.5 [Priority 2] [BOTH]
     Allow the user to search for an element in the current document based
on its text content. In case of a match, the selection should be moved to
the element. 

6.3 Provide information about events

6.3.1 [Priority 1] [AT]
     Allow the user to navigate among elements with associated event
handlers. 
6.3.2 [Priority 2] [AT]
     Alert the user when scripts or applets are executed. 
6.3.3 [Priority 3] [AT]
     Provide information about document changes resulting from the
execution of a script. 

7 Follow W3C Recommendations and use standard interfaces

Many types of software: assistive technologies, scripting tools, automated
test engines, etc., benefit from having access to user agent information. 

7.1 Support language accessibility features

A user agent that supports a language should implement the accessibility
features for the language. The techniques document lists the accessibility
features of the
following languages, defined by W3C specifications: 

7.1.1 [Priority 1] [BOTH]
     Support accessibility features defined by W3C Recommendations for HTML. 
7.1.2 [Priority 1] [BOTH]
     Support accessibility features defined by W3C Recommendations for CSS. 
7.1.3 [Priority 1] [BOTH]
     Support accessibility features defined by W3C Recommendations for SMIL. 

7.2 Use and provide accessible interfaces to other technologies

When a user agent communicates with other software (dependent user agents,
the operating system, plug-ins), must do so through applicable interfaces. To
promote interoperability, open standards should be used wherever possible. 

7.2.1 [Priority 1] [DGUA]
     Implement DOM Level 1 and expose it to dependent user agents through a
public interface. 
7.2.2 [Priority 2] [DGUA]
     Support other accessibility application programming interfaces (APIs)
(e.g., Microsoft Active Accessibility, Sun Microsystems Java Accessibility) 
7.2.3 [Priority 2] [DGUA]
     Use standard interfaces defined for the operating system. 	

==== END OF MESSAGE ==============================
Jon Gunderson, Ph.D., ATP
Coordinator of Assistive Communication and Information Technology
Division of Rehabilitation - Education Services
University of Illinois at Urbana/Champaign
1207 S. Oak Street
Champaign, IL 61820

Voice: 217-244-5870
Fax: 217-333-0248
E-mail: jongund@uiuc.edu
WWW:	http://www.staff.uiuc.edu/~jongund
	http://www.als.uiuc.edu/InfoTechAccess

Received on Tuesday, 2 March 1999 13:20:36 UTC