Status of this document
This section describes the status of this document at the time of its
publication. Other documents may supersede this document. The latest status of
this document series is maintained at the W3C.
This version of Techniques for Authoring Tool Accessibility is a working
draft of an update to W3C Note, published as an informative appendix to
"Authoring Tool Accessibility Guidelines". This document is a draft for
Working Group review. It is intended that it will update the previous version
of this Note but does not represent consensus within the WAI Authoring Tools
Guidelines (AUWG)
Working Group, nor within W3C. This document is likely to change and should
not be cited as reference material or anything other than "work in progress".
The Working Group expects to update this document in response to queries
raised by implementors of the Guidelines, for example to cover new
technologies. Suggestions for additional techniques are welcome.
This document represents an attempt to make it clearer how to use the
techniques for different types of tools, and integrates a section on
evaluating conformance to the guidelines.
For further information about Working Group decisions, please consult the
minutes of AUWG
Meetings.
This document has been produced by the Authoring Tool Accessibility Guidelines
Working Group (AUWG)
as part of the Web Accessibility Initiative
(WAI). The goals of the
Working Group are discussed in the AUWG charter.
Please send general comments about this document to the public mailing
list: w3c-wai-au@w3.org (public archives).
Please note that this document is known to contain typographical errors which
do not need comment. It was published as soon as possible since review of the
content itself is important.
A list of current W3C Recommendations and other technical documents
including Working Drafts and Notes can be found at http://www.w3.org/TR.
Table of Contents
Note on applicability of techniques: The following
techniques are applicable to all kinds of authoring tools, including those
that are insertable components of other authoring tools. For example, if an
authoring tool for designing on-line courses (courseware) a pre-fabricated
chat facility that the instructor can drag on to their page, this component
must comply with all the techniques for accessible output (guidelines 1-6) and
accessible user interface (guideline 7).
Proposed Authoring Tool Categories
Note: For the purposes of these techniques, authoring
tools may fall into one or more of the following categories. For example, an
HTML authoring tool that allows the user to create JavaScripts will fall under
two categories, Markup Editing Tools and Programming Tools. A SMIL editor that
includes a text-only view of the markup and a preview mode would be considered
both a Markup Editing Tool and a Multimedia Creation Tool.
1.
Markup Editing Tools: Tools that assist authors to produce markup
documents. These include text-based and WYSIWYG markup editors for HTML,
XHTML, SMIL, etc. and word processors that save as markup formats.
2.
Multimedia Creation Tools: Tools that assist authors to create
multimedia Web content without allowing access to the raw markup or
code of the output format. These include multimedia production tools
outputting SMIL or Quicktime as well as image editors, video editors, sounds
editors, etc.
3.
Content Management Tools: Tools that assist authors to create and
organize specific types of Web content without the author having control
over the markup or programming implementation. Good examples include
courseware in which the author is prompted to enter various information which
is then displayed in a format determined by the tool. Note:
If the tool allows the author to control the markup that is actaully used to
implement the higher-order content, then that functionality would be
considered to be a Markup Editing Tool.
4.
Programming Tools: Tools for creating all kinds of Web Applications,
including Java applets, Flash, server and client-side scripts, etc.Also
includes tools that assist authors to create markup languages (i.e. XML) and
tools that assist authors to create user interfaces (i.e. UIML?).
2 Techniques by ATAG Guideline
- ATAG 1.1 Ensure that the author
can produce accessible
content in the markup
language(s) supported by the tool. [Priority 1] (Checkpoint
1.1)
Ensure that all structural features of the supported languages are
available within the tool. [Required]
@@
Allow the author to directly edit the source markup. (Suggested)
When an extended (super-set) or simplified (sub-set) markup language
is supported, ensure that the accessibility features in the base
language are still available. (Suggested)
Allow the addition of equivalent alternatives for all supported image
formats that allow text content, including PNG, SVG, WebCGM, JPEG, and
GIF. [Required] @@
Reference:
- Web Content Accessibility Guidelines 1.0 [WCAG10] and Techniques
1.0 [WCAG10-TECHS].
- Other relevant Web Accessibility Initiative (WAI) documents:
- Many W3C language specifications detail accessibility
features.
- WAI Protocols and Formats draft notes on creating accessible
markup languages [XMLGL].
- ATAG 1.2 Ensure that the tool
preserves all accessibility
information during authoring, transformations,
and conversions.
[Priority 1] (Checkpoint
1.2)
Ensure that the tool preserves all the elements that are defined in
the relevant specification(s) even if it is unable to render them in a
publishing view or preview mode.[Required]
@@
Allow the author to decide whether or not to preserve unrecognized
markup (since it might be accessibility related). See ATAG 4.3.
(Suggested)
When transforming a table to a list or list of lists, ensure that
table headings are transformed into headings and that summary or caption
information is retained as rendered content. [Required] @@
When converting documents, allow authors to edit conversion templates
to specify the way presentation conventions should be converted into
structural markup.(Suggested)
When importing images with associated descriptions into a markup
document, make the descriptions available through appropriate
markup.
Avoid transforming text into images. Use style sheets for
presentation control, or an XML application such as Scalable Vector
Graphics [SVG] that keeps the text as
text. If this is not possible, ensure that the text is available as
equivalent text for the image. [Required]
@@
When converting from a word-processor format to markup, ensure that
headings and list items are transformed into appropriate structural
markup (appropriate level of heading or type of list, etc.).
Ensure that changes to a document's graphical layout do not reduce
readability when rendered serially. Some desktop publishing software
allow the author to view the linearized reading order. (Suggested)
When converting linked elements such as footnotes or endnotes, either
provide them as inline content or maintain two-way linking. In HTML,
this should be hypertext links rather than plain-text references.
(Suggested)
Reference:
Same references as ATAG 1.1, above.
- ATAG 1.3 Ensure that when the tool
automatically generates markup it conforms to the W3C's Web Content Accessibility
Guidelines 1.0 [WCAG10]. [Relative Priority] (Checkpoint
1.3)
Ensure that any markup generated automatically by the tool conforms to
the WCAG10 guidelines. Because this ATAG checkpoint has a relative
priority, it is the priority of the relevant WCAG checkpoints that
determines the level of conformance of the tool to the ATAG checkpoint
(*Note on Equivalent Alternatives: The equivalent
alternatives themselves may not be automatically generated unless the
function of the non-text element is known with certainty (see
ATAG 3.4)):
(WCAG 1.1, P1) Provide a text equivalent* for
every generated non-text element. This includes:
- images
- graphical representations of text (including symbols)
- image map regions
- animations (e.g., animated GIFs)
- applets and programmatic objects
- ascii art
- frames
- scripts
- images used as list bullets
- spacers
- graphical buttons
- sounds (played with or without user interaction)
- stand-alone audio files
- audio tracks of video
- video.
(WCAG 1.2, P1) Provide redundant text links* for
each active region of a generated server-side image map.
(WCAG 1.3, P1) Until user agents can
automatically read aloud the text equivalent of a visual track,
provide an auditory description* of the important information of the
visual track of a generated multimedia presentation.
(WCAG 1.4, P1) For tools that generate
time-based multimedia presentations (e.g., a movie or animation),
ensure synchronized equivalent alternatives* are provided. (e.g.,
captions or auditory descriptions of the visual track)
(WCAG 1.5, P3) Until user agents render text
equivalents for client-side image map links, provide redundant text
links* for each active region of a generated client-side image
map.
(WCAG 2.1, P1) Ensure that all generated
information conveyed with color is also available without
color.
(WCAG 2.2, Images: P2, Text: P3) Ensure that
foreground and background color combinations of generated images and
text provide sufficient contrast when viewed by someone having color
deficits or when viewed on a black and white screen.
(WCAG 3.1, P2) When an appropriate markup
language exists, generate markup rather than images to convey
information.
(WCAG 3.2, P2) Generate documents that validate
to published formal grammars.
(WCAG 3.3, P2) Generate style sheets to control
layout and presentation.
(WCAG 3.4, P2) Use relative rather than absolute
units in generated markup language attribute values and style sheet
property values.
(WCAG 3.5, P2) Use header elements to convey
generated document structure and use them according to
specification.
(WCAG 3.6, P2) Generate markup for lists and
list items properly.
(WCAG 3.7, P2) Generate markup for quotations in
templates. Do not use quotation markup for formatting effects such
as indentation.
(WCAG 4.1, P1) Clearly identify changes in the
natural language of generated text.
(WCAG 4.2, P3) Specify the expansion of each
abbreviation or acronym in a generated document where it first
occurs.
(WCAG 4.3, P3) Identify the primary natural
language of a generated document.
(WCAG 5.1, P1) For generated data tables,
identify row and column headers.
(WCAG 5.2, P1) For generated data tables that
have two or more logical levels of row or column headers, use markup
to associate data cells and header cells.
(WCAG 5.3, P2) Do not generate tables for layout
unless the table makes sense when linearized. Otherwise, if the
generated table does not make sense, provide an alternative
equivalent* (which may be a linearized version).
(WCAG 5.4, P2) If a generated table is used for
layout, do not use any structural markup for the purpose of visual
formatting.
(WCAG 5.5, P3) Provide summaries* for generated
tables.
(WCAG 5.6, P3) Provide abbreviations* for header
labels of generated tables.
(WCAG 6.1, P1) Organize generated documents so
they may be read without style sheets.
(WCAG 6.2, P1) Ensure that equivalents* for
generated dynamic content are updated when the dynamic content
changes.
(WCAG 6.3, P1) Ensure that generated pages are
usable when scripts, applets, or other programmatic objects are
turned off or not supported. If this is not possible, provide
equivalent information* on an alternative accessible page.
(WCAG 6.4, P2) For generated scripts and
applets, ensure that event handlers are input
device-independent.
(WCAG 6.5, P2) Ensure that generated dynamic
content is accessible or provide an alternative presentation* or
page.
(WCAG 7.1, P1) Until user agents allow users to
control flickering, avoid generating markup that causes the screen
to flicker.
(WCAG 7.2, P2) Until user agents allow users to
control blinking, avoid generating markup that causes content to
blink.
(WCAG 7.3, P2) Until user agents allow users to
freeze moving content, avoid generating markup that causes
movement.
(WCAG 7.4, P2) Until user agents provide the
ability to stop the refresh, do not generate periodically
auto-refreshing pages.
(WCAG 7.5, P2) Until user agents provide the
ability to stop auto-redirect, do not use generated markup to
redirect pages automatically. Instead, configure the server to
perform redirects.
(WCAG 8.1, Important and not elsewhere: P1,
Otherwise: P2) Make generated programmatic elements such as scripts
and applets directly accessible or compatible with assistive
technologies.
(WCAG 9.1, P1) Generate client-side image maps
instead of server-side image maps except where the regions cannot be
defined with an available geometric shape.
(WCAG 9.2, P2) Ensure that any generated element
that has its own interface can be operated in a device-independent
manner.
(WCAG 9.3, P2) For generated scripts, specify
logical event handlers rather than device-dependent event
handlers.
(WCAG 9.4, P3) Create a logical tab order
through generated links, form controls, and objects.
(WCAG 9.5, P3) Provide keyboard shortcuts to
important generated links (including those in client-side image
maps), form controls, and groups of form controls.
(WCAG 10.1, P2) Until user agents allow users to
turn off spawned windows, do not generate markup that cause pop-ups
or other windows to appear or change the current window without
informing the user.
(WCAG 10.2, P2) Until user agents support
explicit associations between labels and form controls, for all
generated form controls with implicitly associated labels*, ensure
that the label is properly positioned.
(WCAG 10.3, P3) Until user agents render
side-by-side text correctly, provide a linear text alternative (on
the current page or some other) for all generated tables that lay
out text in parallel, word-wrapped columns.
(WCAG 10.4, P3) Until user agents handle empty
controls correctly, include default, place-holding characters in
generated edit boxes and text areas.
(WCAG 10.5, P3) Until user agents render
adjacent links distinctly, include non-link, printable characters
(surrounded by spaces) between generated adjacent links.
(WCAG 11.1, P2) Generate markup using W3C
technologies when they are available and appropriate for a task and
use the latest versions when supported.
(WCAG 11.2, P2) Avoid generating deprecated
features of W3C technologies.
(WCAG 11.3, P3) Generate information so that
users may receive documents according to their preferences (e.g.,
language, content type, etc.)
(WCAG 11.4, P1) If, after best efforts, a
generated alternative page is necessary, ensure that it includes
equivalent information (or functionality), and is updated as often
as the inaccessible (original) page.
(WCAG 12.1, P1) Title* each generated frame to
facilitate frame identification and navigation.
(WCAG 12.2, P2) Describe* the purpose of
generated frames and how frames relate to each other if it is not
obvious by frame titles alone.
(WCAG 12.3, P2) Divide large blocks of generated
information into more manageable groups where natural and
appropriate.
(WCAG 12.4, P2) Associate generated labels*
explicitly with their controls.
(WCAG 13.1, P2) Clearly identify the target* of
each generated link.
(WCAG 13.2, P2) Provide metadata* to add
semantic information to generated pages and sites.
(WCAG 13.3, P2) Provide information* about the
general layout of a generated site (e.g., a site map or table of
contents). When site maps generated by the authoring tool, produce
accessible representations for them.
(WCAG 13.4, P2) Generate navigation mechanisms
in a consistent manner. For a tool that provides site-wide
management, ensure that all pages on the site make use of consistent
and clear navigation systems.
(WCAG 13.5, P3) Generate navigation bars to
highlight and give access to the navigation mechanism.
(WCAG 13.6, P3) When generating links, group
related links, identify the group (for user agents), and, until user
agents do so, provide a way to bypass the group.
(WCAG 13.7, P3) If search functions are
generated, enable different types of searches for different skill
levels and preferences.
(WCAG 13.8, P3) Generate distinguishing
information* at the beginning of headings, paragraphs, lists,
etc.
(WCAG 13.9, P3) Generate information* about
document collections (i.e., documents comprising multiple
pages.).
(WCAG 13.10, P3) Generate a means to skip over
multi-line ASCII art.
(WCAG 14.1, P1) Generate the clearest and
simplest language appropriate for a site's content.
(WCAG 14.2, P3) Supplement generated text with
graphic or auditory presentations where they will facilitate
comprehension of the page.
(WCAG 14.3, P3) Generate a style of presentation
that is consistent across pages.
Reference:
- ATAG 1.4 Ensure that templates
provided by the tool conform to the Web Content Accessibility Guidelines 1.0
[WCAG10]. [Relative Priority] (Checkpoint
1.4)
For tools that allow author's to create their own templates, advise the
author that templates should be held to a high accessibility standard,
since they will be repeatedly re-used. Help the author reach this goal
by making an accessibility check mandatory before saving as a template.
(Suggested)
Ensure that any template provided by the tool conforms to the WCAG10
guidelines. Because this ATAG checkpoint has a relative priority, it is
the priority of the relevant WCAG checkpoints that determines the level
of conformance of the tool to the ATAG checkpoint *Note on
Equivalent Alternatives: The equivalent alternatives themselves
may not appear in the template unless the function of the non-text
element is known with certainty (see ATAG 3.4)):
(WCAG 1.1, P1) Provide a text equivalent* for
every non-text element in a template. This includes:
- images
- graphical representations of text (including symbols)
- image map regions
- animations (e.g., animated GIFs)
- applets and programmatic objects
- ascii art
- frames
- scripts
- images used as list bullets
- spacers
- graphical buttons
- sounds (played with or without user interaction)
- stand-alone audio files
- audio tracks of video
- video.
(WCAG 1.2, P1) Provide redundant text links*
for each active region of a server-side image map in a
template.
(WCAG 1.3, P1) Until user agents can
automatically read aloud the text equivalent of a visual track,
provide an auditory description* of the important information of the
visual track of a multimedia presentation template.
(WCAG 1.4, P1) For templates of time-based
multimedia presentations (e.g., a movie or animation), ensure
synchronized equivalent alternatives* are provided. (e.g., captions
or auditory descriptions of the visual track)
(WCAG 1.5, P3) Until user agents render text
equivalents for client-side image map links, provide redundant text
links* for each active region of a client-side image map in a
template.
(WCAG 2.1, P1) Ensure that all information
conveyed with color in a template is also available without
color.
(WCAG 2.2, Images: P2, Text: P3) Ensure that
template foreground and background color combinations of images and
text provide sufficient contrast when viewed by someone having color
deficits or when viewed on a black and white screen.
(WCAG 3.1, P2) When an appropriate markup
language exists, use markup rather than images in templates to
convey information.
(WCAG 3.2, P2) Create templates that validate to
published formal grammars.
(WCAG 3.3, P2) Use style sheets to control
layout and presentation in templates.
(WCAG 3.4, P2) Use relative rather than absolute
units in markup language attribute values and style sheet property
values for templates.
(WCAG 3.5, P2) Use header elements to convey
template structure and use them according to specification.
(WCAG 3.6, P2) Mark up lists and list items
properly in templates.
(WCAG 3.7, P2) Mark up quotations in templates.
Do not use quotation markup for formatting effects such as
indentation.
(WCAG 4.1, P1) Clearly identify changes in the
natural language of text in a template.
(WCAG 4.2, P3) Specify the expansion of each
abbreviation or acronym in a template where it first occurs.
(WCAG 4.3, P3) Identify the primary natural
language of a template.
(WCAG 5.1, P1) For data tables in a template,
identify row and column headers.
(WCAG 5.2, P1) For data tables in a template
that have two or more logical levels of row or column headers, use
markup to associate data cells and header cells.
(WCAG 5.3, P2) Do not include tables for layout
in a template unless the table makes sense when linearized.
(WCAG 5.4, P2) If a table is used for layout in
a template, do not use any structural markup for the purpose of
visual formatting.
(WCAG 5.5, P3) Provide summaries* for tables in
a template.
(WCAG 5.6, P3) Provide abbreviations* for header
labels of tables in templates.
(WCAG 6.1, P1) Organize templates so they may be
read without style sheets.
(WCAG 6.2, P1) Ensure that equivalents* for
dynamic content in a template are updated when the dynamic content
changes.
(WCAG 6.3, P1) Ensure that page templates are
usable when scripts, applets, or other programmatic objects are
turned off or not supported. If this is not possible, provide
equivalent information* on an alternative accessible page.
(WCAG 6.4, P2) For template scripts and applets,
ensure that event handlers are input device-independent.
(WCAG 6.5, P2) Ensure that dynamic content in a
template is accessible or provide an alternative presentation* or
page.
(WCAG 7.1, P1) Until user agents allow users to
control flickering, avoid templates that causes the screen to
flicker.
(WCAG 7.2, P2) Until user agents allow users to
control blinking, avoid templates that causes content to blink.
(WCAG 7.3, P2) Until user agents allow users to
freeze moving content, avoid templates generating markup that causes
movement.
(WCAG 7.4, P2) Until user agents provide the
ability to stop the refresh, do not produce auto-refreshing
templates.
(WCAG 7.5, P2) Until user agents provide the
ability to stop auto-redirect, do not redirect pages automatically
from a template. Instead, configure the server to perform
redirects.
(WCAG 8.1, Important and not elsewhere: P1,
Otherwise: P2) Make programmatic element templates, such as scripts
and applets, and templates directly accessible or compatible with
assistive technologies.
(WCAG 9.1, P1) Use client-side image maps in
templates instead of server-side image maps except where the regions
cannot be defined with an available geometric shape.
(WCAG 9.2, P2) Ensure that any element in a
template that has its own interface can be operated in a
device-independent manner.
(WCAG 9.3, P2) For scripts in a template,
specify logical event handlers rather than device-dependent event
handlers.
(WCAG 9.4, P3) Create a logical tab order
through links, form controls, and objects in a template.
(WCAG 9.5, P3) Provide keyboard shortcuts to
important links (including those in client-side image maps), form
controls, and groups of form controls in a template.
(WCAG 10.1, P2) Until user agents allow users to
turn off spawned windows, do not produce templates that cause
pop-ups or other windows to appear or change the current window
without informing the user.
(WCAG 10.2, P2) Until user agents support
explicit associations between labels and form controls, for all form
controls with implicitly associated labels* in a template, ensure
that the label is properly positioned .
(WCAG 10.3, P3) Until user agents render
side-by-side text correctly, provide a linear text alternative (on
the current page or some other) for all tables in a template that
lay out text in parallel, word-wrapped columns.
(WCAG 10.4, P3) Until user agents handle empty
controls correctly, include default, place-holding characters in
edit boxes and text areas in a template.
(WCAG 10.5, P3) Until user agents render
adjacent links distinctly, include non-link, printable characters
(surrounded by spaces) between adjacent links in a template.
(WCAG 11.1, P2) Produce templates using W3C
technologies when they are available and appropriate for a task and
use the latest versions when supported.
(WCAG 11.2, P2) Avoid using deprecated features
of W3C technologies in templates.
(WCAG 11.3, P3) Provide information in a
template so that users may receive documents according to their
preferences (e.g., language, content type, etc.)
(WCAG 12.1, P1) Title* each frame in a template
to facilitate frame identification and navigation.
(WCAG 12.2, P2) Describe* the purpose of frames
in a template and how frames relate to each other if it is not
obvious by frame titles alone.
(WCAG 12.3, P2) Divide large blocks of
information in a template into more manageable groups where natural
and appropriate.
(WCAG 12.4, P2) Associate labels* explicitly
with their controls in a template.
(WCAG 13.1, P2) Clearly identify the target* of
each link in a template.
(WCAG 13.2, P2) Provide metadata* to add
semantic information to templates.
(WCAG 13.3, P2) Provide information* about the
general layout of a template page or site (e.g., a site map or table
of contents).
(WCAG 13.4, P2) Use navigation mechanisms in a
consistent manner in templates.
(WCAG 13.5, P3) Provide navigation bars to
highlight and give access to the navigation mechanism in
templates.
(WCAG 13.6, P3) Group related links, identify
the group (for user agents), and, until user agents do so, provide a
way to bypass the group in templates.
(WCAG 13.7, P3) If search functions are provided
in a template, enable different types of searches for different
skill levels and preferences.
(WCAG 13.8, P3) Place distinguishing
information* at the beginning of headings, paragraphs, lists, etc.
in templates.
(WCAG 13.9, P3) Provide information* about
template collections (i.e., templates comprising multiple
pages.).
(WCAG 13.10, P3) Provide a means to skip over
multi-line ASCII art in templates.
(WCAG 14.1, P1) Use the clearest and simplest
language appropriate for template content.
(WCAG 14.2, P3) Supplement text with graphic or
auditory presentations where they will facilitate comprehension of
the template.
(WCAG 14.3, P3) Create a style of presentation
that is consistent across templates for a site.
- Not Applicable: WCAG 11.4
Reference:
Sample(s):
Sample templates: main page
template, news and
events page template, page
about the template site, stylesheet
- ATAG 2.1 Use the latest versions of W3C Recommendations when they
are available and appropriate for a task. [Priority 2] (Checkpoint
2.1)
When creating documents or markup languages, make full use of W3C Recommendations (see WCAG 11.1,
P2). For example, when creating mathematical content for the
Web use MathML [MATHML] rather than another
markup language. Use applicable HTML 4 [HTML4] structures.[Required] @@
Do not publish Web content in markup languages that do not allow for
equivalent alternative information to be included for media-specific
presentations (such as images or video, sound, etc). Where this cannot
be avoided, make the information directly available from the content
generated. For example, convert the text equivalent of an image to a
caption for the image, or provide a "base" page that includes links to
alternative versions of content.[Required]
@@
When inserting objects such as spreadsheets or word processor
documents, offer the option of providing a Web-formatted version. For
example, a spreadsheet or a word processor document in a proprietary
format could also be published as an HTML document. Tools that
dynamically generate Web content may use HTTP content negotiation to
facilitate this.[Required] @@
A modular design that allows for the inclusion of languages will permit
tools to have a language "available" later in their development cycle,
or may allow tools to use languages which are not specified at the time
of development. Specifications that become W3C Recommendations after an
authoring tool's development cycles permit input are not considered
"available" in time. (Suggested)
Reference:
As of 18 September 2000 @@-update this
list the following languages are W3C Recommendations (latest
versions given):
- ATAG
2.2 Ensure that the tool automatically generates valid markup.
[Priority 1] (Checkpoint
2.2)
Ensure that the markup produced by the tool, in any of its supported
languages, is valid.[Required] @@
Publish proprietary language specifications or DTDs on the Web, to
allow documents to be validated.[Required]
@@
Use namespaces and schemas to make documents that can be
automatically transformed to a known markup language.[Required] @@
Reference:
- Validation tools are available. For example, [HTML-XML-VALIDATOR].
- WAI Protocols and Formats draft notes on creating accessible
markup languages [XMLGL].
- ATAG
2.3 If markup produced by the tool does not conform to W3C
specifications, inform
the author. [Priority 3] (Checkpoint
2.3)
To minimally meet this checkpoint, a tool must somehow inform the
author that the markup produced does not conform to W3C specifications.
This might be done with a statement on the saving dialog or with an
alert that is displayed following a save.(Suggested)
Invalid markup can be highlighted through the use of style
sheets.(Suggested)
If the tool produces inaccessible markup, whether it is valid or not,
see ATAG 4.1 for
checking techniques.(Suggested)
Sample(s):
- If Amaya imports or generates markup that does not
conform to W3C specifications it is highlighted in the structure view.
This occurs when Amaya tries to repair invalid markup and cannot
successfully do so.
[needs screenshot]
- ATAG 3.1 Prompt
the author to provide equivalent
alternative information (e.g., captions,
auditory
descriptions, and collated
text transcripts for video). [Relative Priority] (Checkpoint
3.1)
Provide a preview mode that uses alternative content. Although this
can give authors a clear understanding of some problems very easily, it
should be made clear that there are many ways in which a page may be
presented (aurally, text-only, text with pictures separately, on a small
screen, on a large screen, etc.). A view that renders the document as it
might appear without technologies such as style sheets and images
enabled, or the ability to turn those features off and on in the editing
view, will also give an author some idea of whether a document's logical
order has been correctly preserved, whether alternative text is
appropriate, etc.(Suggested)
Prompt the author to provide equivalent alternative information (e.g.,
captions, auditory descriptions, and collated text transcripts for
video). Because this ATAG checkpoint has a relative priority, it is the
priority of the relevant WCAG checkpoints that determines the level of
conformance of the tool to the ATAG checkpoint:
(WCAG 1.1, P1) Provide a text equivalent for
every non-text element (e.g., via "alt", "longdesc", or in element
content). This includes: images, graphical representations of text
(including symbols), image map regions, animations (e.g., animated
GIFs), applets and programmatic objects, ascii art, frames, scripts,
images used as list bullets, spacers, graphical buttons, sounds
(played with or without user interaction), stand-alone audio files,
audio tracks of video, and video.
- Require: When a multimedia object is inserted, prompt
the author for relevant alternatives: functional replacement and
long description for images, text captions (as text or as a
URI), video of signed translations for audio, and audio
descriptions for video (as well as alternatives for its audio
components).
- Require:In Japanese, Chinese, and other appropriate
languages, prompt the author for text that can be used as a ruby
for unusual ideographs or ideographic groups. Refer to [RUBY].
- Suggest: When video is inserted, prompt the author for
a still image as part of the alternative information.
- Suggest: Provide an author with the option of
specifying alternative information, or electing to insert null
alternative information for images, audio, video.
- Suggest: Prompt the author to identify the type of
image (decorative, a navigation icon, etc.).
- Suggest: Satisfying checkpoint
3.5 would provide much of the required functionality for
images.
- Suggest: Identify the natural language of text
equivalents. (WCAG 4.1, P1)
(WCAG 1.2, P1) Provide redundant text links for
each active region of a server-side image map.
- Suggest:Ask the author to identify regions in an image
map, or to describe how the coordinates will be used so that a
form-based input method can be generated.
(WCAG 1.3, P1) Until user agents can
automatically read aloud the text equivalent of a visual track,
provide an auditory description of the important information of the
visual track of a multimedia presentation.
(WCAG 1.4, P1) For any time-based multimedia
presentation (e.g., a movie or animation), synchronized equivalent
alternatives (e.g., captions or auditory descriptions of the visual
track) with the presentation.
(WCAG 1.5, P3) Until user agents render text
equivalents for client-side image map links, provide redundant text
links for each active region of a client-side image map.
- Use the same User interface for server and client side image
map creations, including prompting for alternatives for each
region. Use alternatives provided to generate redundant
text-based links for server-side maps.
(WCAG 6.2, P1) Ensure that equivalents for
dynamic content are updated when the dynamic content changes.
(WCAG 6.3, P1) Ensure that pages are usable when
scripts, applets, or other programmatic objects are turned off or
not supported. If this is not possible, provide equivalent
information on an alternative accessible page.
(WCAG 6.5, P2) Ensure that dynamic content is
accessible or provide an alternative presentation or page.
(WCAG 10.3, P3) Until user agents render
side-by-side text correctly, provide a linear text alternative (on
the current page or some other) for all tables that lay out text in
parallel, word-wrapped columns.
(WCAG 10.4, P3) Until user agents handle empty
controls correctly, include default, place-holding characters in
edit boxes and text areas.
(WCAG 11.4, P1) If, after best efforts, an
alternative page is necessary, ensure that it includes equivalent
information (or functionality), and is updated as often as the
inaccessible (original) page.
(WCAG 12.1, P1) Title each frame to facilitate
frame identification and navigation.
(WCAG 12.2, P2) Describe the purpose of frames
and how frames relate to each other if it is not obvious by frame
titles alone.
(WCAG 13.1, P2) Clearly identify the target of
each link.
- Prompt the author to provide text which can be used as a title
for a link.
(WCAG 13.2, P2) Provide metadata* to add
semantic information to templates.
- Ask authors for information about a page or site. If its
function is known (see also WCAG checkpoint 13.9) add this
information as metadata.
(WCAG 13.3, P2) Provide information* about the
general layout of a page or site (e.g., a site map or table of
contents).
- Prompt the author to provide a link or content describing the
structure of the site, and its accessibility features.
(WCAG 13.9, P3) Provide information* about
document collections (i.e.,documents comprising multiple pages.).
- Pattern-matching - ask authors to specify the role of pages
linked from a navigation bar.
- Where common names are used (search, home, map) as links, ask
the author to confirm these functions for use in linking.
- Not Applicable: WCAG 2.1, 2.2, 3.1 - 3.7, 4.1 -
4.3, 5.1 - 5.6, 6.1, 6.4, 7.1 - 7.5, 8.1, 9.1 - 9.5, 10.1, 10.2,
10.5, 11.1 - 11.3, 12.3, 12.4, 13.4 - 13.10, 14.1 -
14.3.
Reference:
- For more information on prompting, see Appendix A.
- ATAG 3.2 Help the author create
structured content and separate information from its presentation. [Relative Priority] (Checkpoint
3.2)
Support author's of DTD's or Schemas to specify explicit structure. For
example, encourage nesting where appropriate.
Help the author create structured content and separate information from
its presentation. Because this ATAG checkpoint has a relative priority,
it is the priority of the relevant WCAG checkpoints that determines the
level of conformance of the tool to the ATAG checkpoint:
(WCAG 1.1 - 1.5) Covered by ATAG
3.1.
(WCAG 2.1, P1) Ensure that all information
conveyed with color is also available without color.
- Prompt the author to identify a class, or markup element for
uses of color.
(WCAG 2.2, Images: P2, Text: P3) Ensure that
template foreground and background color combinations of images and
text provide sufficient contrast when viewed by someone having color
deficits or when viewed on a black and white screen.
- Suggest: Provide a monochrome preview for the author to
test themselves.
(WCAG 3.1, P2) When an appropriate markup
language exists, use markup rather than images to convey
information.
(WCAG 3.2, P2) Create documents that validate to
published formal grammars.
(WCAG 3.3, P2) Use style sheets to control
layout and presentation.
- Require: Prompt the author to identify the structural
role of content that has been emphasized through styling.
- Suggest: Provide a view which allows the author to edit
the layout and styling effects independently of the text
content.
- Suggest:Recognize formatting patterns and convert them
to style rules.
(WCAG 3.4, P2) Use relative rather than absolute
units in markup language attribute values and style sheet property
values.
(WCAG 3.5, P2) Use header elements to convey
document structure and use them according to specification.
- Suggest: Prompt the author to identify headings and
subheadings.
- Suggest: Provide an "outline" or "structure" view which
allows the author to easily grasp the heading structure, and
edit it.
(WCAG 3.6, P2) Mark up lists and list items
properly.
- Suggest: Recognize formatting conventions such as a
number of consecutive paragraphs beginning with a bullet
character (this may be a "bullet" or another punctuation
character like asterisk or dash "-") being used to identify a
list.
- Suggest: Include lists (marked as lists) in a
collapsible structure view
(WCAG 3.7, P2) Mark up quotations. Do not use
quotation markup for formatting effects such as indentation.
- Suggest: Where material appears within quote marks ask
the author if this is a quotation.
(WCAG 4.1, P1) Clearly identify changes in the
natural language of a document's text and any text equivalents
(e.g., captions).
- Use a dictionary lookup system to recognize changes of
language, or use of abbreviations and acronym.
(WCAG 4.2, P3) Specify the expansion of each
abbreviation or acronym where it first occurs.
- Recognize collections of uppercase letters as likely
abbreviations (in languages that have case) and prompt the
author for an expansion, to be provided in markup (e.g., in
HTML, with
abbr
or acronym
).
(WCAG 4.3, P3) Identify the primary natural
language of a document
- Prompt the author (and allow them to specify a default
suggestion) for the language of a document.
(WCAG 5.1, P1) For data tables, identify row and
column headers.
- Prompt the author to provide header information for tabular
data.
(WCAG 5.2, P1) For data tables that have two or
more logical levels of row or column headers, use markup to
associate data cells and header cells.
- Ask the author to group columns, rows, or blocks of cells that
are related.
(WCAG 5.3, P2) Do not use tables for layout
unless the table makes sense when linearized. Otherwise, if the
table does not make sense, provide an alternative equivalent (which
may be a linearized version).
- Suggest:Prompt the author to identify tables which are
used as layout devices.
- Suggest:For layout tables, provide a linearized
version, and offer it as a link from the table or as a
replacement.
- Reference:An example tool which linearizes tables is
tablin.
(WCAG 5.4, P2) If a table is used for layout, do
not use any structural markup for the purpose of visual
formatting.
(WCAG 5.5, P3) Provide summaries for tables.
- In a table creation wizard, include a summary or caption
dialog.
(WCAG 6.1, P1) Organize documents so they may be
read without style sheets.
- Provide a "draft" view which does not apply styling.
(WCAG 6.3, P1) Ensure that pages are usable when
scripts, applets, or other programmatic objects are turned off or
not supported. If this is not possible, provide equivalent
information on an alternative accessible page.
- Required: Prompt for alternative content for applets
and programmatic objects.
- Suggested: Prompt for server-side alternatives for
scripts and applets.
(WCAG 6.4, P2) For scripts and applets, ensure
that event handlers are input device-independent.
- Required: During applet development, prompt the author
to include device-independent means of activation.
(WCAG 6.5, P2) Ensure that dynamic content is
accessible or provide an alternative presentation or page.
(WCAG 7.1, P1) Until user agents allow users to
control flickering, avoid causing the screen to flicker.
(WCAG 7.2, P2) Until user agents allow users to
control blinking, avoid causing content to blink.
(WCAG 7.3, P2) Until user agents allow users to
freeze moving content, avoid movement in pages.
(WCAG 7.4, P2) Until user agents provide the
ability to stop the refresh, do not create periodically
auto-refreshing pages.
(WCAG 7.5, P2) Until user agents provide the
ability to stop auto-redirect, do not use markup to redirect pages
automatically. Instead, configure the server to perform
redirects.
(WCAG 9.1, P1) Use client-side image maps
instead of server-side image maps except where the regions cannot be
defined with an available geometric shape.
- Where regions are not easily defined, ask the author to
provide information that can be used to generate a form-based
input method and explains how the coordinates input will be
used. For example, for a geographic map the input might be used
to lookup latitude and longitude of a point and then give
information about that point.
(WCAG 9.2, P2) Ensure that any element that has
its own interface can be operated in a device-independent
manner.
(WCAG 9.3, P2) For scripts, specify logical
event handlers rather than device-dependent event handlers.
(WCAG 9.4, P3) Create a logical tab order
through links, form controls, and objects.
- Where there are only a few links that change in each page of a
collection, ask the author if they should receive focus first.
If so, then give them a tabindex, leaving the rest to after the
tabindexed links have been focused.
(WCAG 9.5, P3) Provide keyboard shortcuts to
important links (including those in client-side image maps), form
controls, and groups of form controls.
- Ask authors to specify an accesskey for links that appear
common to a number of pages
(WCAG 10.1, P2) Until user agents allow users to
turn off spawned windows, do not cause pop-ups or other windows to
appear or change the current window without informing the user.
(WCAG 10.4, P3) Until user agents handle empty
controls correctly, include default, place-holding characters in
edit boxes and text areas in a template.
- Prompt the author for default place-holder text.
(WCAG 11.2, P2) Avoid deprecated features of W3C
technologies.
(WCAG 11.3, P3) Provide information so that
users may receive documents according to their preferences (e.g.,
language, content type, etc.)
(WCAG 12.1, P1) Title each frame to facilitate
frame identification and navigation.
- Prompt the author for a short, human-readable title for each
frame.
(WCAG 12.2, P2) Describe the purpose of frames
and how frames relate to each other if it is not obvious by frame
titles alone.
- Prompt the author for a
longdesc
for each frame
in a frameset.
- Prompt the author to add a
noframes
section to
the frameset. Encourage the author to include sufficient links
to navigate the site, and relevant information. For example,
where a frameset defines a navigation frame and a welcome page,
include the content of each of these frames in the
noframes
.
(WCAG 12.3, P2) Divide large blocks of
information into more manageable groups where natural and
appropriate.
- Where there are more than 10 choices in a list
(
select
, checkbox
or
radio
boxes) ask the author to identify
subgroups
(WCAG 12.4, P2) Associate labels explicitly with
their controls.
- Ask authors to mark explicitly the labels for form inputs
(
input
and textarea
elements)
(WCAG 13.6, P3) Group related links, identify
the group (for user agents), and, until user agents do so, provide a
way to bypass the group.
- Ask authors if lists of links are a group and should be a
map.
(WCAG 14.1, P1) Use the clearest and simplest
language appropriate for a site's content.
- Provide readability ratings for text.
- Provide a thesaurus function
- Provide a grammar-checking function
- Not applicable: WCAG 5.6, 6.2, 8.1, 10.2 - 10.3,
10.5, 11.1, 11.4, 13-1 - 13.5, 13.7 - 13.10, 14.2,
14.3.
Reference:
- The WAI Evaluation and Repair group [WAI-ER] is developing a
document that discusses detailed techniques for testing the
accessibility of content according to the Web Content Accessibility
Guidelines, and methods of repairing it. A draft of that document is
available [AUTO-TOOL].
- Provide an outline view that lets the author clearly see the
structure of the document independently of the specified
presentation
Sample(s):
Tables: In Amaya, when the author creates a table, a
dialog is generated which asks for number of rows, columns, border
width. The author selects the appropriate information and a table is
created. The cursor is placed at the position of the table caption. The
status line, which appears at the bottom of the image, shows that the
position is in the caption element of the table.
- ATAG 3.3
Ensure that prepackaged content conforms to the Web Content Accessibility
Guidelines 1.0 [WCAG10]. [Relative Priority] (Checkpoint
3.3)
Note: Including pre-written descriptions for all
multimedia files (e.g., clip-art) packaged with the tool will save
authors time and effort, cause a significant number of professionally
written descriptions to circulate on the Web, provide authors with
convenient models to emulate when they write their own descriptions, and
show authors the importance of description writing. Refer also to checkpoint
3.5.
Use formats that allow for accessible annotation to be included in
the files, such as SMIL, PNG, and SVG.[Required]
@@
Provide long descriptions, and associated text files with appropriate
text equivalent in clip-art collections.[Required] @@
Provide video description files with prepackaged video.[Required] @@
Provide text caption files for prepackaged audio, or video with
auditory track(s).[Required] @@
- ATAG 3.4 Do not automatically
generate equivalent
alternatives. Do not reuse previously authored alternatives without
author confirmation, except when the function is known with certainty. [Priority 1] (Checkpoint
3.4)
If the author has not specified alternative text for an
IMG
, or specified that none is required, default to having
no "alt"
attribute, so that an accessibility problem will
be noted. Refer also
to checkpoint 4.1.[Required] @@
Human-authored equivalent alternatives may be available for an object
(for example, through checkpoint 3.5 and/or checkpoint 3.3). It
is appropriate for the tool to offer these to the author as
defaults.(Suggested)
Items used throughout a Website, such as graphical navigation bars,
should have standard alternative information. 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.(Suggested)
Where an object has already been used in a document, the tool should
offer the alternative content that was supplied for the first or most
recent use as a default.(Suggested)
- ATAG
3.5 Provide functionality for managing, editing, and reusing alternative
equivalents for multimedia objects. [Priority 3] (Checkpoint
3.5)
Note: This checkpoint is
priority 3, so it does not have a critical effect on an authoring tool's
likelihood of producing accessible mark-up. However, implementing this
checkpoint has the potential to simultaneously satisfy several higher
priority checkpoints (ATAG 3.1, ATAG 3.2, and ATAG 3.4) and dramatically
improve the usability of an authoring tool.
Maintain a database registry that associates object identity
information with alternative information. Whenever an object is used and
an equivalent alternative is collected (as per checkpoint 3.1) add
the object (or identifying information) and the alternative information
to the database. In the case of a text
equivalent, the alternate information may be stored in the document
source. For more substantial information (such as video captions or
audio descriptions), the information may be stored externally and linked
from the document source. Allow different alternative information to be
associated with a single object.(Suggested)
If such a database is maintained, the pre-written descriptions can be
presented to the author as default text in the appropriate field,
whenever one of the associated files is inserted into the author's
document. This satisfies ATAG 3.4 because the equivalent alternatives
are not automatically generated and they are only reused with author
confirmation.(Suggested)
If no previous association is found, the field should be left empty
(i.e., no purely rule-generated alternative information should be used).
Note: The term "default" implies that the alternative
information is offered for the author's approval. The term does not
imply that the default alternative information 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, per checkpoint
3.4. 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.(Suggested)
The pre-written alternative information provided for all packaged
multimedia files (per checkpoint 3.3) should be included in the database.
This would allow the alternative information 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 information.(Suggested)
References:
Checkpoints:
- ATAG
4.1 Check
for and inform
the author of accessibility
problems. [Relative Priority] (Checkpoint
4.1)
Note: Accessibility problems
should be detected automatically where possible. Where this is not
possible, the tool may need to prompt the
author to make decisions or to manually check for certain types of
problems. In the section below, the evaluation (ATAG 4.1) and repair
(ATAG 4.2) techniques for each WCAG checkpoint have been grouped
together.
See AERT document for evaluation and repair algorithms.(Suggested)
Highlight problems detected when documents are opened, when an editing
or insertion action is completed, or while an author is editing. Using
CSS classes to indicate accessibility problems will enable the author to
easily configure the presentation of errors.(Suggested)
Alert authors to accessibility problems when saving.(Suggested)
Accessibility problems can be highlighted using strategies similar to
spell checking within a word processor. Accessibility alerts within the
document can be linked to context sensitive help. Refer also to
checkpoint 4.2.(Suggested)
Where the tools cannot test for accessibility errors, provide the author
with the necessary information, wizards, etc. to check for
themselves.(Suggested)
Include alerts for WCAG 1.0 [WCAG10]
Priority 1 checkpoints in the default configuration.(Suggested)
Provide an editing view that shows equivalent alternatives in the main
content view to make it clear that they are necessary. This will make it
obvious when they are missing.(Suggested)
Allow authors to choose different alert levels based on the priority of
authoring accessibility recommendations.(Suggested)
If intrusive warnings are used, provide a means for the author to
quickly set the warning to non-obtrusive to avoid
frustration.(Suggested)
Reference:
- There are online tools whose output can be integrated with the
user interface. Other tools are available for incorporation in
existing software, either as licensed products or in some cases as
"open source" solutions. The WAI Evaluation and Repair group
maintains information about available tools [WAI-ER].
- The Web Accessibility Initiative's Protocols and Formats group
have a draft set of notes about creating accessible markup languages
[XMLGL].
Sample(s):
Bobby
[Screenshot needed]
- ATAG
4.2 Assist authors in correcting accessibility
problems. [Relative Priority] (Checkpoint
4.2)
At a minimum, provide context-sensitive help with the accessibility
checking required by checkpoint 4.1.(Suggested)
Where there are site-wide errors, to make correction more efficient,
allow the author to make site-wide changes or corrections. For example,
this may be appropriate for a common error in markup, but may not be
appropriate in providing a text equivalent that is appropriate for one
use of an image but completely inappropriate for the other uses of the
image on the same site (or even the same page).(Suggested)
Assist authors in ways that are consistent with the look and feel of the
authoring tool (See ATAG 5.1).(Suggested)
Allow authors to control both the nature and timing of the correction
process.(Suggested)
Provide a mechanism for authors to navigate sequentially among
uncorrected accessibility errors (See ATAG 7.4).(Suggested)
Sample(s):
A-Prompt:
[Screenshot needed]
- ATAG 4.3 Allow the author to preserve
markup not recognized by the tool. [Priority 2] (Checkpoint
4.3)
- Note: The author may have included
or imported markup that enhances accessibility but is not recognized by
the tool.
If possible, preserve all unrecognized markup, since it might be related
to accessibility (See ATAG 1.2).[Required] @@
If changes to markup that is not recognized by the tool are necessary
for the tool to further process the document (for example, a tool that
requires valid markup when a document is opened), inform the
author.[Required] @@
Provide options for the author to confirm or override removal of markup
on a change-by-change basis or as a batch process.(Suggested)
Provide a summary of all automated structural changes that may affect
accessibility.(Suggested)
Do not change the DTD without notifying the author.(Suggested)
- ATAG
4.4 Provide the author with a summary of the document's
accessibility status. [Priority 3] (Checkpoint
4.4)
Provide a list of all accessibility errors found in a Web page.[Required] @@
Provide a summary of accessibility problems remaining by type and/or
by number.(Suggested)
Sample(s):
- ATAG
4.5 Allow the author to transform presentation
markup that is misused to convey structure into structural
markup, and to transform presentation markup used for style into style
sheets. [Priority 3] (Checkpoint
4.5)
Allow the author to define transformations for imported documents
that have presentation, rather than structural, markup.[Required] @@
Remember that accessibility information, including attributes or
properties of the elements being transformed, must be preserved - see checkpoint
1.2.[Required] @@
Some examples of transformations include (Suggested):
- HTML table-based layout into CSS.
- HTML
BR
to the P
element.
- HTML (deprecated)
FONT
into heuristically or
author-determined structure.
- Word processor styles to Web styles.
- HTML deprecated presentational markup into CSS.
- XHTML
span
into ruby
.
- MathML presentational markup to semantic markup.
Implement XSLT [XSLT] together with a user-interface for expressing
transformations (see ATAG
2.1).(Suggested)
Allow the author to create style rules based on the formatting
properties of an element, and then apply the rule to other elements in
the document, to assist conversion of documents to the use of style
sheets(Suggested)
Include pre-written transformations to rationalize multiple tables,
and to transform (deprecated) presentation HTML into style
sheets.(Suggested)
Samples:
Amaya provides a language for specifying structure transformations,
and a large number of predefined transformations are included.
- ATAG
5.1 Ensure that functionality related to accessible
authoring practices is naturally integrated into the overall look and
feel of the tool. [Priority 2] (Checkpoint
5.1)
The accessibility features should be designed as integral components of
the authoring tool application, not plug-ins or other peripheral
components that need to be separately obtained, installed, configured or
executed.[Required] @@
Ensure that author can utilize the tool's accessible authoring features
by the same interaction styles used for other features in the program.
For example, if the tool makes use of onscreen symbols such as
underlines or coloration change rather than dialogs for conveying
information, then the same interface techniques should be used to convey
accessibility information.[Required]
@@
The same fonts, text sizes, colors, symbols, etc. that characterize
other program features should also characterize those dealing with
accessibility.[Required] @@
Include considerations for accessibility - such as the
"alt"
and "longdesc"
attributes of the HTML
IMG
element - right below the "src"
attribute
in a dialogue box, not buried behind an "Advanced..." button.[Required] @@
The default installation of the authoring tool should include all
accessibility features enabled. The author may have the option to
disable these features later on.[Required]
@@
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.(Suggested)
Sample(s):
- ATAG 5.2 Ensure that accessible
authoring practices supporting Web Content Accessibility Guidelines 1.0
[WCAG10] Priority 1 checkpoints
are among the most obvious and easily initiated by the author. [Priority 2] (Checkpoint
5.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 the author has selected text to
format, the use of CSS should be emphasized rather than deprecated
FONT
element.[Required]
@@
Highlight the most accessible solutions when presenting choices for the
author.(Suggested)
Provide an editing view that shows equivalent alternatives in the main
content view to make it clear that they are necessary, and will make it
obvious when they are missing.(Suggested)
Sample(s):
Amaya's user interface guides the author to produce structured
content, with presentation elements separated into style sheets.
[Screenshot needed]
Checkpoints:
- ATAG 6.1
Document all features that promote the production of accessible content.
[Priority 1] (Checkpoint
6.1)
Ensure that the help system of the tool can answer the questions: "What
features does this tool have to encourage the production of accessible
content?" and "How are these used?".[Required]
@@
Link from help text to any automated correction utilities.(Suggested)
Link those mechanisms to identify accessibility problems (i.e., icons,
outlining or other emphasis within the user interface) to help
files.(Suggested)
- ATAG 6.2 Ensure that creating
accessible content is a naturally integrated part of the documentation,
including examples. [Priority 2] (Checkpoint
6.2)
Always include accessibility-related practices in every example for
which one would be required, regardless of whether the example is meant
to emphasize this or not (e.g., HTML IMG
elements should
appear with an alt
attribute and a longdesc
attribute wherever appropriate).[Required]
@@
Provide examples of all accessibility solutions in help text, including
those of lower priority in WCAG 1.0 [WCAG10].[Required] @@
Writing Accessibility Rationale (Suggested):
- Ensure that documentation examples conform to WCAG 1.0
[WCAG10], at least to
the level that the tool conforms to ATAG 1.0 [ATAG10].
- Explain the importance of utilizing accessibility features
generally and for specific instances.
- Take a broad view of accessibility-related practices. For example,
do not refer to text equivalents as being
"for blind authors", but rather as "for authors who are not viewing
images".
- Emphasize accessibility features that benefit multiple groups. In
particular the principles of supporting flexible display and control
choices have obvious advantages for the emergence of hands free,
eyes-free, voice-activated browsing devices such as Web phone, the
large number of slow Web connections, and Web users who prefer
text-only browsing to avoid "image clutter".
Explaining Accessibility (Suggested):
- When explaining the accessibility issues related to non-deprecated
elements, emphasize appropriate solutions rather than explicitly
discouraging the use of the element.
- Avoid labeling accessibility features of the tool with a
"handicapped" icon, as this can give the impression that accessible
design practices only benefit disabled authors.
Context Sensitive Help (Suggested):
- For tools that include context sensitive help, implement
context-sensitive help for accessibility terms as well as tasks
related to accessibility.
Outside Reference (Suggested):
- Link to or provide URIs for more information on accessible Web
authoring, such as WCAG 1.0
[WCAG10], and other
accessibility-related resources.
- Document the tool's conformance to ATAG 1.0 [ATAG10].
- Include current versions of, or links to relevant language
specifications in the documentation. This is particularly relevant
for languages that are easily hand edited, such as most XML
languages [XML].
Tutorials (Suggested):
- Include a tutorial specifically on checking for and correcting Web
accessibility problems.
- ATAG 6.3 In a dedicated
section, document all features of the tool that promote the production of
accessible content. [Priority 3] (Checkpoint
6.3)
Ensure that the help system of the tool includes the documentation
required by ATAG 6.1 in a dedicated section.[Required] @@
The dedicated section could be prefaced by an introduction that explains
the importance of accessibility for a wide range of users, from those
with disabilities to those with alternative viewers.(Suggested)
Checkpoints:
- ATAG 7.1 Use all applicable
operating system and accessibility standards and conventions (Priority 1 for
standards and conventions that are essential to accessibility; Priority 2
for those that are important to accessibility; Priority 3 for those that are
beneficial to accessibility). (Checkpoint
7.1)
The techniques for this checkpoint include references to checklists and
guidelines for a number of platforms and to general guidelines for accessible applications. This list does not
cover all requirements for all platforms, and items may not apply to
some software. In addition, not all of the guidelines and checklists for
application accessibility are prioritized according to their impact on
accessibility. For instance, the priorities in "The Microsoft Windows
Guidelines for Accessible Software Design" [MS-SOFTWARE] are
partially determined by a logo requirement program. Therefore,
developers may need to compare the documents they are using to other
UAAG 1.0 [UAAG10] that has a priority
system that is directly compatible with the priorities in [ATAG10].
Also, when user interfaces are built as Web content, they should follow
the Web Content Accessibility Guidelines 1.0 [WCAG10]. [Required] @@
- Following
Standards
- 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 and APIs wherever
possible.
- Ensure all dialogs, subwindows, etc., satisfy these
requirements.
- Avoid blocking assistive technology functions (sticky/mouse
keys, screenreader controls, etc.) where possible.
- Configurability
- 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.
- Input Device Independence
- 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.
- Icons, Graphics, Sounds
- Provide graphical (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 resizable or available in multiple
sizes.
- Layout
- Do not rely on color alone for meaning. Use color for
differentiation, in combination with accessible cues (text
equivalents, natural language, etc.).
- Position objects and their related text labels in a consistent
and 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).
- User Focus
- Clearly identify the user focus (and expose it via API).
- Viewing content (i.e., moving the focus to a new point) should
not cause unexpected events.
- Allow user control of timing (i.e., delays, time-dependent
response, etc.)
- Allow for navigation between as well as within windows.
- Documentation
- Provide documentation for all features of the tool.
- Ensure that help functions are accessible.
References:
- Guidelines for specific platforms include:
- Java: "IBM Guidelines for Writing Accessible
Applications Using 100% Pure Java" [JAVA-ACCESS]
R. Schwerdtfeger, IBM Special Needs Systems.
- X Windows: "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.
- MS Active Accessibility: "Information for
Developers About Microsoft Active Accessibility" [MSAA] Microsoft
Corporation.
- X Windows: "The Inter-Client communication
conventions manual" [ICCCM]. A protocol
for communication between clients in the X Window system.
- Lotus Notes: "Lotus Notes accessibility
guidelines" [NOTES-ACCESS]
IBM Special Needs Systems.
- Java: "Java accessibility guidelines and
checklist" [JAVA-CHECKLIST]
IBM Special Needs Systems.
- Java Swing: "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: "Macintosh Human Interface
Guidelines" [APPLE-HI] Apple
Computer Inc.
- MS Windows: "The Microsoft Windows Guidelines
for Accessible Software Design" [MS-SOFTWARE].
- Guidelines for specific software types include:
- Authoring Tools: "The Three-tions of
Accessibility-Aware HTML Authoring Tools" [ACCESS-AWARE],
J. Richards.
- User Agents: "User Agent Accessibility
Guidelines (Working Draft)" J. Gunderson, I. Jacobs eds. (This
is a work in progress) [UAAG10]
- General guidelines for producing accessible software include:
- Microsoft: "Accessibility for applications
designers" [MS-ENABLE]
Microsoft Corporation.
- Trace: "Application Software Design
Guidelines" [TRACE-REF]
compiled by G. Vanderheiden. A thorough reference work.
- Sun: "Designing for Accessibility" [SUN-DESIGN]
Eric Bergman and Earl Johnson. This paper discusses specific
disabilities including those related to hearing, vision, and
cognitive function.
- EITAAG: "EITAAC Desktop Software standards"
[EITAAC] Electronic
Information Technology Access Advisory (EITACC) Committee.
- US Sept. of Education: "Requirements for
Accessible Software Design" [ED-DEPT] US
Department of Education, version 1.1 March 6, 1997.
- IBM: "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.
- ATAG 7.2
Allow the author to change the presentation within editing
views without affecting the document markup. [Priority 1] (Checkpoint
7.2)
-
-
For tools with editing views, the author must have the ability to change
the fonts, colours, sizing, etc. within the editing view, independently
of the ability to control the markup that is actually produced.
For tools that display the source structure of a document using
graphic representations of tags, provide the author with the option of
displaying the text of the elements, instead (i.e., <html> rather
than
).
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 style sheet,
that will override the "published" style of the document in the editing
view.
Allow the author to create audio style sheets using a graphical
representation rather than an audio one (with accessible representation,
of course).
Sample(s):
Amaya allows the author to create local style sheets, and to enable
or disable each style sheet that is linked to a document.
[Screenshot needed]
- ATAG 7.3 Allow the
author to edit all properties
of each element
and object in an accessible fashion. [Priority 1] (Checkpoint
7.3)
Allow the author to individually edit each attribute of the elements
in an HTML or XML document, for example, through a menu. This must
include the ability to add and edit later, values for all valid
attributes. (Suggested)
For tools that graphically represented element start and end tags,
text equivalent must be provided in order to be accessible to assistive
technologies that render text as Braille, speech, or large
print.(Suggested)
An authoring tool may offer several editing views of the same
document, such as a source mode that allows direct editing of all
properties.(Suggested)
For a site management tool, allow the author to render a site map in
text form (i.e., as a structured tree file).(Suggested)
Allow the author to specify that alternative information (or
identifiers such as a URI or filename) are rendered in place of images
or other multimedia content while editing.(Suggested)
Include attributes / properties of elements in a view of the
structure.(Suggested)
Provide access to a list of properties via a "context menu" for each
element.(Suggested)
Sample(s):
Amaya allows each attribute to be edited through the menu or through
the structure view. Element types can be assigned through the menu
system.
[Screenshot needed]
- ATAG 7.4
Ensure that the editing
view allows navigation via the structure of the document in an
accessible fashion. [Priority 1] (Checkpoint
7.4)
To minimally satisfy this checkpoint, allow navigation from element
to element.(Suggested)
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.(Suggested)
In a hypertext document, allow the author to navigate among links and
active elements of a document.(Suggested)
For time-based presentations (i.e., SMIL), allow the author to navigate
temporally through the presentation.(Suggested)
For an image expressed in a structured language (i.e., SVG), allow the
author to navigate regions of the image, or the document
tree.(Suggested)
Implement the HTML "accesskey"
attribute, and activate
it in editing views.(Suggested)
Sample(s):
Amaya provides a structure view, that can be navigated element by
element, a Table of Contents view, that allows navigation via the
headings, and a links view, that allows sequential navigation via the
links in the document. It also provides configurable keyboard navigation
of the HTML structure - parent, child, next and previous sibling
elements.
[Screenshot needed]
- ATAG 7.5 Enable
editing of the structure of the document in an accessible fashion. [Priority 2] (Checkpoint
7.5)
An authoring tool may offer a structured tree view of the document that
allows the author to move among, select and cut, copy or paste elements
of the document.(Suggested)
A WYSIWYG
tool may allow elements to be selected, and copied or moved while
retaining their structure.(Suggested)
A tool may allow transformation from one element type to another, such
as (Suggested):
- HTML: Paragraphs to lists and back
- HTML:
BR
to P
- SMIL: Transformations between
switch
, excl
, and par
- HTML:
FONT
(deprecated) into
heuristically determined structure
- MathML: Transformations between semantic and
presentation markup
- SVG:
g
to symbol
- Lists of lists to tables and back
- Giving a structural role to a part of an element, such as an SVG
g
or an HTML p
element
Sample(s):
Sample needed.
- 7.6 Allow the author to search within editing
views. [Priority 2] (Checkpoint
7.6)
Allow the user to search for a sequence of characters as a minimal
measure for meeting this checkpoint.[Required]
@@
More powerful searches can include the ability to perform searches that
are case sensitive or case-insensitive, the ability to replace a search
string, the ability to repeat a previous search to find the next or
previous occurrence, or to select multiple occurrences with a single
search.(Suggested)
The ability to search for a particular type of structure is useful in a
structured document, structured image such as a complex SVG image,
etc.(Suggested)
In an image editor, the ability to select an area by properties (such as
color, or closeness of color) is useful and common in middle range and
high end image processing software.(Suggested)
The ability to search a database for particular content, or to search
a collection of files at once (a simple implementation of the latter is
the Unix function "grep") is an important tool in managing large
collections, especially those that are dynamically converted into Web
content.(Suggested)
The use of metadata (per WCAG 1.0 [WCAG10])
can allow for very complex searching of large collections, or of timed
presentations. Refer also to the paper "A Comparison of Schemas for
Dublin Core-based Video Metadata Representation" [SEARCHABLE] for
discussion specifically addressing timed multimedia
presentations.(Suggested)
Sample(s):
Dreamweaver 4 includes a powerful search
function that takes advantage of the structure of HTML.

Evaluation Techniques for testing conformance
Is your tool:
- specifically designed to edit and produce Web content?
- equipped with the option of saving material in a Web format?
- able to transform non-Web documents into Web formats (e.g., filters to
transform desktop publishing formats to HTML)?
- capable of producing multimedia, especially where it is intended for use
on the Web?
If the answer to any of these questions is "yes", then the authoring tool
accessibility guidelines apply to your software. This document will help you
determine whether your tool complies with the guidleines or not.
IMPORTANT NOTE: Not all the checkpoints in the guidelines apply to all
kinds of tools. Therefore, this conformance evaluation process has been split
into sections:
- If your the tool allow you to insert image elements into a markup
document (ex. Web authoring tool, word processessor), then the tool is a
"Markup Editor". You need to complete Section A.
- If your tool allows you to create or edit images (ex. paint or drawing
program), then the tool is a "Multimedia Editor".
General requirements:
[Priority 2]
Does the tool support the latest version of all the markup languages it can
be used to produce? (2.1)
Documentation
Accessible Interface:
[Priority 1]
Does the tool allow you to edit all properties in an accessible fashion?
(7.3)
Markup Editor
PART 1: Images (including Image Maps)
IMPORTANT DEFINITION:
Equivalent Alternatives (EA)
An equivalent alternative (EA) is content that fulfills essentially
the same function or purpose upon presentation to the user as the
potentially inaccessible primary content. EAs play an important role
in accessible authoring practices since certain types of content may
not be accessible to all users (e.g., video, images, audio, etc.). For
more information, see the Web Content Accessibility Guidelines WCAG
1.0.
The Images Part of this document will refer to two priorities (1
and 3; there are 2's) of EAs according to the priority assigned to it
by the WCAG 1.0 recommendation. If a priority is not specified then
both priority levels are assumed. The following is a list of EAs
followed by their priority and the relevant WCAG checkpoint that
assigned the priority.
for Images:
- img:alt, img:longdesc, input:alt (HTML) - [Priority 1] (wcag 1.1)
- g:title, g:desc (SVG) - [Priority 1] (wcag 1.1)
- img:alt, img:longdesc, img:text (SMIL) - [Priority 1] (wcag 1.1)
for Image Maps:
- area:alt (HTML) - [Priority
1] (wcag 1.1)
- server-side image map regions:redundant text links (HTML) -
[Priority 1] (wcag
1.2)
- client-side image map regions:redundant text links (HTML) -
[Priority 3] (wcag
1.5)
for Objects displaying Images:
- object: text equivalent in the element content (HTML) - [Priority 1] (wcag 1.2)
NOTE: It is assumed that the term EA will refer to those EAs
appropriate to the type of markup or image produced. (ex. an HTML
editor only needs to be checked for the EAs relevant to HTML)
|
Inserting an Image:
INSTRUCTIONS: Use the tool to insert an image into a document and then answer
questions X to Y. If the tool is capable of inserting an image by drag and
drop, test this method as well. Answer questions Q1 to Q4.
[Priority 1]
Did the tool allow you to add the Equivalent Alternatives (EAs) for the
image (including typing one by hand after insertion)? (1.1)
Did the tool automatically generate EAs based on the file name, size or
other information that is not necessarily related to the function of the
image.?(note: different scoring - the tool must not do this)
(3.4)
[Priority 2]
Did the tool support the PNG format for inserting raster images and the SVG
format for inserting vector graphics? (2.1)
[Priority 3]
Does the tool let you search for, reuse or otherwise manage the EAs of
images? (3.5)
Saving:
INSTRUCTIONS: Use the tool to save the document. Answer questions Q5 and
Q6.
[Priority 1] Did the tool
prompt (require, suggest or notify you of the absence of information and
then provide a means for rectifying the situation) you to add Priority 1
EAs for all the images at some point during the creation of the document (ex.
at insertion of each image, after the successful save, etc.)? (3.1)
[Priority 3]
Did the tool prompt (require, suggest or notify you of the absence of
information and then provide a means for rectifying the situation) for
the addition of Priority 3 EAs for all the images at some point during the
creation of the document (ex. at insertion of each image, after the successful
save, etc.)? (3.1)
Re-saving and Reformatting:
INSTRUCTIONS: Create a new file with the following markup (appropriate to the
tool). The EAs are shown in bold. Open the file using the authoring tool. Save
the file and re-open it in a text editor.
HTML:
<html> <head> <title> </title> </head>
<body>
<img src="map.gif" alt="Map of the world"
longdesc="mapdesc.html">
<form method="POST"
action="http://somesite.com/prog/someprog">
<p><input type="image" src="map.gif" name="mapbutton"
alt="Buy map"></form>
<img src="map.gif" alt="Image map of the world"
usemap="#map1">
<p>[<a href="na.html">North America</a>]
[<a href="sa.html">South America</a>]</p>
<map name="map1">
<area shape="rect" coords="0,0,30,30" href="na.html" alt="North
America">
<area shape="rect" coords="34,34,100,100" href="sa.html" alt="South
America"></map>
<a href="http://myserver.com/cgi-bin/imagemap/my-map">
<img src="map.gif" alt="World map (Text links follow)"
ismap></a>
<p>[<a href="na.html">North America</a>]
[<a href="sa.html">South
America</a>]</p>
<object data="magnify.gif"
type="image/gif">Search</object>
</body> </html>
[Priority 1]
Does the tool preserve the values of the EAs during re-saving? (1.2)
INSTRUCTIONS: Create a new file with the markup above (appropriate to the
tool). Then "Round-trip" the file by saving it as another format and then
saving it back to the original (note: for this to work, the other format
chosen must include equivalent EAs, ex. HTML to XHTML and back).
[Priority 1]
Does the tool preserve the values of the EAs during reformatting? (1.2)
INSTRUCTIONS: Create a new file with the following markup (appropriate to the
tool). Open the file using the authoring tool. Save the file and re-open it in
a text editor.
HTML:
<html> <head> <title> </title> </head>
<body>
<img src="test.gif" alt="test alt" longdesc="test.html" testattr="test for
preserving unknown attributes">
</body> </html>
[Priority 2]
Does the tool preserve the unrecognized markup? ( 4.3)
[Priority 3]
Does the tool notify you that the output of the tool does not conform to
W3C specifications (due to the new attribute)? (2.3)
Automatic Markup Generation:
INSTRUCTIONS: If the tool has the ability to add entire elements (ex. IMG), a
groups of elements (toolbar generator) or even build a page for you (ex. a
wizard), then use it to generate a page that contains at least one image. Save
the file and re-open it in a text editor.
[Priority 1]
Does the tool automatically generate valid image markup (ex. is the
required ALT attribute present for all HTML4 IMG elements)? (2.2)
Are meaningful Priority 1 EAs included for the generated images? (1.3)
[Priority 3]
Are meaningful Priority EAs included for the generated images? (1.3)
Bundled Web Content:
INSTRUCTIONS: If the tool includes templates, open one that has at least one
image. Answer questions Q14 and Q15.
[Priority 1]
Are Priority 1 EAs included for the images in the template? (1.4)
[Priority 3]
Are Priority 3 EAs included for the images in the template? (1.4)
INSTRUCTIONS: If the tool includes bundled images (ex. clipart) , insert some
into the document. Answer questions Q16 and Q17.
[Priority 1]
Do the images include pre-written Priority 1 EAs? (3.3)
[Priority 3]
Do the images include pre-written Priority 3 EAs? (3.3)
Checking for Accessibility:
INSTRUCTIONS: Create a new file with the following markup (appropriate to the
tool) that has had its EAs removed. Open the file using the authoring tool.
HTML:
<html> <head> <title> </title> </head>
<body>
<img src="map.gif">
<form method="POST"
action="http://somesite.com/prog/someprog">
<p><input type="image" src="map.gif"
name="mapbutton"></form>
<img src="map.gif" alt="Image map of the world"
usemap="#map1">
<map name="map1">
<area shape="rect" coords="0,0,30,30" href="na.html">
<area shape="rect" coords="34,34,100,100"
href="sa.html"></map>
<a href="http://myserver.com/cgi-bin/imagemap/my-map">
<img src="map.gif" ismap></a>
<object data="magnify.gif"
type="image/gif"></object>
</body> </html>
[Priority 1]
Does the tool check for and notify you when Priority 1 EAs for images are
absent? (4.1)
Does the tool assist you to add Priority 1 EAs for images when they are
found to be absent? (4.2)
[Priority 3]
Does the tool check for and notify you when Priority 3 EAs for images are
absent? (4.1)
Does the tool assist you to add Priority 3 EAs for images when they are
found to be absent? (4.2)
Documentation:
[Priority 1]
Is there documentation for all the features of the tool concerned with
adding EAs for images? (6.1)
[Priority 2]
Does the documentation regarding the EAs for images appear well integrated
with the rest of the documentation (ex. do all images in the examples include
EAs)? (6.2)
[Priority 3]
Is there a dedicated section that documents all the features of the tool
concerned with addding EAs for images? (6.3)
User Interface Presence:
INSTRUCTIONS: Insert another image into a document. Then select the image and
edit its EAs.
[Priority 2]
Does functionality for adding and editing the EAs for images appear well
integrated with the overall look and feel of the tool (ex. included within
standard image insertion and properties dialogs)? (5.1)
Priority 3: Only required for level Triple-A conformance
Are meaningful Priority 3 EAs included when multimedia content is part of
markup generated by the tool (ex. wizard)? (1.3)
Are Priority 3 EAs included for multimedia content that appear as part of
templates included with the distribution of the tool (ex. a video album
template)? (1.4)
Does the tool prompt (require, suggest or notify the user of the absence
of information and then provide a means for rectifying the situation) for
the addition of Priority 3 EAs when an multimedia content is inserted?
(3.1)
Does any multimedia content (ex. media clipart, etc.) that are included
with the distibution of the tool include pre-written Priority 3 EAs? (3.3)
If the multimedia content-related output of the tool does not conform to
W3C specifications , does the tool notify the author? (2.3)
Does the tool include the ability to search and reuse or otherwise manage
the EAs of multimedia content? (3.5)
Does the tool check for and notify the author when Priority 3 EAs for
multimedia content is absent? (4.1)
Does the tool assist the author in adding Priority 3 EAs for multimedia
content when they are found to be absent? (4.2)
Forms
Insert a form and each of the following 7 types of control:
- A text input
- A textarea input
- A set of radio buttons
- A set of checkboxes
- A drop down menu (html
select
element)
- A graphic button
- A submit button
Priority 1 tests
Is the control validly coded? in a valid way? (2.2)
Do template examples of forms work without scripts or applets? (1.4 and 3.3
WCAG 6.3)
For each control:
- Can you specify an explicit label? (1.1)
- Does the control work without scripts or applets (client-side) for
processing? (1.3, WCAG 6.3)
- Is there a check for this? (4.1)
- Is there help on how to fix it? (4.2)
- Is it documented how to add a label to a control?
- How to group controls? (6.1)
- Can you edit all the properties of the control? (7.3)
- Is the control validly coded? in a valid way? (2.2)
Priority 2 tests
If there are scripts, does the tool preserve them where it doesn't
recognise them? (4.3)
Perform each of the following three tests once for each control, and then
answer the next set of 4 questions about the features tested by each task.
- Does the form control work according to W3C specifications (2.1)
- Are you prompted to add labels to form controls? (3.2, WCAG 12.4)
- If there are scripts to handle the forms, do they have
device-independent triggers? (1.3 WCAG 6.4, 9.2, 9.3)
The following 4 tests should be made for each of the 3 features tested
above
- Are the features checked for? (4.1, WCAG as above)
- Is there help to fix them? (4.2, WCAG as above)
- Are they included in documentation (and examples)? (6.2)
- Are they present in prepackaged examples / templates? (1.4, 3.3 WCAG as
above)
Priority 3 test
If the code does not conform to W3C specifications, does the tool inform
you? (2.3)
Multimedia Tool
Note:
Equivalent Alternatives (EA) for Image Editors
The meaning of the term equivalent alternative (EA) is slightly
different for image editors than for markup editors. For markup
editors, image EAs refer to those markup structures that convey
alternative content about images in a document. These structures are
specific to the markup language produced. For image editors, some of
the EAs, those placed in the text tracks of images, are stored in set
structures, however other EAs may be stored separately as plain text,
RTF, or other format that may be retreived and used by markup editors
when the image is inserted into a document.
Therefore, in this section the term Equivalent Alternative (EA)
will refer more generally to short descriptive labels and long
descriptive text. Both have priority 1, since that is their maximum
priority once imported into HTML.
Short Descriptive Labels[Priority 1]:
- May be stored in image formats with text tracks (i.e. PNG, SVG,
WebCGM, JPEG, GIF)
- Suitable for: img:alt (HTML, SMIL), img:longdesc (HTML),
input:alt (HTML), g:title (SVG)
Long Descriptive Text [Priority 1]:
- May be stored ???
- Suitable for: img:longdesc (HTML, SMIL), g:desc (SVG)
|
Priority 1: Required for all levels of conformance (i.e. A, Double-A,
Triple-A)
Is it possible to add the Equivalent Alternatives (EAs) for multimedia
using the tool (includes typing them manually)? (1.1)
Does the tool preserve the values of the EAs during re-saving,
reformatting, etc.? (1.2)
Are meaningful Priority 1 EAs included when multimedia content is part of
markup generated by the tool (ex. wizard)? (1.3)
Are Priority 1 EAs included for multimedia content that appears as part of
templates included with the distribution of the tool (ex. a photo album
template)? (1.4)
Does the tool automatically generate valid markup with regard to multimedia
content (ex. is the required ALT attribute present for all HTML4 IMG
elements)? (2.2)
Does the tool prompt (require, suggest or notify the user of the absence
of information and then provide a means for rectifying the situation) for
the addition of Priority 1 EAs when an multimedia content is inserted?
(3.1)
Does any multimedia content (ex. clipart, etc.) that is included with the
distibution of the tool include pre-written Priority 1 EAs? (3.3)
Does the tool automatically generate EAs based on the file name, size or
other information that is not necessarily related to the content or function
of the multimedia content.? (3.4)
Does the tool resuse previously authored EAs without author confirmation
when the function is not known with certainty (ex. the tool automatically uses
the same ALT value for two copies of the same multimedia content that is
linked to different locations)? (3.4)
Does the tool check for and notify the author when Priority 1 EAs for
multimedia content is absent? (4.1)
Does the tool assist the author in adding Priority 1 EAs for multimedia
content when they are found to be absent? (4.2)
Does the tool allow the author to edit all properties (attributes, styles,
etc.) of multimedia content-related elements in an accessible fashion (i.e.
using the keyboard)? (7.3)
Priority 2: Required for level Double-A and Triple-A conformance
Are meaningful Priority 2 EAs included when multimedia content is part of
markup generated by the tool (ex. wizard)? (1.3)
Are Priority 2 EAs included for multimedia content that appear as part of
templates included with the distribution of the tool (ex. a photo album
template)? (1.4)
Does the tool prompt (require, suggest or notify the user of the absence
of information and then provide a means for rectifying the situation) for
the addition of Priority 2 EAs when multimedia content is inserted? (3.1)
Does any multimedia content (ex. clipart, etc.) that are included with the
distibution of the tool include pre-written Priority 2 EAs? (3.3)
Does the tool support the latest version of all the markup languages it can
be used to produce? (2.1)
Does the tool check for and notify the author when Priority 2 EAs for
multimedia content is absent? (4.1)
Does the tool assist the author in adding Priority 2 EAs for multimedia
content when they are found to be absent? (4.2)
Does the tool allow unrecognized markup to be preserved through the editing
and re-saving process (ex. will the LONGDESC attribute of IMG be preserved if
the tool does not support LONGDESC)? ( 4.3)
Does functionality for adding and editing the EAs for multimedia content
appear well integrated with the overall look and feel of the tool (ex.
included within standard multimedia content insertion and properties dialogs)?
(5.1)
Does the documentation regarding the EAs for multimedia content appear well
integrated with the rest of the documentation (used in examples throughout,
not confined to a separate section)? (6.2)
Creating a New Image:
INSTRUCTIONS: Use the tool to create a new image file. Answer questions Q27 to
Q31.
[Priority 1]
Is it possible to use the tool to author short or long descriptive EAs for
the image (stored either separately or in text tracks)? (1.1)
Did the tool automatically generate EAs based on the file name, size or
other information that is not necessarily related to the content or function
of the image?(note: different scoring for this - the tool must
not do this) (3.4)
[Priority 2]
If the tool is intended to produce raster images, does the tool support the
Portable Network Graphics (PNG) format? (2.1)
If the tool is intended to produce vector graphics, does the tool support
the Scalable Vector Graphics (SVG) format? (2.1)
[Priority 3]
Does the tool let you search for, reuse or otherwise manage the EAs of
images? (3.5)
Saving:
INSTRUCTIONS: Use the tool to make a change to the image. Then save the image.
Answer question Q32.
[Priority 1]
Does the tool prompt (require, suggest or notify you of the absence of
information and then provide a means for rectifying the situation) you to
add Priority 1 EAs at some point during the creation of the image (ex. after
the successful save)? (3.1)
Re-saving and Reformatting:
INSTRUCTIONS: Open the test image "re-saving_test". Save a copy of the image
file to "re-saving_test2". Open this file using the image EA viewer tool
provided. Answer question Q33.
[Priority 1]
Are EAs (in text tracks or separate files) preserved during re-saving?
(1.2)
INSTRUCTIONS: Open the test image "re-saving_test". Save a copy of the image
file to another format. Open this file using the image EA viewer tool
provided. Answer question Q34.
[Priority 1]
Are EAs (in text tracks or separate files) preserved during conversion to
another format, where possible (i.e. EAs in text tracks placed in text track
of new format or separate associated file if the new format does not include
text tracks)? (1.2)
INSTRUCTIONS: Open a new image or save an image in order to check which imgae
formats are available.
[Priority 3]
If the tool produces a raster image in a format besides PNG, does the tool
inform you? (2.3)
If the tool produces a vector graphic image in a format besides SVG, does
the tool inform you? (2.3)
Bundled Web Content:
INSTRUCTIONS: If the tool includes bundled images (ex. clipart), then insert
some into the document. Answer questions Q37.
[Priority 1]
Do the images include pre-written Priority 1 EAs? (3.3)
Checking for Accessibility:
INSTRUCTIONS: Open and save "image_noEA". Answer questions Q38 and Q39.
[Priority 1]
Does the tool check for and notify you when Priority 1 EAs for an image are
absent? (4.1)
Does the tool assist you to add Priority 1 EAs when they are found to be
absent? (4.2)
Documentation:
[Priority 1]
Is there documentation for all the features of the tool concerned with
addding EAs for images? (6.1)
[Priority 2]
Does the documentation regarding EAs appear well integrated with the rest
of the documentation (ex. do all the image editing process examples include
EAs)? (6.2)
[Priority 3]
Is there a dedicated section that documents all the features of the tool
concerned with addding EAs? (6.3)
User Interface Presence:
INSTRUCTIONS: If it is possible to edit the EAs of an image, do so now. Answer
question Q43
[Priority 2]
Does functionality for adding and editing the EAs appear well integrated
with the overall look and feel of the tool (ex. included within standard
properties dialogs)? (5.1)
Accessible Interface:
INSTRUCTIONS: This time, try and edit all the properties (not just the EAs) of
the image using only the keyboard. Answer question Q44.
[Priority 1]
Does the tool allow you to edit all properties in an accessible fashion?
(7.3)
Section C (Tool is an
Multimedia Editor)
Priority 1: Required for all levels of conformance (i.e. A, Double-A,
Triple-A)
If the tool supports multimedia content formats with text tracks (i.e. SVG,
QuickTime, Flash), is it possible to use the tool to add Equivalent
Alternatives (EAs) to the text tracks? (1.1)
Is it possible to use the tool to author Equivalent Alternatives (EAs) for
the multimedia content that can be stored in separate files (ex. short (ALT)
and long (LONGDESC) descriptive text files)? (1.1)
If the tool supports multimedia content formats with text tracks, are the
text track values preserved during re-saving, conversion to another format
that includes text tracks, etc.? (1.2)
If the tool supports separate descriptive files for multimedia content, are
those files preserved during re-saving or conversion to another format, etc.?
(1.2)
Does the tool prompt (require, suggest or notify the user of the absence
of information and then provide a means for rectifying the situation) for
the addition of separate or text track Priority 1 EAs at some point during the
creation of multimedia content (ex. after a successful save)? (3.1)
Does the multimedia content (ex. video clipart, etc.) included in the
tool's distibution packages include pre-written Priority 1 EAs stored in their
text tracks or as separate descriptive files? (3.3)
Does the tool automatically generate EAs based on the file name, size or
other information that is not necessarily related to the content or function
of the multimedia content? (3.4)
If the tool supports multimedia content formats with text tracks, does the
tool check for and notify the author when Priority 1 EAs are absent from this
track? (4.1)
Does the tool check for and notify the author when separate descriptive
files storing the Priority 1 EAs for multimedia content are absent? (4.1)
If the tool supports multimedia content formats with text tracks, does the
tool assist the author in adding Priority 1 EAs when they are found to be
absent? (4.2)
Does the tool assist the author in adding Priority 1 EAs to separate
descriptive files when they are found to be absent? (4.2)
Does the tool allow the author to edit all properties (colour, size,
transparency, etc.) of the multimedia content in an accessible fashion (i.e.
using the keyboard)? (7.3)
Priority 2: Required for level Double-A and Triple-A conformance
If the tool is intended to produce vector graphics, does the tool support
the Scalable Vector Graphics (SVG) format? (2.1)
Does the tool prompt (require, suggest or notify the user of the absence
of information and then provide a means for rectifying the situation) for
the addition of separate or text track Priority 2 EAs at some point during the
creation of multimedia content (ex. after a successful save)? (3.1)
Does the multimedia content (ex. media clipart, etc.) included in the
tool's distibution packages include pre-written Priority 2 EAs stored in their
text tracks or as separate descriptive files? (3.3)
If the tool supports multimedia content formats with text tracks, does the
tool check for and notify the author when Priority 2 EAs are absent from this
track? (4.1)
Does the tool check for and notify the author when separate descriptive
files storing the Priority 2 EAs for the multimedia content are absent?
(4.1)
If the tool supports multimedia content formats with text tracks, does the
tool assist the author in adding Priority 2 EAs when they are found to be
absent? (4.2)
Does the tool assist the author in adding Priority 2 EAs to separate
descriptive files when they are found to be absent? (4.2)
Does functionality for adding and editing the EAs stored in separate
descriptive files or text tracks appear well integrated with the overall look
and feel of the tool? (5.1)
Does the documentation regarding the adding and editing the EAs stored in
separate descriptive files or text track appear well integrated with the rest
of the documentation (used in examples throughout, not confined to a separate
section)? (6.2)
Priority 3: Only required for level Triple-A conformance
If the tool produces a vector graphic image in a format besides SVG, does
the tool inform the author? (2.3)
Does the tool prompt (require, suggest or notify the user of the absence
of information and then provide a means for rectifying the situation) for
the addition of separate or text track Priority 3 EAs at some point during the
creation of multimedia content (ex. after a successful save)? (3.1)
Does the multimedia content (ex. video clipart, etc.) included in the
tool's distibution packages include pre-written Priority 3 EAs stored in their
text tracks or as separate descriptive files? (3.3)
Does the tool include the ability to search and reuse or otherwise manage
the EAs stored in separate descriptive files or text track? (3.5)
If the tool supports multimedia content formats with text tracks, does the
tool check for and notify the author when Priority 3 EAs are absent from this
track? (4.1)
Does the tool check for and notify the author when separate descriptive
files storing the Priority 3 EAs for multimedia content are absent? (4.1)
If the tool supports multimedia content formats with text tracks, does the
tool assist the author in adding Priority 3 EAs when they are found to be
absent? (4.2)
Does the tool assist the author in adding Priority 3 EAs to separate
descriptive files when they are found to be absent? (4.2)
Appendices:
Appendix A: Techniques for User Prompting
Instances of the term "prompting"
The term "prompting" appears in the following locations in the authoring
tool guidelines.
- Guideline
3: Support the creation of accessible content.
"... authoring tool developers should attempt to facilitate and automate
the mechanics of [producing equivalent information]. For example,
prompting authors to include equivalent alternative
information such as text equivalents, captions, and auditory descriptions
..."
- Checkpoint
3.1: Prompt the author to provide equivalent
alternative information (e.g., captions, auditory descriptions, and
collated text transcripts for video). [Relative Priority]
- Checkpoint
3.4: Do not automatically generate equivalent alternatives.
Do not reuse previously authored alternatives without author confirmation,
except when the function is known with certainty. [Priority 1]
"For example, prompt the author for a text equivalent of
an image..."
- Checkpoint
4.1: (Check for and inform the author of accessibility
problems. [Relative Priority]
"Note: Accessibility problems should be detected automatically where
possible. Where this is not possible, the tool may need to
prompt the author to make decisions or to manually check
for certain types of problems."
Unfotuantely, a potential ambiguity in the meaning of the term has been
identified. This section will attempt to clarify the issue. Also, remember
that although the following guidelines and checkpoints make explicit use of
the term, other guidelines may be best implemented using some form of
prompting as well.
The term "prompting" is used in the document to denote all user interface
methods by which the author is given an opportunity to add accessible content.
Developers are often concerned that prompting requires them change their
products in ways that their users will not accept. To address these concerns
the following statements should make clear, what prompting is not:
- Prompting does not need to be modal: In other words,
the author should not necessarily be prevented from performing other tasks
when accessibility problems exist.
- There is no requirement that prompting be implemented
with a one prompt per accessibility issue system. In other words, the
author may be presented with a number of issues within one prompt, only
one or several of which may relate to accessibility.
- There is no requirement that prompting be inflexible. A
user-flexible schedule should be an important component of the system. The
degree of flexibility should be determined by the nature of the tool.
- There is no requirement that prompting change the
fundamental look and feel of a tool. In fact, as a general rule, the
implementation of prompting should be governed by checkpoint 5.1 (Ensure
that functionality related to accessible authoring practices is naturally
integrated into the overall look and feel of the tool. [Priority 2])
Authoring tool support for the creation of accessible Web content should
account for different authoring styles. When authors are able to configure the
tool's accessibility features to support their regular work patterns, they
will be more likely to accept accessible authoring practices (ATAG
Checkpoint 5.1). For example, some authors may prefer to be alerted to
accessibility problems when they occur, whereas others may prefer to perform a
check at the end of an editing session. This is analogous to programming
environments that allow users to decide whether to check for correct code
during editing or at compilation.
A user configurable schedule allows individual authors to determine how and
when they will be prompted about accessibility issues. For example, authors
should have control over the stringency of the checks (i.e. WCAG conformance
level) and the scheduling of prompting (i.e. as problems occur, following
saves, or prior to Web publishing). Of course, the extent of this
configurability should be appropriate to each tool, as determined by the
developer. Some tool developers may decide to restrict authors to several
global settings, while others might allow authors to make fine grained
distinctions, such as different scheduling for different types of problems.
For example, in Microsoft Word 2000, spelling errors can be flagged and
corrected in several ways depending on the preferences that the author has set
on the "Spelling & Grammar" property card (Figure A-1).
All authoring tools will have ways of conveying information to users and
collecting information in return. These methods vary according to the design
of the tool and the user interface conventions for the platform upon which it
is implemented. For the sake of this document we have attempted to divide the
methods roughly between prompts and alerts. The following is relatively
generic overview of how these methods can be used for accessibility prompting.
Keep in mind that these categories may overlap. For example, an intrusive
alert may contain a prompt edit field.
Prompts are interface mechanisms that request information from the user, or
at least provide an opportunity for user to provide information if they wish.
On most GUI platforms, prompts commonly take the form of dialog box controls.
The author answers the requests by modifying the states of the controls (i.e.
typing text in a textbox or selecting a checkbox).
A prompt can be viewed as either intrusive or unintrusive depending on
whether the user has requested that it be displayed or not. For example, when
the author activates the "Save As..." menu item, an unintrusive dialog is
typically displayed to prompt the user for a file name and location. On the
other hand, if the user presses activates the "Save" command and the program
detects a problem (ex. saving to a media that has been removed), an intrusive
dialog is usually displayed prompting the user to replace the media or select
a new saving location.
The main drawback of using unintrusive prompts for ensuring accessible
authoring is that once the author has dismissed the prompt, its message is
unavailable unless the user requests it again. This may be avoided by the use
of intrusive prompts, however, displaying too many of these can quickly annoy
the author and one of the goals of this document is to suggest techniques for
implementing ATAG that preserve author cooperation.
Therefore, when implementing the ATAG, unintrusive prompts are recommended
to encourage authors to provide information required for accessibility when
the user inserts or inspects an element. For example, in the case of HTML, a
prominently displayed alt-text entry field in an image insertion dialog, would
constitute a prompt (Figure A-3).
In ATAG, the interface priority of controls related to accessibility is
governed by ATAG checkpoint
5.2 (Ensure that accessible authoring practices supporting Web Content
Accessibility Guidelines 1.0 [WCAG10] Priority 1 checkpoints are among the
most obvious and easily initiated by the author. [Priority 2]). This
checkpoint does not require that accessibility concerns
obscure the other editing tasks. The checkpoint merely emphasizes that these
controls should be allotted screen presence that is appropriate for their
importance. For example, in Macromedia's Dreamweaver 2 HTML authoring tool, a
property toolbar is displayed with fields that are appropriate to the
currently selected element. In some cases, including the image element, the
author can toggle the toolbar between a limited and extended set of
properties. Due to the importance of the alt
attribute, it is
recommended that the edit field for this property be available in the limited
set. In the case of Dreamweaver, this is precisely what has been done (Figure
A-2).
Conformance with checkpoint
5.2 may be reinforced by visually highlighting accessibility features with
colour, icons, underlining, etc. For example, in Allaire's HomeSite authoring
tool, attention is drawn more explicitly to accessibility-related prompt
fields. In this case, the HomeSite tag editor dialog contains symbols, colour
changes and explanatory text that highlight the alt-text field and remind the
author that it is required for HTML 4.0 and necessary for accessibility.
Sometimes several editing tasks are required to make a single element
accessible. Instead of dispersing these prompts over multiple dialog boxes, it
may be more effective to draw them together into one group of controls. In the
following example from Allaire HomeSite, the prompt fields pertaining to
multiple accessibility requirements of the HTML input form control (i.e.
Access Key, Tab Index, Title and Label Text) are organized into the same
dialog box.
In cases where there are many pieces of information required, authors may
benefit from a sequential presentation of prompts. This technique usually
takes the form of a wizard or a checker. In the case of a wizard, complex
interactions are broken down into a series of simple steps. The later steps
can then be updated on the fly to take into account information provided by
the user in earlier steps. A checker is a special case of a wizard in which
the number of detected errors determines the number of steps. For example,
Microsoft Word 2000 has a checker that displays all the spelling and grammar
problems one at a time (Figure A-5). Notice how all the problems are displayed
in a standard way: type of problem (i.e. "not in dictionary"), the problem
instance (i.e. "There are a few spellling mistakes") and suggested fixes (i.e.
a list of suggested correct words). The user also has several correcting
options, some of which can store responses to affect how the same situation is
handled later.
In an accessibility checker, the same is true, however the dialog template
has to be somewhat more flexible since the problems can range from a missing
text string for a multimedia object to missing structural information for a
table to improper use of colour. In the following example, from A-Prompt, the
author is prompted to add alternate text for an image as part of a correction
run. Notice that, like the spell checker, the prompt includes a statement of
the problem (i.e. "missing alternate text for an image"), the problem instance
(i.e. earthrise.gif), and suggested fixes (i.e. a suggestion from the alt-text
registry, "An earth-rise as seen from the surface of the moon"). In addition,
the dialog also has some instructive text to aid the author in writing text if
necessary.
Alerts warn the author that there are problems that need to be addressed.
Since addressing these problems usually requires adding information, it may be
argued that the distinction between an alert (warning) and a prompt
(information request) is confusing. For the purpose of this document, an alert
is essentially a warning without an immediate means (i.e. a text box) for
adding the missing information (although a well-designed warning should link
intuitively to a prompt wherever possible), whereas a prompt is an opportunity
to add missing information that may or may not include a warning. Still
confused? Fortunately, in general, it doesn't really matter as long as the
tool succeeds in convincing authors to add the required information at some
point before Web publishing occurs.
Note: The method by which a tool attracts the author's
attention is a tricky issue because it can influence the author's view of the
tool and even their opinion of accessible authoring as a whole. That's why the
ATAG includes checkpoint
5.1 (Integrate accessibility solutions into the overall "look and feel"
[Priority 2]).
Intrusive alerts are informative messages that interrupt the editing
process for the author. For example, intrusive alerts are often presented when
an author's action could cause a loss of data. Intrusive alerts allow problems
to be brought to the author's attention immediately. However, authors may
resent the constant delays and forced actions. Many people prefer to finish
expressing an idea before returning to edit its format.
If the tool developer chooses to use intrusive alerts for some or all of
the alerts, the simplest implementation might to present the author with a
single option that channels them to a prompt where they may or may not be
forced to enter the missing information. This is not a recommended strategy.
Instead, the alert should include two or more options that linking to a prompt
for correcting the problem, an option to return directly to editing and
perhaps even a link to relevant help (Figure A-7). In addition, the author may
be presented with an option to prevent similar intrusive warnings in the
future.
Although intrusive alerts are the least user-friendly form of prompting,
there are some situations in which they may become necessary. For example,
when the editing process is complete and publishing to the Web appears
imminent, unintrusive alerts are not an option since there is simply no
editing process left. This may always be the case when a document composed in
a proprietary (non-Web format) is being converted to a Web format for
publishing. This does not mean that unintrusive alerts are not also possible
in these situations. For example, an alert might be added directly to the
"Save" dialog (Figure A-8).
Unintrusive alerts are interface methods such as icons, underlines, and
gentle sounds that can be presented to the author without requiring immediate
action. For example, in some authoring tools misspelled text is highlighted
within the document, identifying the location of problems without forcing the
author to make corrections immediately. As an example, Microsoft Word 2000
includes the option to underline spelling errors (Figure A-9) in red and
grammatical errors in green (for author accessibility the user must be able to
change the default presentation - users who are red-green colorblind, for
example, will not be able to perceive the information being conveyed by red
and green underlines). When the user right-clicks on the highlighted text,
they are presented with several correction options.
Another Microsoft product, FrontPage 2000, uses unintrusive alerts in its
HTML editing environment to indicate syntax errors. As the author types, the
syntax is automatically checked (Figure A-10). The system is unintrusive
because the author is allowed to make as many syntax errors as they like, but
the colour of the text signals that one or more errors have been made.
In the context of the Authoring Tool guidelines, these unintrusive alert
techniques could be used to indicate which parts of a document or site contain
accessibility problems. This will inform the author about the type and number
of errors without interrupting their editing process. Of course, these are
just two examples of the techniques that developers might choose. Other
implementations might include in-line icons as the BOBBY evaluation tool does
or even accessibility problem density displays for power users.
The downside of unintrusive alerts is that the author may choose to ignore
the alerts completely. Therefore, the optimum strategy might be to emphasize
unintrusive solutions until a critical point (i.e. publishing) at which time
an effective intrusive alert, such as a problem summary, can be displayed.