This document contains techniques and further examples, as an informative
aid to developers seeking to implement the Authoring Tool Accessibility
Guidelines. The guidelines and checkpoints for that document are included for
convenience.
This document is part of a series of accessibility documents published by
the W3C Web Accessibility Initiative.
This is a Working Draft of the Authoring Tool Accessibility Guidelines. It
is a draft document and may be updated, replaced or rendered obsolete by other
documents at any time. It is inappropriate to use W3C Working Drafts as
reference material or to cite them as other than "work in progress". This is
work in progress and does not imply endorsement by either W3C or members of
the WAI Authoring Tool (AU) Working Group.
This draft is a public working draft, and represents the state of the
working group document at 21 June 1999. It has since been released to the WAI
interest group for review, and no changes or clarifications were sought. In
the time between that document being published as a review draft and this
publication as a publication there have been two newer working group drafts
published - the latest working group draft
is also publicly available. A log of changes between successive
working drafts is available.
The goals of the WAI AU Working
Group are discussed in the WAI AU charter.
Please send comments about this document to the public mailing list: w3c-wai-au@w3.org, archived at http://lists.w3.org/Archives/Public/w3c-wai-au
A list of the current AU Working
Group members is available.
This document is intended as an informative adjunct to the Authoring Tool
Accessibility Guidelines. Although it reproduces the guidelines themselves, it
is not a normative document. It will be periodically updated.
The techniques introduced here are generally suggestions about how a
checkpoint may be fulfilled. They are not the only way of
fulfilling the checkpoint, nor are they a definitive set of requirements for
fulfilling a checkpoint.
The guidelines are intended to
be used by developers of all tools used to produce content for the Web. These
include:
- Editing tools specifically designed to produce Web content (e.g., WYSIWYG HTML editors, SMIL
authoring packages);
- Tools that offer the option of saving material in a Web format (e.g.,
word processors or desktop publishing packages);
- Tools that translate documents into Web formats (e.g., filters to
translate desktop publishing formats to HTML);
- Tools that produce multimedia, especially where it is intended for use
on the Web (e.g., video production and editing suites);
- Tools for site management or site publication, including on-the-fly
conversion and Web site publishing tools;
- Tools for management of layout (e.g., CSS formatting tools).
The guidelines documents have been organized to address readers seeking
abstract principles of accessible authoring tool design and readers seeking
concrete solutions. The guidelines documents define three terms for different
levels of abstraction:
- Guideline
- A guideline is a general principle of accessible authoring tool
design. A guideline addresses the question "What accessibility issues
should I be aware of?"
- Checkpoint
- A checkpoint is a specific way of satisfying one or more guidelines.
While checkpoints describe verifiable actions that may be carried out by
the authoring tool developer, implementation details are described
elsewhere. A checkpoint answers the question "What must/should/may I do
to make an authoring tool (and the content it produces)
accessible?"
- Technique
- A technique is an example of, or further information about
implementation of a checkpoint. A technique answers the question "How
might I implement that in an authoring tool?"
There are three goals:
- The authoring tool is accessible
- The authoring tool generates accessible content
- The authoring tool encourages the creation of accessible content
Checkpoints are assigned priority according to how important they are to
meeting those goals:
- [Priority 1]
- Essential to meeting those goals
- [Priority 2]
- Important to meeting those goals
- [Priority 3]
- Beneficial to meeting those goals
The authoring tool is a software program with standard user interface
elements and as such should follow relevant user interface accessibility
guidelines.
The author may need a different presentation to edit the Web content than
the one they wish ultimately to be displayed. This implies display preferences
that do not manifest themselves in the ultimate markup or style
declarations.
Authoring Web content requires editing a potentially large and complex
document. In order to edit a document the author must be able to locate and
select specific blocks of text, efficiently traverse the document, and quickly
find and mark insertion points. Authors who use screen readers, refreshable
braille displays, or screen magnifiers can make limited use (if at all) of
visual artifacts that communicate the structure of the document and act as
sign posts when traversing the document. There are strategies that make it
easier to navigate and manipulate a marked up document. A compressed view of
the document allows the author to both get a good sense of the overall
structure and to navigate that structure more easily.
Checkpoints:
- 1.1 Use all applicable operating system and accessibility standards and conventions. [Priority 1]
-
- Guidelines for specific platforms include
- "IBM Guidelines for Writing Accessible Applications Using 100%
Pure Java" [JAVA-ACCESS] R.
Schwerdtfeger, IBM Special Needs Systems.
- "An ICE Rendezvous Mechanism for X Window System Clients" [ICE-RAP], W. Walker. A description of how
to use the ICE and RAP protocols for X Window clients.
- "Information for Developers About Microsoft Active
Accessibility" [MS-ACCESS] Microsoft
Corporation.
- "The Inter-Client communication conventions manual" [ICCCM]. A protocol for communication
between clients in the X Window system.
- "Lotus Notes accessibility guidelines" [NOTES-ACCESS] IBM Special Needs
Systems.
- "Java accessibility guidelines and checklist" [JAVA-CHECKLIST] IBM Special Needs
Systems.
- "The Java Tutorial. Trail: Creating a GUI with JFC/Swing" [JAVA-TUT]. An online tutorial that
describes how to use the Swing Java Foundation Class to build an
accessible User Interface.
- "Macintosh Human Interface Guidelines" [APPLE-HI] Apple Computer Inc.
- "The Microsoft Windows Guidelines for Accessible Software
Design" [MS-SOFTWARE]. Warning! This
is a "self-extracting archive", an application that will
probably only run on MS-Windows systems.
- Guidelines for specific software types include
- "The Three-tions of Accessibility-Aware HTML Authoring Tools"
[ACCESS-AWARE], J. Richards.
- "User Agent Accessibility Guidelines (Working Draft)" J.
Gunderson, I. Jacobs eds. (This is a work in progress) [WAI-USERAGENT]
- General guidelines for producing accessible software include:
- "Accessibility for applications designers" [MS-ENABLE] Microsoft Corporation.
- "Application Software Design Guidelines" [TRACE-REF] compiled by G. Vanderheiden.
A thorough reference work.
- "Designing for Accessibility" [SUN-DESIGN] Eric Bergman and Earl
Johnson. This paper discusses specific disabilities including
those related to hearing, vision, and cognitive function.
- "EITACC Desktop Software standards" [EITAAC] Electronic Information Technology
Access Advisory (EITACC) Committee.
- "Requirements for Accessible Software Design" [ED-DEPT] US Department of Education,
version 1.1 March 6, 1997.
- "Software Accessibility" [IBM-ACCESS] IBM Special Needs
Systems
- "Towards Accessible Human-Computer Interaction" [SUN-HCI] Eric Bergman, Earl Johnson, Sun
Microsytems 1995. A substantial paper, with a valuable print
bibliography.
- "What is Accessible Software" [WHAT-IS] James W. Thatcher, Ph.D., IBM,
1997. This paper gives a short example-based introduction to the
difference between software that is accessible, and software
that can be used by some assistive technologies.
- User Interfaces are sometimes built as web content, and as such
should follow the Web Content Accessibility Guidelines [WAI-WEBCONTENT] (See also
3 Support accessible authoring practices
)
- The following are common requirements for producing accessible
software. This list does not necessarily cover all requirements for
all platforms, and items may not be applicable to some software.:
- Draw text and objects using system conventions
- Make mouse, keyboard, and API activation of events
consistent
- Provide a User Interface that is "familiar" (to system
standards, or across platform)
- Use system standard indirections wherever possible
- Ensure all dialogs, subwindows, etc meet these
requirements
- Avoid blocking assistive technology functions (sticky/mouse
keys, screenreader controls, etc) where possible
- Allow users to create profiles
- Allow control of timing, colors, sizes, input/output devices
and media
- Allow users to reshape the user interface - customize
toolbars, keyboard commands, etc
- Provide Keyboard access to all functions
- Document all keyboard bindings
- Provide customizable keyboard shortcuts for common
functions
- Provide logical navigation order for the keyboard
interface.
- Avoid repetitive keying wherever possible
- Provide mouse access to functions where possible
- Provide visual (text) equivalents for sound warnings
- Allow sounds to be turned off
- Provide text equivalents for images/icons
- Use customizable (or removable) colors/patterns
- Ensure high contrast is available (as default setting)
- Provide text equivalents for all audio
- Use icons that are resizeable or available in multiple
sizes
- Do not rely on color alone for meaning. Use color for
differentiation, in combination with accessible cues (text
equivalents, natural language, etc)
- Position related text labels and objects consistently, and in
an obvious manner (labels before objects is recommended)
- Group related controls
- Ensure default window sizes fit in screen
- Allow for window resizing (very small to very large)
- Clearly identify the user focus (and expose it via API)
- moving focus should not cause unexpected events
- Allow user control of timing - delays, time-dependent
response, etc
- Allow for navigation between as well as within windows
- 1.2 Allow the author to change the editing view without changing the presentational markup defined for the document currently being edited. [Priority 1]
- In representing the source structure of a document mark elements
with textual brackets rather than purely graphic representations.
For example "</>" is regarded as a textual bracket, since it is
made of character elements.
- Allow the user to create audio style sheets using a visual
representation rather than an audio one (with accessible
representation, of course).
- An authoring tool that offers a "rendered view" of a document,
such as a browser preview mode, may provide an editing view whose
presentation can be controlled independently of the rendered
view.
- A "WYSIWYG" editor may allow an author to specify a
local stylesheet, that will override the "published" style of the
document.
- 1.3 Allow the author to display an editable equivalent for each element, object, and property that is available for editing. [Priority 1]
- Enable the author to view a document in its "source" mode.
- For a site management tool, allow the author to display a site map
in text form (e.g., as a structured tree file).
- Allow the author to specify that filenames or alternative content
are rendered in place of images or other multimedia content while
editing.
- Include attributes / properties of elements in a view of the
structure.
- Provide access to a list of properties via a "context menu" for
each element.
- Graphically represented elements cannot be identified by assistive
technologies that translate text to braille, speech, or large print,
unless there is appropriate information available as text. For
example, some HTML authoring tools display start and end tags as
graphics.
- An authoring tool may offer several views of the same
document.
- 1.4 Enable navigation and editing via the structure of the document. [Priority 1]
- Allow the author to navigate via an "outline" or "structure" of
the document being edited. This is particularly important for people
who are using a slow interface such as a small braille device, or
speech output, or a single switch input device. It is equivalent to
the ability provided by a mouse interface to move rapidly around the
document.
- To minimally satisfy this checkpoint, allow navigation from
element to element.
- 1.5 Enable editing of the structure of the document. [Priority 2]
- An authoring tool may offer a structured tree view of the
document, allowing the author to move among, select and cut, copy or
paste elements of the document.
The first step towards producing accessible content is conformance with
standards, which promotes interoperability.
Checkpoints:
- 2.1 Use applicable W3C Recommendations. [Priority 2]
- When creating document types, make full use of W3C Recommendations [W3C-RECS]
(Specifications that have been approved by the W3C. These
specifications have undergone review specifically to ensure that
they do not compromise, and where possible they enhance,
accessibility). For example when creating mathematical content for
the Web use MathML rather than another markup language. Use
applicable HTML structures.
- 2.2 Extensions to W3C Recommendations must not make content inaccessible. [Priority 1]
- New document types are constantly being developed, and in many
cases offer improvements to the structure and utility of Web
content. In implementing a new or extended document type it is
important to ensure that a tool does not remove access to
information that had been inherent in the base document type.
An HTML example of a document type that contravenes this
checkpoint is a FRAMESET used without NOFRAMES - it precludes access
to the underlying information, whereas NOFRAMES provides a means to
access the information contained within the FRAMESET.
The same can apply to a reduced DTD. For example, producing a DTD
that did not include the "alt" attribute for IMG, or effectively
working to such a DTD by not implementing a means to include the
attribute, compromises the accessibility of any included IMG
elements.
Methods for ensuring accessible markup vary with different markup
languages. If markup is automatically generated, many authors will be unaware
of the accessibility status of the final product unless they expend extra
effort to make appropriate corrections by hand. Since many authors are
unfamiliar with accessibility, these problems are likely to remain.
Many applications feature the ability to convert documents from other
formats (e.g., Rich Text Format) into a markup format, such as HTML. Markup
changes may also be made to facilitate efficient editing and manipulation.
These processes are usually hidden from the user's view and may create
inaccessible content or cause inaccessible content to be produced.
Checkpoints:
- 3.1 Implement all accessible authoring practices that have been defined for the markup language(s) supported by the tool. [Priority 1]
-
- 3.2 Produce content that conforms to the W3C's Web Content Accessibility Guidelines [WAI-WEBCONTENT]. [Priority 1 for level-A conformance, Priority 2 for double-A conformance, Priority 3 for triple-A conformance]
- Use consistent document structures
- Include markup which supports alternatives for media-dependent
elements or content
- Do not use structural markup for presentational effects, or
presentation markup for known structures.
- 3.3 Ensure that templates to be inserted in the document conform to W3C Web Content Accessibility Guidelines [WAI-WEBCONTENT]. [Priority 1 for level-A conformance, Priority 2 for double-A conformance, Priority 3 for triple-A conformance]
- Produce accessible representations for site maps generated by the
authoring tool.
- Provide equivalent alternatives for all non-text content (images,
audio, etc)
- Use consistent navigation schemata
- Ensure that event-handlers for scripts are device-independent
- Ensure that color schemes provide sufficient contrast for people
or technology with poor color separation
- Ensure that the natural language of the template is
identified
- Provide navigation bars
- Provide keyboard shortcuts for important links, etc.
- 3.4 Preserve all accessibility content during transformations and conversions. [Priority 1]
- When transforming a table to a list or list of lists, ensure that
table headings are transformed into headings, and summary or caption
information is retained as rendered content. (This transformation is
not necessarily cleanly reversible)
- When importing images with associated descriptions to an HTML
document make the descriptions available for use as longdesc, alt,
or title
- When converting from a word-processor format to HTML ensure that
headings and list items are transformed into appropriate headings of
the appropriate level, and list items in the appropriate type of
list (rather than as plain text with font formatting)
- Do not transform text into images - use style sheets for
presentation control, or an XML application such as Scalable Vector
Graphics that keeps the text as text. If this is not possible,
ensure that the text that is converted is available as "alt-text"
for the image.
Textual equivalents, including "alt-text", long descriptions, video
captions, and transcripts are absolutely necessary for the accessibility of
all images, applets, video, and audio files. However, the task of producing
these equivalents is probably the most time-consuming accessibility
recommendation made to the author.
The authoring tool can provide various mechanisms to assist the author in
generating textual equivalents while ensuring that the author can determine
whether the textual equivalent accurately reflects the information conveyed by
the multimedia object.
Including professionally written descriptions for all multimedia files
(e.g., clip-art) packaged with the tool will:
- Save users time and effort;
- Cause a significant number of professionally written descriptions to
circulate on the Web;
- Provide users with convenient models to emulate when they write their
own descriptions;
- Show authors the importance of description writing.
This will lead to an increase in the average quality of descriptions
used.
Checkpoints:
- 4.1 Prompt the author to provide alternative content (e.g., captions, descriptive video). (Priority 1 for alternative content that is [Web-Content-Priority-1], Priority 2 for alternative content that is [Web-Content-Priority-2], Priority 3 for alternative content that is [Web-Content-Priority-3])
- Provide an author with the option of specifying alternative
content, or electing to insert null alternative content for images,
audio, video. Default to an accessibility error such as no "alt"
attribute for images.
- Recognize collections of upper-case letters (in languages that
have case) and prompt the author for an expansion, to be provided in
markup.
- In Japanese, prompt the author for kana text that can be used as a
ruby for unusual or complex kanji
- 4.2 Prompt the author for all missing structural information (e.g., language changes, table headers). (Priority 1 for structural information that is [Web-Content-Priority-1], Priority 2 for structural information that is [Web-Content-Priority-2], Priority 3 for structural information that is [Web-Content-Priority-3])
- Prompt the author for header information for tabular data.
- Where there is a change in the character set (or subset) used,
prompt the author to identify whether there has been a change in
language
- Prompt the author for header information for tabular data.
- Prompt the author (and allow them to specify a default suggestion)
for the language of a document..
- 4.3 Allow the author to edit all alternative content and structural information. [Priority 1]
- 4.4 Provide pre-written alternative content for all multimedia files packaged with the authoring tool. [Priority 2]
- Use formats that allow for accessible annotation, such as
PNG.
- Provide long descriptions, and associated text files with
appropriate "alt-text" in clip-art collections.
- Provide video description files with prepackaged video.
- Provide text caption files for prepackaged audio, or video with
audio track(s).
- See also checkpoint 2.4.4
- 4.5 Provide a mechanism to manage alternative content for multimedia objects, that retains and offers for editing pre-written or previously linked alternative content. [Priority 3]
- Allow authors to add objects and alternative content to a database
maintained by the authoring tool. Whenever an object is used for
that alternative content is provided, ask if the author would like
to add the object and the alternative content to the database. Allow
different alternative content to be associated with a single
object.
- Allow authors to make keyword searches of a description database
(to simplify the task of finding relevant images, sound files,
etc.). A paper describing a method to
create searchable databases for video and audio files is
available (refer to [SEARCHABLE]).
- Suggest pre-written descriptions as default text whenever one of
the associated files is inserted into the author's document.
- This checkpoint is prioritized as a level 3, meaning that in
itself, it does not have a critical effect on an authoring tool's
likelihood of producing accessible mark-up. However, several limited
extensions to this alternative content mechanism (ACM) have the
potential to simultaneously meet several higher priority checkpoints
and dramatically improve the usability of an access aware authoring
tool. In particular:
- The ACM should maintain a list of associations between object
file names and authored responses to prompts for alternative
content (as per checkpoint 2.3.1 [Priority 1]). The alternative
content may take the form of short strings (i.e. "alt"-text) or
pointers to descriptive files (i.e., "longdesc", transcripts,
etc.). Multiple associations for the same object for different
languages or contexts should also be handled.
- The ACM would offer the associated alternative content as a
default whenever the appropriate associated object is selected
for insertion. If no previous association is found, the field
should be left empty (i.e., no purely rule-generated alternative
content should be used). Note: the term "default" implies that
the alternative content is offered for the author's approval.
The term does not imply that the default alternative content is
automatically placed without the author's approval. Such
automatic placement may only occur when in situations where the
function of the object is known with certainty, as per
checkpoint 2.3.5 [Priority 1]. Such a situation might arise in
the case of a "navigation bar builder" that places a navigation
bar at the bottom of every page on a site. In this case, it
would be appropriate to use the same "alt"-text automatically
for every instance of a particular image (with the same target)
on every page.
- The alternative content mechanism should be closely integrated
with the pre-written alternative content provided for all
packaged multimedia files, as per checkpoint 2.3.4 [Priority 2].
This would allow the alternative content to be automatically
retrieved whenever the author selected one of the packaged
objects for insertion. An important benefit of the system would
be the ease of adding a keyword search capability that would
allow efficient location of multimedia based on its alternative
content.
- 4.6 Do not insert automatically generated (e.g., the filename) or place-holder (e.g., "image") equivalent text, except in cases where human-authored text has been written for an object whose function is known with certainty. [Priority 1]
- Items used throughout a website, such as graphical navigation
bars, should have standard alternative content. However the author
should be prompted to edit or approve this the first time it is used
in a site, and when the destination of the links is changed by the
author.
- If the author has not specified alternative text for an IMG, or
that none is required, default to having no alt attribute, so that
an accessibility problem will be noted (see also checkpoint
2.6.1)
Techniques for this guideline:
When a new feature is added to an existing software tool without proper
integration, the result is often an obvious discontinuity. Differing color
schemes, fonts, interaction styles and even application stability can be
factors affecting user acceptance of the new feature.
Checkpoints:
- 5.1 Ensure that the highest-priority accessible authoring practices are the most visible and easily initiated by the author. Highlight the most accessible solutions when presenting choices for the author. [Priority 2]
- If there is more than one option for the author, and one option is
more accessible than another, place the more accessible option first
and make it the default. For example, when requesting alternative
content for an image, offer an unchecked option for empty
alternative (i.e., alt="", implying the image has no real function)
with the cursor positioned in the text entry for an "alt" value,
rather than offering the filename as a default suggestion, with the
null "alt" value selected.
- 5.2 Make generation of accessible content a naturally integrated part of the authoring process. [Priority 1]
- Ensure that accessible authoring practices can be easily accessed
by the author in a natural, intuitive fashion
- Include considerations for accessibility - such as the "alt" and
"longdesc" attributes of the IMG element - right below the "src"
attribute in a dialogue box, not buried behind an "Advanced..."
button.
- Allow efficient and fast access to accessibility-related settings
with as few steps as possible needed to make any changes that will
generate accessible content.
- Do not set accessibility features off to the side as some optional
"module"; rather, make them a part of the core operation of the
authoring tool.
- The "factory settings" default configuration for the authoring
tool should favor accessible solutions "out of the box", for the
benefit of newer users.
- A help page that describes how to make an image map should include
adding alternative content for each AREA in the MAP as part of the
process. Any examples of code should give either block content with
text links, or AREA elements that all have relevant ALT attribute
values.
- When a user creates a frameset, suggest the main content page and
a navigation bar as the content for NOFRAMES.
Many authoring tools allow authors to create documents with little or no
knowledge about the underlying markup. To ensure accessibility, authoring
tools must be designed so that they may automatically identify inaccessible
content, and enable its correction even when the markup itself is hidden from
the author.
In supporting the creation of accessible Web content, authoring tools must
take into account the differing authoring styles of their users. Some users
may prefer to be alerted to problems when they occur, whereas others may
prefer to perform a check after the document is completed. This is analogous
to programming environments that allow users to decide whether to check for
correct code during editing or at compile time.
Note that validity is an accessibility requirement, particularly for
assistive technologies.
Checkpoints:
- 6.1 Check for and alert the author to accessibility problems. (Priority 1 for accessibility problems that are [Web-Content-Priority-1], Priority 2 for accessibility problems that are [Web-Content-Priority-2], Priority 3 for accessibility problems that are [Web-Content-Priority-3])
- Highlight problems detected when documents are opened, or when an
editing or insertion action is completed.
- Alert authors to accessibility problems when saving.
- 6.2 Allow users to control both the nature and timing of accessibility alerts. [Priority 2]
- Allow users to choose different alert levels based on the priority
of authoring accessibility recommendations.
- If interruptive warnings are used, provide a means for the author
to quickly set the warning to non-obtrusive to avoid
frustration.
- Include alerts for [Web-Content-Priority 1]
checkpoints in the default configuration.
- Allow authors to control both the nature and timing of the
correction process.
- 6.3 Assist authors in correcting accessibility problems. (Priority 1 for accessibility problems that are [Web-Content-Priority-1], Priority 2 for accessibility problems that are [Web-Content-Priority-2], Priority 3 for accessibility problems that are [Web-Content-Priority-3])
-
- 6.4 When removing unrecognized markup, alert the author (according to a configurable schedule). [Priority 2]
- Provide a summary of all automated structural changes that may
affect accessibility.
- Do not change the DTD without notifying the author.
- 6.5 Provide the author with a summary of the document accessibility status on a configurable schedule. [Priority 3]
- 6.6 Allow the author to perform tag transformations. [Priority 3]
- For example, to transform visually formatted
elements to structure elements, or tables to lists.
- Allow the user to define transformations for imported documents
that have presentation, rather than structural, markup.
- Include pre-written transformations to rationalize multiple
tables, and to transform (deprecated) presentation HTML into style
sheets.
Techniques for this guideline:
- Prompts can be used to encourage authors to provide information needed
to make the content accessible (such as alternative textual
representations). Prompts are simple requests for information before a
markup structure has been finalized. For example, an "alt-text" entry
field prominently displayed in an image insertion dialog would constitute
a prompt. Prompts are relatively unintrusive and address a problem before
it has been committed. However, once the user has ignored the prompt, its
message is unavailable.
Alerts warn the author that there are problems that need to be
addressed. The art of attracting users' attention is a tricky issue. The
way users are alerted, prompted, or warned will influence their view of
the tool and their opinion of accessible authoring. See also
5 Integrate accessibility solutions into the overall "look and feel"
.
- User Configurable Schedule
- A user configurable schedule allows the user to determine the type
of prompts and alerts that are used, including when they are
presented. For example, a user may wish to include multiple images
without being prompted for alternative content, and then provide the
alternative content in a batch process, or may wish to be reminded
each time they add an image. If the prompting is done on a user
configurable schedule they will be able to make that decision
themselves. This technique allows a tool to suit the needs a wide
range of authors.
- Interruptive Alerts
- Interruptive alerts are informative messages that interrupt the
edit process for the user. For example, interruptive alerts are
often presented when a user's action could cause a loss of data.
Interruptive alerts allow problems to be brought to the user's
attention immediately. However, users may resent the constant delays
and forced actions. Many people prefer to finish expressing an idea
before returning to edit its format.
- Unintrusive Alerts
- Unintrusive alerts are alerts such as icons, underlines, and
gentle sounds that can be presented to the user without
necessitating immediate action. for example, in some word processors
misspelled text is highlighted without forcing the user to make
immediate corrections. These alerts allow users to continue editing
with the knowledge that problems will be easy to identify at a later
time. However, users may become annoyed at the extra formatting or
may choose to ignore the alerts altogether.
The issues surrounding Web accessibility are often unknown to Web authors.
Help and documentation should explain accessibility problems and solutions,
with examples.
Checkpoints:
- 7.1 Integrate accessible authoring practices in all applicable help topics. [Priority 1]
- Ensure that accessibility solutions are present in all help text
descriptions of markup practices (e.g., IMG elements should appear
with "alt-text" and a "longdesc" attribute wherever
appropriate).
- Provide examples of all accessibility solutions in help text,
including those of lower Web-Content-Priority.
- Link from help text to any automated correction utilities.
- Implement context-sensitive help for all special accessibility
terms as well as tasks related to accessibility.
- Link those mechanisms used to identify accessibility problems
(e.g., icons, outlining or other emphasis within the user interface)
to help files.
- 7.2 Explain the accessible authoring practices supported by the authoring tool. [Priority 1]
- Include help documentation for all accessible authoring practices
supported by the tool.
- 7.3 Do not use inaccessible markup in examples. [Priority 1]
- 7.4 Emphasize the universal benefit of accessible design. [Priority 3]
- In help text, when explaining the accessibility barriers of
non-deprecated elements, emphasize appropriate solutions rather than
explicitly discouraging the use of the element.
- Explain the importance of utilizing accessibility features
generally and for specific instances.
- In help text, emphasize accessibility features that benefit
multiple groups.
The Sample Implementations are not Guidelines, they are
Techniques. The section has been included to illustrate how the design
principles embodied in the guidelines sections can be applied to concrete
issues. The specific ideas discussed in this section are meant to be used only
as clarification.
The A-prompt tool [APROMPT] is an example tool that
allows for checking of many accessibility features in HTML pages, and
incorporates an "alt text registry" to manage alternative content for known
resources. The tool is built in such a way that the functions can be
incorporated into an authoring tool.
"Alt-text" is generally considered the most important aid to HTML
accessibility. For this reason, the issue of "alt-text" has been chosen as the
subject for an extended technique based on a hypothetical implementation.
- 1 Ensure that the Authoring Tool is Accessible to Authors with Disabilities
- Implementation: The author can edit the document using the
alternative content of the image in its place, and can access all the
properties of the image (height, width, etc)
- 2 Generate standard markup
- Implementation: In any content produced, the IMG element is
always properly formed as defined in the HTML4 specification. This means
that the element contains both a "src" attribute and an "alt"
attribute.
- 3 Support accessible authoring practices
- Implementation: Due to the [Web-Content-Priority 1]
recommendation status of "alt-text" in the Web Content Accessibility
Guidelines, special attention will be devoted to prompting and guiding
the user toward full "alt" coverage. The authoring tool has the
capability of opening and converting word processor documents into HTML.
If an image is encountered during this process, the user will be
prompted for "alt-text". The authoring tool sometimes makes changes to
the HTML it works with to allow more efficient manipulation. These
changes never result in the removal or modification of "alt-text"
entries.
- 4 Ensure that no accessibility content is missing
- Implementation: The authoring tool is shipped with many
ready-to-use clip art and other images. For each of these images a short
"alt-text" string and a longer description have been pre-written and
stored in an "alt-text" registry. When the user selects one of these
images for insertion, the alternative text and long description are
offered for editing and approval. Whenever the user includes another
image, the tool keeps the reference to that image and the associated
"alt-text" and long description in the "alt-text registry". When a text
alternative offered by the tool is edited, the tool adds the new text to
the registry, and offers both entries when the image is used again.
There is an option to mark any entry as the default.
- 5 Integrate accessibility solutions into the overall "look and feel"
- Implementation: At no point do "alt-text" requests appear
on their own or in a non-standard manner. Instead "alt-text"
notices and emphasis appear as integrated and necessary as the "src"
attribute.
- 6 Provide methods of checking and correcting inaccessible content
- Implementation: If the user opens content or pastes in markup
containing an IMG element that lacks "alt-text", the author is prompted
to add them. The tool can be configured to prompt as soon as an error is
detected, or to provide a highlight mark where these errors occur and to
prompt when the author is saving or publishing a document. The default
prompt includes prompting for a long description of each image.
- 7 Promote accessibility in help and documentation
- Implementation: Whenever missing "alt-text" is flagged
(anywhere in the tool suite) the same quick explanation, extended help,
and examples are offered. The help documentation for inserting images
and image maps includes providing alternative text as part of the
necessary steps, and describes how to determine appropriate alternative
text in the same section. Examples of images and image-maps all have
alternative text included, and images have long descriptions.
Interface mechanisms such as dialogs, menus, toolbars, and palettes can be
structured so that markup or elements that are accessible are given as the
first and easiest choice.
Prompts can be used to encourage authors to provide information needed to
make the content accessible (such as alternative textual representations).
Prompts are simple requests for information before a markup structure has been
finalized. For example, an "alt-text" entry field prominently displayed in an
image insertion dialog would constitute a prompt. Prompts are relatively
unintrusive and address a problem before it has been committed. However, once
the user has ignored the prompt, its message is unavailable.
Alerts warn the author that there are problems that need to be addressed.
The art of attracting users' attention is a tricky issue. The way in which
users are alerted, prompted, or warned will influence their view of the tool
as well as their opinion of accessible authoring.
- User Configurable Schedule
- A user configurable schedule allows the user to determine the type of
prompts and alerts that are used, including when they are presented.
For example, a user may wish to include
multiple images without being prompted for alternative content, and then
provide the alternative content in a batch process, or may wish to be
reminded each time they add an image. If the prompting is done on a user
configurable schedule they will be able to make that decision
themselves. This technique allows a tool to suit the needs a wide range
of authors.
- Interruptive Alerts
- Interruptive alerts are informative messages that
interrupt the edit process for the user. For example, interruptive
alerts are often presented when a user's action could cause a loss of
data. Interruptive alerts allow problems to be brought to the user's
attention immediately. However, users may resent the constant delays and
forced actions. Many people prefer to finish expressing an idea before
returning to edit its format.
- Unintrusive Alerts
- Unintrusive alerts are alerts such as icons,
underlines, and gentle sounds that can be presented to the user without
necessitating immediate action. for example, in some word processors
misspelled text is highlighted without forcing the user to make
immediate corrections. These alerts allow users to continue editing with
the knowledge that problems will be easy to identify at a later time.
However, users may become annoyed at the extra formatting or may choose
to ignore the alerts altogether.
- Prompts
- Prompts are requests for user input, either information or a decision.
Prompts require author response.
- Alerts
- Alerts notify the author of something, or mark something for the
author's attention. They may or may not require author response.
- Authoring Tool
- As used in this document, an Authoring Tool is any software
that is used to generate content for publishing on the Web. See also
section 1.3 Scope of the
guidelines.
- Conversion
Tool
- A Conversion Tool is any application or
application feature that allows content in some other format
(proprietary or not) to be converted automatically into a particular
markup language. This includes software whose primary function is to
convert documents to a particular markup language as well as "save as
HTML" (or other markup language) features in non-markup
applications.
- Generation
Tool
- A Generation Tool is a program or script
that produces automatic markup "on the fly" by following a template or
set of rules. The generation may be performed on either the server or
client side.
- Site Management Tool
- A tool that provides an overview of an entire Web
site indicating hierarchical structure. It will facilitate management
through functions that may include automatic index creation, automatic
link updating, and broken link checking.
- Publishing
Tool
- A tool that allows content to be uploaded in an
integrated fashion. Sometimes these tools makes changes such as local
hyper-reference modifications. Although these tools sometimes stand
alone, they may also be integrated into site management tools.
- Image Editor
- A graphics program that provides a variety of
options for altering images of different formats.
- Video Editor
- A tool that facilitates the process of manipulating
video images. Video editing includes cutting segments (trimming),
re-sequencing clips, and adding transitions and other special
effects.
- Multi-media Authoring
Tool
- Software that facilitates integration of diverse
media elements into an comprehensive presentation format. May
incorporate video, audio, images, animations, simulations, and other
interactive components.
- Automated Markup Insertion
Function
- Automated markup insertion functions are the
features of an authoring tool that allow the user to produce markup
without directly typing it. This includes a wide range of tools from
simple markup insertion aids (such as a bold button on a toolbar) to
markup managers (such as table makers that include powerful tools such
as "split cells" that can make multiple changes) to high level site
building wizards that produce almost complete documents on the basis of
a series of user preferences.
- Transformation
- A process whereby one object is changed, according to a discrete set
of rules, into another, equivalent, object. This includes any
application or application feature that allows content
that is marked up in a particular markup language to be transformed into
another markup language, such as software that allows the author to
change the DTD defined for the original document to another DTD. It also
describes the substitution of textual equivalents for graphical or
visually defined elements and objects, and the conversion from one
element type to another within a document.
- Document
- A document is a series of elements that are defined by a
language (e.g., HTML 4.0 or an XML application).
- Element
- An element is any identifiable object within a document, for example a
character, word, image, paragraph or spreadsheet cell. In HTML and XML
an element refers to a pair of tags and their content, or an "empty" tag
- one that has no closing tag or content.
- Property
- A property is a piece of information about an element, for example
structural information (e.g., it is item number 7 in a list, or plain
text) or presentation information (e.g., that it is marked as bold, its
font size is 14). In XML and HTML properties of an element include the
name of the element (e.g., IMG or DL), the values of its attributes, and
information associated by means of a stylesheet. In a database,
properties of a particular element may include values of the entry, and
acceptable data types for that element.
- Attributes
- in XML and HTML, an element may have any number of attributes. In the
following example, the attributes of the beverage element are flavour,
which has the value "lots", and colour, which has the value "red":
<beverage flavour="lots" colour="red">my favorite</beverage> Some
attributes are integral to document accessibility (e.g., the "alt",
"title", and "longdesc" attributes in HTML
- Rendered Content
- The rendered content is that which an element actually
causes to be rendered by the user agent. This may differ from the
element's structural content. For example, some elements cause external
data to be rendered (e.g., the IMG element in HTML), and in some cases,
browsers may render the value of an attribute (e.g., "alt", "title") in
place of the element's content.
- Accessibility
Awareness
- The term accessibility awareness is used to
describe an application that has been designed to maximize the ease of
use of the interface and its products for people with differing needs,
abilities and technologies. In the case of authoring tools, this means
that (1) care has been taken to ensure that the content produced by
user-authors is accessible and (2) that the user interface has been
designed to be usable with a variety of display and control
technologies.
- Accessible, Accessibility
- Within these guidelines, Accessible and Accessibility are used in the
sense of being accessible to people regardless of disability.
- Inaccessible
Markup, Inaccessible Element, Inaccessible Attribute, Inaccessible
Authoring Practice and Access Barrier
- All these terms are used in the context of
inaccessibility as defined by the Web
Content Accessibility Guidelines [WAI-WEBCONTENT].
- Accessibility Solution,
Accessible Authoring Practice
- These terms refer to Authoring practices that improve the
accessibility of content generated by the tool..
- Alternative Textual Representations
- Certain types of content may not be accessible to all users (e.g.,
images), so authoring tools must ensure that alternative textual representations
("Alt-text") of information is available to the user. Alternative text
can come from element content (e.g., the OBJECT element) or attributes
(e.g., "alt" or "title").
- Description Link (D-link)
- A description link, or D-Link, is an author-supplied link
to additional information about a piece of content that might otherwise
be difficult to access (image, applet, video, etc.).
- Transcripts
- A transcript is a line by line record of all dialog and action within
a video or audio clip.
- Video Captions
- A video caption is a textual message that is stored in the text track
of a video file. The video caption describes the action and dialog for
the scene in which it is displayed.
- Inserting an element
- Inserting an element involves placing
that element's markup within the markup of the file. This applies to all
insertions, including, but not limited to, direct coding in a text
editing mode, choosing an automated insertion from a pull-down menu or
tool bar button, "drag-and-drop" style insertions, or "paste"
operations.
- Editing an element
- Editing an element involves making
changes to one or more of an element's attributes or properties. This
applies to all editing, including, but not limited to, direct coding in
a text editing mode, making changes to a property dialog or direct User
Interface manipulation.
- Views
- An authoring tool may offer several views of the same
document. For instance, one view may show raw markup, a second may show
a structured tree view, a third may show markup with rendered objects
while a final view shows an example of how the document may appear if it
were to be rendered by a particular browser.
- Editing view
- What is displayed by the authoring tool to the author during the
editing process.
- Rendered view
- What is displayed by the authoring tool to the
author as a means of simulating how a user of the document being edited
will interact with the document currently being edited as a published
document.
- Selection
- A selection is a set of elements
identified for a particular operation. The user selection identifies a
set of elements for certain types of user interaction (e.g., cut, copy,
and paste operations). The user selection may be established by the user
(e.g., by a pointing device or the keyboard) or via an accessibility
Application Programmatic Interface (API). A view may have several
selections, but only one user selection.
- Current User
Selection
- When several views co-exist, each may have a user
selection, but only one is active, called the current user
selection. The selections may be rendered specially (e.g.,
visually highlighted).
- Focus
- The focus designates the active element
(e.g., link, form control, element with associated scripts, etc.) in a
view that will react when the user next interacts with the
document.
Many thanks to the following people who have contributed through review and
comment: Jim Allan, Denis Anson, Kynn Bartlett, Harvey Bingham, Judy Brewer,
Carl Brown, Dick Brown, Kelly Ford, Wendy Chisholm, Rob Cumming, Daniel
Dardailler, Mark Day, BK Delong, Jamie Fox, Sylvain Galineau, Al Gilman, Eric
Hansen, Phill Jenkins, Len Kasday, Brian Kelly, William Loughborough, Karen
McCall, Charles Oppermann, Dave Pawson, Dave Poehlman, Bruce Roberts, Chris
Ridpath, Gregory Rosmaita, Jim Thatcher, Irène Vatton, Gregg
Vanderheiden, Pawan Vora, Jason White, and Lauren Wood.
If you have contributed to the AU guidelines and your name does not appear
please contact the editors to add your name to the list.
- [ACCESS-AWARE]
- "The Three-tions of Accessibility-Aware HTML
Authoring Tools", J. Richards. Available at:
http://www.utoronto.ca/atrc/rd/hm/3tions.htm
- [APPLE-HI]
- "Macintosh Human Interface Guidelines", Apple
Computer Inc. Available at:
http://developer.apple.com/techpubs/mac/HIGuidelines/HIGuidelines-2.html
- [APROMPT]
- A-prompt tool is a freely available example tool
developed by the Adaptive Technology Resource Center at the University
of Toronto, and the TRACE center at the University of Wisconsin. The
source code for the tool is also available: http://aprompt.snow.utoronto.ca
- [CSS1]
- "CSS, level 1 Recommendation", B. Bos, H. Wium Lie, eds. The CSS1
Recommendation is available at:
http://www.w3.org/TR/REC-CSS1
- [CSS2]
- "CSS, level 2 Recommendation", B. Bos, H. Wium Lie, C. Lilley, and I.
Jacobs, eds. The CSS2 Recommendation is available at:
http://www.w3.org/TR/REC-CSS2/
- [CSS2-ACCESS]
- "WAI Resources: CSS2 Accessibility Improvements",
I. Jacobs and J. Brewer, eds. This document, that describes
accessibility features in CSS2, is available at:
http://www.w3.org/WAI/References/CSS2-access
- [ED-DEPT]
- "Requirements for Accessible Software Design", US
Department of Education, version 1.1 March 6, 1997. Available at:
http://ocfo.ed.gov/coninfo/clibrary/software.htm.
- [EITAAC]
- "EITACC Desktop Software standards", Electronic
Information Technology Access Advisory (EITACC) Committee. Available at:
trace.wisc.edu/docs/eitacc_desktop_software_standards/desktop_software_standards.htm
- [HTML40]
- "HTML 4.0 Recommendation", D. Raggett, A. Le Hors, and I. Jacobs, eds.
The HTML 4.0 Recommendation is available at:
http://www.w3.org/TR/REC-html40/
- [HTML4-ACCESS]
- "WAI Resources: HTML 4.0 Accessibility
Improvements", I. Jacobs, J. Brewer, and D. Dardailler, eds. This
document, that describes accessibility features in HTML 4.0, is
available at:
http://www.w3.org/WAI/References/HTML4-access
- [IBM-ACCESS]
- "Software Accessibility" IBM Special Needs Systems.
Available at:
http://www.austin.ibm.com/sns/accesssoftware.html
- [ICCCM]
- "The Inter-Client communication conventions
manual". A protocol for communication between clients in the X Window
system. Available at:
http://ftp.x.org/pub/R6.3/xc/doc/specs/ICCCM/
- [ICE-RAP]
- "An ICE Rendezvous Mechanism for X Window System
Clients", W. Walker. A description of how to use the ICE and RAP
protocols for X Window clients. Available at:
http://trace.wisc.edu/docs/x_win_andice/x_andice.htm
- [JAVA-ACCESS]
- "IBM Guidelines for Writing Accessible Applications
Using 100% Pure Java", R. Schwerdtfeger, IBM Special Needs Systems.
Available at:
http://www.austin.ibm.com/sns/snsjavag.htm
- [JAVA-CHECKLIST]
- "Java Accessibility Guidelines and Checklist" IBM
Special Needs Systems. Available at:
http://www.austin.ibm.com/sns/accessjava.html
- [JAVA-TUT]
- "The Java Tutorial. Trail: Creating a GUI with
JFC/Swing". An online tutorial that describes how to use the Swing Java
Foundation Class to build an accessible User Interface. Available at:
http://java.sun.com/docs/books/tutorial/uiswing/
- [MS-ACCESS]
- "Information for Developers About Microsoft Active
Accessibility" Microsoft Corporation. Available at:
http://www.microsoft.com/enable/msaa/develop.htm
- [MS-ENABLE]
- "Accessibility for Applications Designers"
Microsoft Corporation. Available at:
http://www.microsoft.com/enable/dev/apps.htm
- [MS-SOFTWARE]
- "The Microsoft Windows Guidelines for Accessible
Software Design". Warning! This is a "self-extracting archive", an
application that will probably only run on MS-Windows systems.
http://www.microsoft.com/enable/download/winapp23.exe
- [NOTES-ACCESS]
- "Lotus Notes Accessibility Guidelines" IBM Special
Needs Systems. Available at:
http://www.austin.ibm.com/sns/accessnotes.html.
- [SEARCHABLE]
- "A Comparison of Schemas for Dublin Core-based
Video Metadata Representation", J Hunter. Available at: http://www.dstc.edu.au/RDU/staff/jane-hunter/mpeg7/contribution.htm
- [SUN-DESIGN]
- "Designing for Accessibility" Eric Bergman and Earl
Johnson. This paper discusses specific disabilities including those
related to hearing, vision, and cognitive function. Available at:
http://www.sun.com/tech/access/software.guides.html
- [SUN-HCI]
- "Towards Accessible Human-Computer Interaction"
Eric Bergman, Earl Johnson, Sun Microsytems 1995. A substantial paper,
with a valuable print bibliography. Available at:
http://www.sun.com/tech/access/updt.HCI.advance.html.
- [TRACE-REF]
- "Application Software Design Guidelines" compiled
by G. Vanderheiden. A thorough reference work. Available at:
http://trace.wisc.edu/docs/software_guidelines/software.htm
- [W3C-RECS]
- "W3C Technical Reports and Publications" The latest versions of W3C
Recomendations are available at:
http://www.w3.org/TR
- [WAI-AUTOOLS]
- "Authoring Tool Accessibility Guidelines (Working
Draft)", J. Treviranus, J. Richards, I. Jacobs, and C. McCathieNevile
eds. The latest working draft of these guidelines is available at:
http://www.w3.org/WAI/AU/WAI-AUTOOLS
- [WAI-USERAGENT]
- "User Agent Accessibility Guidelines", J. Gunderson and I. Jacobs,
eds. These guidelines for designing accessible user agents are available
at:
http://www.w3.org/TR/WAI-USERAGENT
- [WAI-WEBCONTENT]
- "Web Content Accessibility Guidelines 1.0", W. Chisholm, G.
Vanderheiden, and I. Jacobs, eds. These guidelines for designing
accessible documents are available at:
http://www.w3.org/TR/WAI-WEBCONTENT
- [WAI-WEBCONTENT-TECHS]
- "Techniques for Web Content Accessibility Guidelines", W. Chisholm, G.
Vanderheiden, and I. Jacobs, eds. These techniques for designing
accessible documents are available at:
http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/
- [Web-Content-Priority]
- Priorities
defined by [WAI-WEBCONTENT].
- [WHAT-IS]
- "What is Accessible Software" James W. Thatcher,
Ph.D., IBM, 1997. This paper gives a short example-based introduction to
the difference between software that is accessible, and software that
can be used by some assistive technologies. Available at
http://www.austin.ibm.com/sns/software.html.