W3C

Authoring Tool Accessibility Guidelines 1.0 (working draft)

W3C Working Draft 2-June-1999

This version:
http://www.w3.org/WAI/AU/WAI-AUTOOLS-19990602
Latest version:
http://www.w3.org/WAI/AU/WAI-AUTOOLS
Previous version:
http://www.w3.org/WAI/AU/WAI-AUTOOLS-19990527
Editors:
Jutta Treviranus <jutta.treviranus@utoronto.ca>
Jan Richards <jan.richards@utoronto.ca>
Ian Jacobs <ij@w3.org>
Charles McCathieNevile <charles@w3.org>

Abstract

This document provides guidelines for Web authoring tool developers. Its purpose is two-fold: to assist developers in designing authoring tools that generate accessible Web content and to assist developers in creating an accessible authoring interface.

Accessible Web content is achieved by encouraging authoring tool users ("authors") to create accessible Web content through mechanisms such as prompts, alerts, checking and repair functions, help files and automated tools. It is equally important that all people can be the authors of Web content, rather than merely recipients. It is therefore of critical importance that the tools used to create this content are themselves accessible. Adoption of these guidelines will result in the proliferation of Web pages that can be read by a broader range of readers and in authoring tools that can be used by a broader range of authors.

This document is part of a series of accessibility documents published by the W3C Web Accessibility Initiative.

Status of this document

This is a Working Draft of the Authoring Tool Accessibility Guidelines. It is a draft document and may be updated, replaced or rendered obsolete by other documents at any time. It is inappropriate to use W3C Working Drafts as reference material or to cite them as other than "work in progress". This is work in progress and does not imply endorsement by either W3C or members of the WAI Authoring Tool (AU) Working Group.

This draft follows the Working Group's telephone meeting on 2 June 1999.

The Techniques given in the linked "Techniques" document are intended to be informative only. They will not be present in the "normative" version, although there will still be a link to the Techniques document. This will enable them to be updated more easily than the Guidelines themselves.

The goals of the WAI AU Working Group are discussed in the WAI AU charter.

Please send comments about this document to the public mailing list: w3c-wai-au@w3.org, archived at http://lists.w3.org/Archives/Public/w3c-wai-au

A list of the current AU Working Group members is available.

Table of Contents


1 Introduction

The various authoring tools used to generate Web content play a critical role in determining the form and accessibility of the Web. Authoring tools are used to automate the mechanical tasks that are part of producing Web pages. The power of this automation can enhance the accessibility of the Web if it is used to ensure that the code produced promotes accessibility, and frees the author to concentrate on the higher level problems of overall design, content, description, etc. It is imperative that authoring tools generate content that is accessible, and that they are accessible themselves, to allow people to be consumers and producers of Web content on an equal footing, regardless of disability.

The accessibility of authoring tools encompasses some general principles of software accessibility, and some features which are specific requirements for authoring. The accessibility of the content produced depends on the ability of the tool to be used in producing accessible markup, and on the user interface of the tool enabling, informing, and encouraging the use of accessible markup authoring practices. These Guidelines refer extensively to the Web Content Accessibility Guidelines, which details accessibility requirements for markup itself, and include checkpoints which are basic requirements for the accessibility of the tool and its output. In addition, there are guidelines and checkpoints which are uniquely relevant to the role authoring tools play in guiding the author to produce accessible content.

1.1 Scope of these Guidelines

These guidelines are intended to be used by developers of all tools used to produce content for the Web. These include:

1.2 Guidelines, Checkpoints, and Techniques

The guidelines documents have been organized to address readers seeking abstract principles of accessible authoring tool design and readers seeking concrete solutions. The guidelines documents define three terms for different levels of abstraction:

Guideline
A guideline is a general principle of accessible authoring tool design. A guideline addresses the question "What accessibility issues should I be aware of?"
Checkpoint
A checkpoint is a specific way of satisfying one or more guidelines. While checkpoints describe verifiable actions that may be carried out by the authoring tool developer, implementation details are described elsewhere. A checkpoint answers the question "What must/should/may I do to make an authoring tool (and the content it produces) accessible?"
Technique
A technique is an implementation of one or more checkpoints in a given language (e.g., HTML, XML, CSS, ...). A technique answers the question "How do I implement that in an authoring tool?"

1.3 Checkpoint priorities

[Editors' note: These definitions are to be further refined]

There are two goals:

[Priority 1]
Essential to meeting those goals
[Priority 2]
Important to meeting those goals
[Priority 3]
Beneficial to meeting those goals

1.4 Conformance to these Guidelines

This section defines three levels of conformance to this document:

Note. Conformance levels are spelled out in text so they may be understood when rendered to speech.

Claims of conformance to this document must use one of the following two forms.

Form 1: Specify:

Example of Form 1: "MyAuthoringTool version 2.3 conforms to W3C's "Authoring Tool Accessibility Guidelines 1.0 (working draft)", available at http://www.w3.org/WAI/AU/WAI-AUTOOLS-19990602, level Double-A."

Form 2: Include, on each statement of conformance, one of three icons provided by W3C and link the icon to the appropriate W3C explanation of the claim.

[Editors' note: In the event this document becomes a Recommendation, by that date WAI will provide a set of three icons, for "A", "Double-A", or "Triple-A" conformance levels of "Authoring Tool Accessibility Guidelines 1.0 (working draft)", together with a stable URI to the W3C Web site for linking the icons to the W3C explanation of conformance claims.]

2 Guidelines

2.1 Ensure that the Authoring Tool is Accessible to Authors with Disabilities

[Editors' Note: this guideline was three guidelines entitled Follow principles of accessible design, ensure independence of authoring and publishing environments, provide accessible navigation]

The authoring tool is a software program with standard user interface elements and as such should follow relevant user interface accessibility guidelines.

The author may need a different presentation to edit the Web content than the one they wish ultimately to be displayed. This implies display preferences that do not manifest themselves in the ultimate markup or style declarations.

Authoring Web content requires editing a potentially large and complex document. In order to edit a document the author must be able to locate and select specific blocks of text, efficiently traverse the document and quickly find and mark insertion points. Authors who use screen readers, refreshable braille displays, or screen magnifiers can make limited use (if at all) of visual artifacts that communicate the structure of the document and act as sign posts when traversing the document. There are strategies that make it easier to navigate and manipulate a marked up document . A compressed view of the document allows the author to both get a good sense of the overall structure and to navigate that structure more easily.

Checkpoints:

2.1.1: [Priority 1]
Use all applicable operating system and accessibility standards and conventions.
Techniques:
2.1.2: [Priority 1]
Ensure the rendering used while authoring is independent of styles used for the published document (e.g., the font size, letter and line spacing, and text and background color, etc.).
Techniques:
2.1.3: [Priority 1]
Allow the author to display a textual equivalent of content while editing.
Techniques:
2.1.4: [Priority 1]
For each element of a document, the properties of that element must be accessible to the author.
Techniques:
2.1.5: [Priority 1]
Enable navigation and editing via the structure of the document.
Techniques:
2.1.6: [Priority 1]
Ensure that user agent functionality offered by the tool (e.g., in a preview mode) conforms to the W3C's User Agent Accessibility Guidelines. [WAI-USERAGENT]
2.1.7: [Priority 2]
Enable editing of the structure of the document.

2.2 Generate standard markup

The first step towards producing accessible content is conformance with standards, which promotes interoperability.

Checkpoints:

2.2.1: [Priority 2]
Use applicable W3C Recommendations.
Techniques:
2.2.2: [Priority 1]
Extensions to W3C Recommendations must not make content inaccessible.
Techniques:

2.3 Support accessible authoring practices

Methods for ensuring accessible markup vary with different markup languages. If markup is automatically generated, many authors will be unaware of the accessibility status of the final product unless they expend extra effort to make appropriate corrections by hand. Since many authors are unfamiliar with accessibility, these problems are likely to remain.

Many applications feature the ability to convert documents from other formats (e.g., Rich Text Format) into a markup format, such as HTML. Markup changes may also be made to facilitate efficient editing and manipulation. These processes are usually hidden from the user's view and may create inaccessible content or cause inaccessible content to be produced.

Checkpoints:

2.3.1: [Priority 1]
Implement all accessible authoring practices that have been defined for the markup language(s) supported by the tool.
Techniques:
2.3.2: [Priority 1]
Produce content that is conformant to the W3C's Web Content Accessibility Guidelines [WAI-WEBCONTENT]. [Priority 1 for level-A conformance, Priority 2 for double-A conformance, Priority 3 for triple-A conformance]
2.3.3: [Priority 1]
Ensure that templates to be inserted in the document are conformant to W3C Web Content Accessibility Guidelines [WAI-WEBCONTENT]. [Priority 1 for level-A conformance, Priority 2 for double-A conformance, Priority 3 for triple-A conformance]
Techniques:
2.3.4: [Priority 1]
Preserve all accessibility content during transformations and conversions.

2.4 Ensure that no accessibility content is missing

Textual equivalents, including "alt-text", long descriptions, video captions, and transcripts are absolutely necessary for the accessibility of all images, applets, video, and audio files. However, the task of producing these equivalents is probably the most time-consuming accessibility recommendation made to the author.

The authoring tool can provide various mechanisms to assist the author in generating textual equivalents while ensuring that the author can determine whether the textual equivalent accurately reflects the information conveyed by the multimedia object.

Including professionally written descriptions for all multimedia files (e.g., clip-art) packaged with the tool will:

This will lead to an increase in the average quality of descriptions used.

Checkpoints:

2.4.1: [Priority 1]
Prompt the author to provide alternative content (e.g., captions, descriptive video). (Priority 1 for alternative content which is [Web-Content-Priority-1], Priority 2 for alternative content which is [Web-Content-Priority-2], Priority 3 for alternative content which is [Web-Content-Priority-3])
Techniques:
2.4.2: [Priority 1]
Prompt the author for all missing structural information (e.g., language changes, table headers). (Priority 1 for structural information which is [Web-Content-Priority-1], Priority 2 for structural information which is [Web-Content-Priority-2], Priority 3 for structural information which is [Web-Content-Priority-3])
Techniques:
2.4.3: [Priority 1]
Allow the author to edit all alternative content and structural information.
2.4.4: [Priority 2]
Provide pre-written alternative content for all multimedia files packaged with the authoring tool.
Techniques:
2.4.5: [Priority 3]
Provide a mechanism to manage alternative content for multimedia objects, which retains and offers for editing pre-written or previously linked alternative content.
Techniques:
2.4.6: [Priority 1]
Do not insert automatically generated (e.g., the filename) or place-holder (e.g., "image") equivalent text, except in cases where human-authored text has been written for an object whose function is known with certainty.

Techniques for this guideline

2.5 Integrate accessibility solutions into the overall "look and feel"

When a new feature is added to an existing software tool without proper integration, the result is often an obvious discontinuity. Differing color schemes, fonts, interaction styles and even application stability can be factors affecting user acceptance of the new feature.

Checkpoints:

2.5.1: [Priority 2]
Ensure that the highest-priority accessible authoring practices are the most visible and easily initiated by the author. Highlight the most accessible solutions when presenting choices for the author.
Techniques:
2.5.2: [Priority 1]
Make generation of accessible content a naturally integrated part of the authoring process
Techniques:

2.6 Provide methods of checking and correcting inaccessible content

Many authoring tools allow authors to create documents with little or no knowledge about the underlying markup. To ensure accessibility, authoring tools must be designed so that they may automatically identify inaccessible content, and enable its correction even when the markup itself is hidden from the author.

In supporting the creation of accessible Web content, authoring tools must take into account the differing authoring styles of their users. Some users may prefer to be alerted to problems when they occur, whereas others may prefer to perform a check after the document is completed. This is analogous to programming environments that allow users to decide whether to check for correct code during editing or at compile time.

Note that validity is an accessibility requirement, particularly for assistive technologies.

Checkpoints:

2.6.1: [Priority 1]
Check for and alert the author to accessibility problems. (Priority 1 for accessibility problems which are [Web-Content-Priority-1], Priority 2 for accessibility problems which are [Web-Content-Priority-2], Priority 3 for accessibility problems which are [Web-Content-Priority-3])
2.6.2: [Priority 2]
Allow users to control both the nature and timing of accessibility alerts.
Techniques:
2.6.3: [Priority 1]
Assist authors in correcting accessibility problems. (Priority 1 for accessibility problems which are [Web-Content-Priority-1], Priority 2 for accessibility problems which are [Web-Content-Priority-2], Priority 3 for accessibility problems which are [Web-Content-Priority-3])
Techniques:
2.6.4: [Priority 2]
When removing unrecognized markup, alert the author (according to a configurable schedule)
Techniques:
2.6.5: [Priority 3]
Provide the author with a summary of the accessibility status on a configurable schedule.
2.6.6: [Priority 3]
Allow the author to perform tag transformations. For example, to transform visually formatted elements to structure elements, or tables to lists.
Techniques:

Techniques for this guideline:

2.7 Promote accessibility in help and documentation

The issues surrounding Web accessibility are often unknown to Web authors. Help and documentation should explain accessibility problems and solutions, with examples.

Checkpoints:

2.7.1: [Priority 1]
Integrate accessible authoring practices in all applicable help topics.
Techniques:
2.7.2: [Priority 1]
Explain the use of accessible authoring practices supported by the authoring tool.
Techniques:
2.7.3: [Priority 1]
Examples must not use inaccessible markup.
2.7.4: [Priority 3]
Emphasize the universal benefit of accessible design.
Techniques:

3 Terms and Definitions

[Editors' note: This section will be reviewed by the group, and is expected to be updated in future drafts]

Integrated Author Guidance and Prompting

Interface mechanisms such as dialogs, menus, toolbars, and palettes can be structured so that markup or elements that are accessible are given as the first and easiest choice.

Prompts and Alerts

Prompts can be used to encourage authors to provide information needed to make the content accessible (such as alternative textual representations). Prompts are simple requests for information before a markup structure has been finalized. For example, an "alt-text" entry field prominently displayed in an image insertion dialog would constitute a prompt. Prompts are relatively unintrusive and address a problem before it has been committed. However, once the user has ignored the prompt, its message is unavailable.

Alerts warn the author that there are problems that need to be addressed. The art of attracting users' attention is a tricky issue. The way in which users are alerted, prompted, or warned will influence their view of the tool as well as their opinion of accessible authoring.

User Configurable Schedule
A user configurable schedule allows the user to determine the type of prompts and alerts which are used, including when they are presented. For example, a user may wish to include multiple images without being prompted for alternative content, and then provide the alternative content in a batch process, or may wish to be reminded each time they add an image. If the prompting is done on a user configurable schedule they will be able to make that decision themselves. This technique allows a tool to suit the needs a wide range of authors.
Interruptive Alerts
Interruptive alerts are informative messages that interrupt the edit process for the user. For example, interruptive alerts are often presented when a user's action could cause a loss of data. Interruptive alerts allow problems to be brought to the user's attention immediately. However, users may resent the constant delays and forced actions. Many people prefer to finish expressing an idea before returning to edit its format.
Unintrusive Alerts
Unintrusive alerts are alerts such as icons, underlines, and gentle sounds that can be presented to the user without necessitating immediate action. for example, in some word processors misspelled text is highlighted without forcing the user to make immediate corrections. These alerts allow users to continue editing with the knowledge that problems will be easy to identify at a later time. However, users may become annoyed at the extra formatting or may choose to ignore the alerts altogether.
Prompts
Prompts are simple requests for information before a markup structure has been finalized.
Alert Tools
Alert tools allow a batch detection process to address all problems at a given time.

Markup Editing Tools and Functions

Authoring Tool
An Authoring Tool is any application that is specifically designed to aid users in editing markup and presentation language documents. The editing processes covered by this definition may range from direct hand coding (with automated syntax support or other markup specific features) to WYSIWYG editors that do not present the actual underlying markup to the author for editing. This definition does not include text editors and word processors that also allow HTML to be hand produced.
Conversion Tool
A Conversion Tool is any application or application feature that allows content in some other format (proprietary or not) to be converted automatically into a particular markup language. This includes software whose primary function is to convert documents to a particular markup language as well as "save as HTML" (or other markup language) features in non-markup applications.
Generation Tool
A Generation Tool is a program or script that produces automatic markup "on the fly" by following a template or set of rules. The generation may be performed on either the server or client side.
Site Management Tool
A tool that provides an overview of an entire Web site indicating hierarchical structure. It will facilitate management through functions that may include automatic index creation, automatic link updating, and broken link checking.
Publishing Tool
A tool that allows content to be uploaded in an integrated fashion. Sometimes these tools makes changes such as local hyper-reference modifications. Although these tools sometimes stand alone, they may also be integrated into site management tools.
Image Editor
A graphics program that provides a variety of options for altering images of different formats.
Video Editor
A tool that facilitates the process of manipulating video images. Video editing includes cutting segments (trimming), re-sequencing clips, and adding transitions and other special effects.
Multi-media Authoring Tool
Software that facilitates integration of diverse media elements into an comprehensive presentation format. May incorporate video, audio, images, animations, simulations, and other interactive components.
Automated Markup Insertion Function
Automated markup insertion functions are the features of an authoring tool that allow the user to produce markup without directly typing it. This includes a wide range of tools from simple markup insertion aids (such as a bold button on a toolbar) to markup managers (such as table makers that include powerful tools such as "split cells" that can make multiple changes) to high level site building wizards that produce almost complete documents on the basis of a series of user preferences.

Documents, Elements, and Attributes

Document
A document is a series of elements that are defined by a language (e.g., HTML 4.0 or an XML application).
Element
An element is any identifiable object within a document, for example a character, word, image, paragraph or spreadsheet cell. In HTML and XML an element refers to a pair of tags and their content, or an "empty" tag - one which has no closing tag or content.
Property
A property is a piece of information about an element, for example structural information (e.g., it is item number 7 in a list, or plain text) or presentation information (e.g., that it is marked as bold, its font size is 14). In XML and HTML properties of an element include the name of the element (e.g., IMG or DL), the values of its attributes, and information associated by means of a stylesheet. In a database, properties of a particular element may include values of the entry, and acceptable data types for that element.
Attributes
in XML and HTML, an element may have any number of attributes. In the following example, the attributes of the beverage element are flavour, which has the value "lots", and colour, which has the value "red": <beverage flavour="lots" colour="red">my favorite</beverage> Some attributes are integral to document accessibility (e.g., the "alt", "title", and "longdesc" attributes in HTML
Rendered Content
The rendered content is that which an element actually causes to be rendered by the user agent. This may differ from the element's structural content. For example, some elements cause external data to be rendered (e.g., the IMG element in HTML), and in some cases, browsers may render the value of an attribute (e.g., "alt", "title") in place of the element's content.

Accessibility Terms

Accessibility Awareness
The term accessibility awareness is used to describe an application that has been designed to maximize the ease of use of the interface and its products for people with differing needs, abilities and technologies. In the case of authoring tools, this means that (1) care has been taken to ensure that the content produced by user-authors is accessible and (2) that the user interface has been designed to be usable with a variety of display and control technologies.
Inaccessible Markup, Inaccessible Element, Inaccessible Attribute, Inaccessible Authoring Practice and Access Barrier
All these terms are used in the context of inaccessibility as defined by the Web Content Accessibility Guidelines [WAI-WEBCONTENT].
Accessibility Solution, Accessible Authoring Practice
These terms refer to markup checkpoints than can be used to eliminate or reduce accessibility problems as they are defined above.

Alternative Representation of Content

Alternative Textual Representations
Certain types of content may not be accessible to all users (e.g., images), so authoring tools must ensure that alternative textual representations ("Alt-text") of information is available to the user. Alternative text can come from element content (e.g., the OBJECT element) or attributes (e.g., "alt" or "title").
Description Link (D-link)
A description link, or D-Link, is an author-supplied link to additional information about a piece of content that might otherwise be difficult to access (image, applet, video, etc.).
Transcripts
A transcript is a line by line record of all dialog and action within a video or audio clip.
Video Captions
A video caption is a textual message that is stored in the text track of a video file. The video caption describes the action and dialog for the scene in which it is displayed.

Inserting and Editing

Inserting an element
Inserting an element involves placing that element's markup within the markup of the file. This applies to all insertions, including, but not limited to, direct coding in a text editing mode, choosing an automated insertion from a pull-down menu or tool bar button, "drag-and-drop" style insertions, or "paste" operations.
Editing an element
Editing an element involves making changes to one or more of an element's attributes or properties. This applies to all editing, including, but not limited to, direct coding in a text editing mode, making changes to a property dialog or direct User Interface manipulation.

Selection, Focus, and Events

Views
An authoring tool may offer several views of the same document. For instance, one view may show raw markup, a second may show a structured tree view, a third may show markup with rendered objects while a final view shows an example of how the document may appear if it were to be rendered by a particular browser.
Selection
A selection is a set of elements identified for a particular operation. The user selection identifies a set of elements for certain types of user interaction (e.g., cut, copy, and paste operations). The user selection may be established by the user (e.g., by a pointing device or the keyboard) or via an accessibility Application Programmatic Interface (API). A view may have several selections, but only one user selection.
Current User Selection
When several views co-exist, each may have a user selection, but only one is active, called the current user selection. The selections may be rendered specially (e.g., visually highlighted).
Focus
The focus designates the active element (e.g., link, form control, element with associated scripts, etc.) in a view that will react when the user next interacts with the document.

4 Acknowledgments

Many thanks to the following people who have contributed through review and comment: Jim Allan, Denis Anson, Kynn Bartlett, Harvey Bingham, Judy Brewer, Carl Brown, Dick Brown, Kelly Ford, Wendy Chisholm, Rob Cumming, Daniel Dardailler, Mark Day, BK Delong, Jamie Fox, Sylvain Galineau, Al Gilman, Eric Hansen, Phill Jenkins, Len Kasday, Brian Kelly, William Loughborough, Karen McCall, Charles Oppermann, Dave Pawson, Dave Poehlman, Bruce Roberts, Chris Ridpath, Gregory Rosmaita, Jim Thatcher, Irène Vatton, Gregg Vanderheiden, Pawan Vora, Jason White, and Lauren Wood.

If you have contributed to the AU guidelines and your name does not appear please contact the editors to add your name to the list.

5 References

[CSS1]
"CSS, level 1 Recommendation", B. Bos, H. Wium Lie, eds. The CSS1 Recommendation is available at:
http://www.w3.org/TR/REC-CSS1
[CSS2]
"CSS, level 2 Recommendation", B. Bos, H. Wium Lie, C. Lilley, and I. Jacobs, eds. The CSS2 Recommendation is available at:
http://www.w3.org/TR/REC-CSS2/
[HTML40]
"HTML 4.0 Recommendation", D. Raggett, A. Le Hors, and I. Jacobs, eds. The HTML 4.0 Recommendation is available at:
http://www.w3.org/TR/REC-html40/
[W3C-RECS]
"W3C Technical Reports and Publications" The latest versions of W3C Recomendations are available at:
http://www.w3.org/TR
[WAI-AUTOOLS-TECH]
"Authoring Tool Accessibility Techniques (Working Draft)", J. Treviranus, J. Richards, I. Jacobs, and C. McCathieNevile eds. The latest working draft of these techniques is available at:

http://www.w3.org/WAI/AU/WAI-AUTOOLS/wai-autools-tech

[WAI-USERAGENT]
"User Agent Accessibility Guidelines", J. Gunderson and I. Jacobs, eds. These guidelines for designing accessible user agents are available at:
http://www.w3.org/TR/WAI-USERAGENT
[WAI-WEBCONTENT]
"Web Content Accessibility Guidelines 1.0", W. Chisholm, G. Vanderheiden, and I. Jacobs, eds. These guidelines for designing accessible documents are available at:
http://www.w3.org/TR/WAI-WEBCONTENT
[WAI-WEBCONTENT-TECHS]
"Techniques for Web Content Accessibility Guidelines", W. Chisholm, G. Vanderheiden, and I. Jacobs, eds. These techniques for designing accessible documents are available at:
http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/
[Web-Content-Priority]
Priorities defined by [WAI-WEBCONTENT].