Techniques for User Agent Accessibility Guidelines
Total Page:16
File Type:pdf, Size:1020Kb
Techniques for User Agent Accessibility Guidelines W3C WD-WAI-USERAGENT-TECH-19980309 Techniques for User Agent Accessibility Guidelines W3C Working Draft 9-Mar-1999 This version: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent-tech Latest version: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT/wai-useragent-tech Latest public version: http://www.w3.org/TR/WD-WAI-USERAGENT/wai-useragent-tech Previous version: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990210/wai-useragent-tech Latest "User Agent Accessibility Guidelines": http://www.w3.org/WAI/UA/WD-WAI-USERAGENT Latest public version of "User Agent Accessibility Guidelines": http://www.w3.org/TR/WD-WAI-USERAGENT Editors: Jon Gunderson <[email protected]> Ian Jacobs <[email protected]> Copyright W3C (MIT, INRIA, Keio), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply. Abstract This document describes techniques that user agent developers may use to satisfy the checkpoints listed in "User Agent Accessibility Guidelines." Techniques relate to the accessibility of user interfaces, content rendering, program interfaces, and accessibility features of languages such as HTML, CSS and SMIL. Like "User Agent Accessibility Guidelines", the current document emphasizes the accessibility of interoperability between two important classes of user agents - graphical desktop browsers and dependent assistive technologies (including screen readers, screen magnifiers, and voice input software). However, it is meant to be applicable to user agents in general, including text and voice browsers, and multimedia players. While "User Agent Accessibility Guidelines" has been designed to be a stable document of principles, the current document will continue to evolve as technologies change and user agent manufacturers discover more effective techniques for designing accessible user agents. This document is part of a series of accessibility documents published by the W3C Web Accessibility Initiative. 1 Techniques for User Agent Accessibility Guidelines Status of this document This is a W3C Working Draft for review by W3C Members and other interested parties. It is a draft document and may be updated, replaced or obsoleted 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, or the consensus of, either W3C or Members of the WAI User Agent (UA) Working Group. Although the organization of this document has begun to stabilize, the Working Group has not yet filled in the details of all the techniques. This draft does not distinguish those techniques that mainstream user agents are expected to implement natively from those that may be satisfied by providing information through an interface. This document has been produced as part of the W3C WAI Activity and intends to improve user agent accessibility for all users. The goals of the WAI-UA Working Group are discussed in the WAI UA charter. A list of the current Working Group members is available. Available formats This document is available in the following formats: HTML: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent-tech.html A plain text file: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent-tech.txt, HTML as a gzip'ed tar file: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent.tgz, HTML as a zip file (this is a '.zip' file not an '.exe'): http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent.zip, A PostScript file: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent-tech.ps, A PDF file: http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent-tech.pdf. In case of a discrepancy between the various formats of the specification, http://www.w3.org/WAI/UA/WD-WAI-USERAGENT-19990309/wai-useragent-tech.html is considered the definitive version. Comments Please send comments about this document to the public mailing list: [email protected]. 2 Techniques for User Agent Accessibility Guidelines Table of Contents 1 Guidelines, Checkpoints, and Techniques . .4 2 The User Agent and the Operating System . .4 3 The User Agent and the Document . .5 3.1 Identification . .5 3.2 Rendering alternative representations of content . .6 3.3 Styles and formatting . .7 4 Functionality offered by the User Agent to allow the User to work with the Document . .9 4.1 Access to all functionality . .9 4.2 Selection and focus . .9 4.3 Navigation . 10. 4.4 Searching . 11. 4.5 Querying . 12. 4.6 Activation . 13. 5 The User Agent and the User . 13. 5.1 Accessible user interface . 13. 5.2 Visibility of accessibility features . 14. 5.3 Configuration . 14. 5.4 Notification of events and changes . 17. 6 The User Agent and Assistive Technologies . 17. 7 Support for accessibility features of certain languages . 18. 7.1 HTML . 18. 7.2 CSS . 18. 7.3 SMIL . 19. 7.4 MathML . 19. 8 Appendix: Accessibility features of some operating systems . 19. 8.1 Microsoft Windows 95, Windows 98, and Window NT 4.0 . 20. 8.2 Apple Macintosh Operating System . 21. 8.3 AccessX, X Keyboard Extension (XKB), and the X Window System 21. 8.4 DOS (Disk Operating System) . 22. 9 Acknowledgments . 22. 10 References . 22. 3 Techniques for User Agent Accessibility Guidelines 1 Guidelines, Checkpoints, and Techniques The guidelines documents have been organized to address readers seeking abstract principles of accessible user agent 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 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 user agent developer, implementation details are described elsewhere. A checkpoint answers the question "What should I do to improve accessibility?" Technique A technique is an implementation of one or more checkpoints in a given language (e.g., HTML, XML, CSS, DOM, ...). A technique answers the question "How do I do that in HTML or SMIL or CSS...?" The current document contains techniques, according to different interfaces between the user agent and the operating system, the document, the user, and other software. Note that each technique in this document is numbered according to its number in the guidelines document. 2 The User Agent and the Operating System [Checkpoint 7.2.4] Follow operating system conventions and accessibility settings in user interface design, configuration (including configuration profiles), product installation, and documentation. [Priority 2] The operating system application programming interfaces (APIs) that support accessibility are designed to provide a bridge between the standard user interface supported by the operating system and alternative user interfaces developed by third-party assistive technology vendors to provide access to persons with disabilities. Applications supporting these APIs are therefore generally more compatible with third-party assistive technology. The WAI Working Group strongly recommends using and supporting APIs that improve accessibility and compatibility with 3rd party assistive technology. Third-party assistive technology can use the accessibility information provided by the APIs to provide an alternative user interface for various disabilities. The following is an informative list of currently public APIs that support accessibility: Microsoft Active Accessibility in Windows 95/NT versions. Information on active accessibility can be found at the Microsoft WWW site on Active Accessibility. Sun Microsystems Java Accessibility API in Java Code. Information on Java Accessibility API can be found at Java Accessibility Utilities. Many major operating systems have built-in accessibility features for improving the usability of the standard operating system by persons with disabilities. When designing software that runs above an underlying operating system, developers should ensure that the application: 4 Techniques for User Agent Accessibility Guidelines 1. Makes use of operating system level features. See the appendix of accessibility features [p. 19] for some comment operating systems. 2. Inherits operating system settings related to accessibility. Pertinent settings include font and color information as well as other pieces of information discussed in this document. [Ed. We Should put a more exhaustive list here.] [Checkpoint 4.1.1] Ensure that the software may be installed in a device-independent manner using any supported input and output devices. [Priority 1] Ensure that software may be installed, when possible, according to the conventions of the operating system. 3 The User Agent and the Document 3.1 Identification In order for the user agent to satisfy many of the techniques in this document (related to rendering, notification, navigation, etc.), it must be able to identify certain types of information in addition to recognizing object types such as images, video, sound, and elements of the document language. Sources of alternative representations of information User agents must be able to recognize sources of alternative representations of content. In HTML For the IMG element: The "alt", "title", and "longdesc" attributes For the OBJECT element: The content of the element and the "title" attribute. For the APPLET element: The "alt" attribute and the content of the element. For the AREA element: The "alt" attribute. For the INPUT element: The "alt" attribute. For the ACRONYM and ABBR elements: The "title" attribute may be used for the acronym or abbreviation expansion. For the TABLE element, the "summary" attribute For frames, the NOFRAMES element and the "longdesc" attribute on FRAME and IFRAME. For scripts, the NOSCRIPT element. In SMIL The "alt", "title", "longdesc", and "abstract" attributes. To be completed.. Sources of blinking text and animation User agents that recognize the following sources of blinking text and animations must enable users to freeze that text.