This document is available in an expandable / collapsible alternate version in which the “Intent” sections copied from Understanding WCAG 2.0 are hidden and individually expandable, for easier reading.
Copyright © 2012-2013 W3C® (MIT, ERCIM, Keio, Beihang), All Rights Reserved. W3C liability, trademark and document use rules apply.
This document, “Guidance on Applying WCAG 2.0 to Non-Web Information and Communications Technologies (WCAG2ICT)” describes how the Web Content Accessibility Guidelines (WCAG) 2.0 [WCAG20] and its principles, guidelines, and success criteria can be applied to non-web Information and Communications Technologies (ICT), specifically to non-web documents and software. It provides informative guidance (guidance that is not normative and does not set requirements).
This document is intended to become a Working Group Note, and is part of a series of technical and educational documents published by the W3C Web Accessibility Initiative (WAI) and available from the WCAG 2.0 Overview.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
This document is a Working Group Notean Editors' Draft being developed by the WCAG2ICT Task Force (“Task Force”) operating under the terms of its Work Statement, and under the coordination and review of the Web Content Accessibility Guidelines Working Group (WCAG WG), which is part of the Web Accessibility Initiative (WAI) of the World Wide Web Consortium (W3C). The WCAG2ICT Task Force's work is consistent with the WCAG WG Charter that includes the following under its scope: “Coordinating with other entities adopting and using WCAG 2.0”.
This Working Group Note includes complete guidance for all Levels A and AA Success Criteria, guidance on all glossary terms plus new Key Terms, comments on conformance, and additional background information on some topics. This version includes changes made in response to comments received on the three earlier Working Drafts of this document. It also contains references to an alternate presentation in which the “Intent” sections copied from Understanding WCAG 2.0 are hidden and individually expandable, for easier reading.
As a Working Group Note this content is stable, and the Working Group does not plan to make further changes. Should the need arise, however, the document could be updated. Comments received on this document will help the Working Group to decide if updates are needed, or will be taken into account should a republication be planned. Please send any comments on the “Additional Guidance” sections of this document to the public mailing list public-wcag2ict-comments@w3.org. Please include the following in your comments: the title of the document, location within the document, the concern, the suggested change, and any additional rationale for your comment.
This document includes many excerpts from “Understanding WCAG 2.0,” each of which is prefaced with the words “Intent from…” and which are also visually indicated with a yellow background. Understanding WCAG 2.0 and other WCAG 2.0 supporting documents will continue to focus on web technologies. For comments on Understanding WCAG, please follow the comment instructions in that document.
Please note that WCAG 2.0 itself is a stable web standard. Comments on this document will not affect WCAG 2.0 wording.
Publication as a Working Group Notean Editors' Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. The group does not expect this document to become a W3C Recommendation. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
Placeholder for TOC
This document provides informative guidance (guidance that is not normative, and that does not set requirements) with regard to the interpretation and application of Web Content Accessibility Guidelines (WCAG) 2.0 [WCAG20] to non-web information and communications technologies (ICT). This document is a Working Group Note (in contrast to WCAG 2.0, which is a W3C Recommendation and also an International Organization for Standardization (ISO) / International Electrotechnical Commission (IEC) standard). Specifically, this document provides informative guidance on applying WCAG 2.0 Level A and AA success criteria to non-web ICT, specifically to non-web documents and software.
This document is intended to help clarify how to use WCAG 2.0 to make non-web documents and software more accessible to people with disabilities. Addressing accessibility involves addressing the needs of people with auditory, cognitive, neurological, physical, speech, and visual disabilities, and the needs of people with accessibility requirements due to the effects of aging. Although this document covers a wide range of issues, it is not able to address all the needs of all people with disabilities. Because WCAG 2.0 was developed for the Web, addressing accessibility for non-web documents and software may involve provisions beyond those included in this document. Authors and developers are encouraged to seek relevant advice about current best practices to ensure that non-web documents and software are accessible, as far as possible, to people with disabilities.
While WCAG 2.0 was designed to be technology-neutral, it assumes the presence of a “user agent” such as a browser, media player, or assistive technology as a means to access web content. Therefore, the application of WCAG 2.0 to documents and software in non-web contexts required some interpretation in order to determine how the intent of each WCAG 2.0 success criterion could be met in these different contexts of use. The bulk of the Task Force's work therefore involved evaluating how each WCAG 2.0 success criterion would apply in the context of non-web ICT, if it were applied to non-web ICT.
The Task Force found that the majority of success criteria from WCAG 2.0 can apply to non-web documents and software with no or only minimal changes. Specifically, of the thirty-eight Level A and AA success criteria, twenty-six did not include any web related terms and apply directly as written and as described in the “Intent” sections from the updated Understanding WCAG 2.0 [UNDERSTANDING-WCAG20]. Thirteen of these twenty-six applied without any additional notes. The other thirteen applied as written but additional notes were also provided for assistance in applying them to either or both non-web documents and software.
Of the remaining twelve success criteria, the Task Force found that eight of them apply as written when replacing certain Web-specific terms or phrases like “web page(s)” with non-web terms or phrases like “non-web document(s) and software” or “for non-web documents and software that use markup languages, in such a way that…” etc. Additional notes were also provided to assist in the application of these.
The remaining four success criteria apply in situations when “a set of web pages”, or “multiple web pages” share some characteristic or behavior. In WCAG 2.0 the “unit of conformance” is the web page. While WCAG2ICT is not a standard, and thus conformance does not apply, it is still useful to look at what a “unit of evaluation” would be for non-web ICT. For non-web documents, WCAG2ICT uses a single document as the “unit of evaluation”, as it is the best analog to a web page. This became the basis for the notion of a “set of documents”, which is used for the remaining four success criteria which in WCAG speak to “sets of web pages”. For non-web software it wasn't possible to unambiguously carve up software into discrete pieces, and so the “unit of evaluation” for non-web software is the software program. This became the basis for the notion of a “set of software programs”, which is used for the remaining four success criteria.
The 83 glossary terms were also reviewed. 51 applied to non-Web documents and software as written. Another 28 applied with additional notes or edits (largely related to phrases like “Web page(s)”), and the remaining 4 terms were only used in Level AAA success criteria which are not addressed by this Note.
The following are out of scope for this document:
This document includes excerpted text from WCAG 2.0 principles, guidelines, and success criteria, as quoted from WCAG 2.0 without any changes. It also includes excerpted text from the “Intent” sections of the WCAG 2.0 supporting document Understanding WCAG 2.0 (Public Review Draft) [UNDERSTANDING-WCAG20], as clarified based on input from Task Force discussions and responses to public comments after review and approval by the WCAG Working Group. The guidance provided by this document for each success criteria is preceded by a title beginning “Additional Guidance…”. This guidance was created by the WCAG2ICT Task Force, then reviewed and approved by the WCAG Working Group.
Additional supporting documents for WCAG 2.0, such as the WCAG 2.0 Overview, Techniques for WCAG 2.0 [WCAG20-TECHS], and How to Meet WCAG 2.0: A customizable quick reference, remain available for web content, but have not been changed to apply to non-web documents and software.
The following stylistic conventions are used in this document:
Of the 83 glossary terms used in WCAG 2.0 there are two key glossary terms that need to be interpreted significantly differently when applied to non-web ICT. These are: “content” and “user agent”. Further, the glossary term “Web page” in WCAG 2.0 is replaced with newly defined terms “document” and “software”, and both “set of web pages” and “multiple web pages” are replaced with the newly defined terms “set of documents” and “set of software programs”. Finally, as part of addressing the fact that non-Web software doesn't leverage the WCAG 2.0 notion of a user agent, we introduce the new term “accessibility services of platform software”. The remaining 79 glossary terms from WCAG 2.0 are addressed in Chapter 7 Comments on Definitions in WCAG 2.0 Glossary in Appendix A. Terms defined and used in WCAG2ICT are applicable only to the interpretation of the guidance in this document. The particular definitions should not be interpreted as having applicability to situations beyond the scope of WCAG2ICT. Further information on usage of these terms follows.
The term accessibility services of platform software, as used in WCAG2ICT, has the meaning below:
services provided by an operating system, user agent, or other platform software that enable non-web documents or software to expose information about the user interface and events to assistive technologies and accessibility features of software
Note: These services are commonly provided in the form of accessibility APIs (application programming interfaces), and they provide two-way communication with assistive technologies, including exposing information about objects and events.
WCAG 2.0 defines CONTENT as:
- content (web content)
information and sensory experience to be communicated to the user by means of a user agent, including code or markup that defines the content's structure, presentation, and interactions
For non-web content it is necessary to view this a bit more broadly. Within WCAG2ICT, the term “content” is used as follows:
information and sensory experience to be communicated to the user by means of software, including code or markup that defines the content's structure, presentation, and interactions
Note: non-web content occurs in two places; documents and software. When content occurs in a document, a user agent is needed in order to communicate the content's information and sensory experience to the user. When content occurs in software, a separate user agent isn't required—the software itself performs that function.
Within WCAG2ICT wherever “content” or “web content” appears in a success criterion or Intent it should be replaced with “content” using the definition above.
The term document, as used in WCAG2ICT, has the meaning below:
assembly of content, such as a file, set of files, or streamed media that functions as a single item rather than a collection, that is not part of software and that does not include its own user agent
Note 1: A document always requires a user agent to present its content to the user.
Note 2: Letters, spreadsheets, emails, books, pictures, presentations, and movies are examples of documents.
Note 3: Software configuration and storage files such as databases and virus definitions, as well as computer instruction files such as source code, batch/script files, and firmware, are examples of files that function as part of software and thus are not examples of documents. If and where software retrieves “information and sensory experience to be communicated to the user” from such files, it is just another part of the content that occurs in software and is covered by WCAG2ICT like any other parts of the software. Where such files contain one or more embedded documents, the embedded documents remain documents under this definition.
Note 4: A collection of files zipped together into an archive, stored within a single virtual hard drive file, or stored in a single encrypted file system file, do not constitute a single document when so collected together. The software that archives/encrypts those files or manages the contents of the virtual hard drive does not function as a user agent for the individually collected files in that collection because that software is not providing a non-fully functioning presentation of that content.
Note 5: Anything that can present its own content without involving a user agent, such as a self playing book, is not a document but is software.
Note 6: A single document may be composed of multiple files such as the video content, closed caption text, etc. This fact is not usually apparent to the end-user consuming the document / content. This is similar to how a single web page can be composed of content from multiple URIs (e.g. the page text, images, the JavaScript, a CSS file etc.).
Example: An assembly of files that represented the video, audio, captions and timing files for a movie would be a document.
Counterexample: A binder file used to bind together the various exhibits for a legal case would not be a document.
The term set of documents, as used in WCAG2ICT has the meaning below:
group of documents that are published together, and where the items all refer to each other by name or link
Note 1: Republishing or bundling previously published documents as a collection does not constitute a set of documents.
Note 2: If a set is broken apart, the individual parts are no longer part of a set, and would be evaluated as any other individual document is evaluated.
One example of a set of documents would be a three-part report where each part is a separate file. At the beginning of each file the table of contents for “navigating” to the other parts is repeated.
The term set of software programs, as used in WCAG2ICT has the meaning below:
group of software programs that are distributed together and that can be launched and used independently from each other, but that are interlinked each with every other one such that users can navigate from one program to another via a consistent method that appears in each member of the set
Note 1: This definition of “set of software programs” is derived from the characteristics of a “set” of web pages, and is used for mapping WCAG success criteria to software. Although such sets occur frequently for web pages, such sets appear to be extremely rare for software.
Note 2: Redistributing or bundling previously distributed software as a collection does not constitute a set of software programs.
Note 3: Consistent does not mean identical. For example, if a list of choices is provided it might not include the name of the current program.
Note 4: If a member of the set is separated from the set, it is no longer part of a set, and would be evaluated as any other individual software program.
Note 5: Any software program that is not part of a set, per this definition, would automatically satisfy any success criterion that is specified to apply to “sets of” software (as is true for any success criterion that is scoped to only apply to some other type of content).
Note 6: If there is any ambiguity whether the group is a set, then the group is not a set
Note 7: If there is no independent method to launch the software programs (as is common in closed products), those programs would not meet the definition of a set of programs.
Note 8: Although the term “software” is used throughout this document because this would apply to stand alone software programs as well as individual software components and the software components in software-hardware combinations, the concept of “set of software programs” would only apply (by definition) to programs that can be launched separately from each other. Therefore, for the provisions that use the phrase “set of” (success criteria 2.4.1, 2.4.5, 3.2.3, and 3.2.4), the phrase “set of software programs” is used.
Example: One example of a set of software programs would be a group of programs that can be launched and used separately but are distributed together and all have a menu that allows users to launch, or switch to, each of the other programs in the group.
Counterexamples: Examples of things that are not sets of software programs:
The term software as used in WCAG2ICT, has the meaning below:
software products or software aspects of hardware-software products that have a user interface and do not require a separate user agent to present any of its content
Note 1. For software, the user interface and any other embedded content is covered by these guidelines. The software provides a function equivalent to a user agent for the embedded content.
Note 2. Software without a user interface does not have content and is not covered by these guidelines. For example, driver software with no user interface would not be covered.
Note 3. Because software with a user interface provides a function equivalent to a user agent in addition to content, the application of some WCAG 2.0 success criteria would be different for content embedded in software versus content in a document, where it is viewed through a separate user agent (e.g. browser, player, viewer, etc.).
WCAG 2.0 defines user agent as follows:
- user agent
any software that retrieves and presents Web content for users
Example: Web browsers, media players, plug-ins, and other programs—including assistive technologies—that help in retrieving, rendering, and interacting with Web content.
For non-web ICT, “user agent” needs to be viewed differently. In WCAG 2.0, the term “user agent” only refers to retrieval and display of web content. For non-web ICT, the term “user agent” refers to retrieval and display of separate content that is not on the Web, which WCAG2ICT refers to as a “document”. Within WCAG2ICT, the term “user agent” is used as follows:
any software that retrieves and presents documents for users
Note 1. Software that only displays the content contained within it is not considered to be a user agent. It is just considered to be software.
Note 2. An example of software that is not a user agent is a calculator application that doesn't retrieve the calculations from outside the software to present it to a user. In this case, the calculator software is not a user agent, it is simply software with a user interface.
Note 3: Software that only shows a preview of content such as a thumbnail or other non-fully functioning presentation is not providing user agent functionality.
As noted in the Introduction, WCAG 2.0 assumes the presence of a “user agent” such as a browser, media player, or assistive technology as a means to access web content. Furthermore, many of the success criteria in WCAG 2.0 assume web content will be accessed by ICT that has assistive technologies connected to it, where the assistive technologies present the web content to the people with disabilities in accessible form. ICT products with “closed functionality” do not allow the use of some assistive technologies for all of their functions. In many cases such ICT products also lack a “user agent” or their equivalent. As a result, ICT following these success criteria by themselves will not make information accessible on ICT with closed functionality. Something else needs to be provided or be required in order to make the information addressed in these success criteria accessible. It is outside the task force work statement to say what the additional measures are, but this Note points out which success criteria depend on assistive technologies—and therefore would not work by themselves in products with closed functionality.
Because closed functionality, by definition, does not allow a user to attach assistive technology, WCAG success criteria that assume the presence of assistive technology will not facilitate accessibility as WCAG 2.0 intends. Where assistive technologies cannot be used, other output and input solutions are needed to achieve the intent of these success criteria.
Examples of products with closed functionality include:
See Appendix A: Success Criteria Problematic for Closed Functionality for a list of success criteria for which this is relevant.
Text applications are a class of software ICT that appeared decades ago, prior to the emergence of the graphical user interface (GUI) and the Web. The interface of a text application is generated using only text characters, and either a hardware terminal or a software terminal application handles the rendering of the text application—similar to how a web user agent handles the rendering of a web application. Text applications only accept text input (though some terminal applications which render text applications in the GUI may utilize a mouse or other input devices). Command-line applications are a subset of text applications with further specific properties.
Historically, assistive technologies developed alongside text applications, and several of these use a variety of analysis and scripting techniques to make text applications accessible. Although there are far fewer new text applications being developed compared to new GUI or web applications, text applications remain in use today, and both text applications and the assistive technologies designed for text applications are in active development.
Though this class of applications predates the Web, WCAG can be applied to them. As noted in Appendix B. Background on Text / Command-line / Terminal Applications and Interfaces, applying WCAG to text / command-line applications involves understanding how text applications are rendered, how text applications have been made accessible via assistive technologies, and how to apply the concepts of “accessibility supported” and “programmatically determined” to text applications.
WCAG2ICT is not a standard, so it is not possible to conform to WCAG2ICT. However, some entities may wish to use the information in WCAG2ICT to help establish standards or regulations regarding accessibility in ICT that are based on WCAG 2.0. While such standards or regulations will need to address matters of conformance themselves, the following notes may be of assistance to those wishing to draft their own requirements:
Also, as noted in the Introduction, it wasn't possible to unambiguously carve up software into discrete pieces, and so the unit of evaluation for non-web software is the whole software program. As with any software testing this can be a very large unit of evaluation, and methods similar to standard software testing might be used.
The sections that follow are organized according to the principles, guidelines, and success criteria from WCAG 2.0. The text of each item from WCAG 2.0 is copied as quoted text. Following that, the WCAG2ICT guidance is provided. Finally, the “Intent” from Understanding WCAG 2.0 is copied as quoted text; the Task Force makes no substitutions or edits in this text. In visual presentations, the WCAG2ICT guidance is set out in a box with a blue bar to the left, to highlight that this is the content specific to this document.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.1.1 (also provided below).
Note 1: CAPTCHAs do not currently appear outside of the Web. However, if they do appear, this guidance is accurate.
Note 2: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.2.1 (also provided below).
Note 1: The alternative can be provided directly in the non-web document or software – or provided in an alternate version that meets the success criteria.
Note 2: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.2.3 (also provided below).
Note 1: The WCAG 2.0 definition of “audio description” says that “audio description” is “also called ‘video description’ and ‘descriptive narration’”.
Note 2: Secondary or alternate audio tracks are commonly used for this purpose.
Note 3: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.2.5 (also provided below).
Note1: The WCAG 2.0 definition of “audio description” says that audio description is “also called ‘video description’ and ‘descriptive narration’”.
Note2: Secondary or alternate audio tracks are commonly used for this purpose.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.3.1 (also provided below).
Note 1: In software, programmatic determinability is best achieved through the use of accessibility services provided by platform software to enable interoperability between software and assistive technologies and accessibility features of software.
Note 2: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.3.2 (also provided below).
Note: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.3.3 (also provided below).
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.4.1 (also provided below).
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.4.2 (also provided below), replacing “on a Web page” with “in a non-web document or software”, “any content” with “any part of a non-web document or software”, “whole page” with “whole document or software”, “on the Web page” with “in the document or software”, and removing “See Conformance Requirement 5: Non-Interference”.
With these substitutions, it would read:
1.4.2 Audio Control: If any audio in a non-web document or software plays automatically for more than 3 seconds, either a mechanism is available to pause or stop the audio, or a mechanism is available to control audio volume independently from the overall system volume level. (Level A)
Note: Since any part of a non-web document or software that does not meet this success criterion can interfere with a user's ability to use the whole document or software, all content in the document or software (whether or not it is used to meet other success criteria) must meet this success criterion.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.4.3 (also provided below).
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.4.4 (also provided below).
Note 1: Content for which there are software players, viewers or editors with a 200 percent zoom feature would automatically meet this success criterion when used with such players, unless the content will not work with zoom.
Note 2: The Intent section refers to the ability to allow users to enlarge the text on screen at least up to 200% without needing to use assistive technologies. This means that the application provides some means for enlarging the text 200% (zoom or otherwise) without loss of content or functionality or that the application works with the platform features that meet this requirement.
Note 3: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 1.4.5 (also provided below).
Note: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 2.1.1 (also provided below).
Note 1: This does not imply that software must directly support a keyboard or “keyboard interface”. Nor does it imply that software must provide a soft keyboard. Underlying platform software may provide device independent input services to applications that enable operation via a keyboard. Software that supports operation via such platform device independent services would be operable by a keyboard and would comply.
Note 2: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 2.1.2 (also provided below), replacing “page” and “Web page” with “non-web document or software” and removing “See Conformance Requirement 5: Non-Interference”.
With these substitutions, it would read:
2.1.2 No Keyboard Trap: If keyboard focus can be moved to a component of the non-web document or software using a keyboard interface, then focus can be moved away from that component using only a keyboard interface, and, if it requires more than unmodified arrow or tab keys or other standard exit methods, the user is advised of the method for moving focus away. (Level A)
Note: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole non-web document or software, all content on the non-web document or software (whether it is used to meet other success criteria or not) must meet this success criterion.
Note: Standard exit methods may vary by platform. For example, on many desktop platforms, the Escape key is a standard method for exiting.
This applies directly as written, and as described in Intent from Understanding Success Criterion 2.2.1 (also provided below), replacing “the content” with “non-web documents or software”.
With this substitution, it would read:
2.2.1 Timing Adjustable: For each time limit that is set by non-web documents or software, at least one of the following is true: (Level A)
Turn off: The user is allowed to turn off the time limit before encountering it; or
Adjust: The user is allowed to adjust the time limit before encountering it over a wide range that is at least ten times the length of the default setting; or
Extend: The user is warned before time expires and given at least 20 seconds to extend the time limit with a simple action (for example, “press the space bar”), and the user is allowed to extend the time limit at least ten times; or
Real-time Exception: The time limit is a required part of a real-time event (for example, an auction), and no alternative to the time limit is possible; or
Essential Exception: The time limit is essential and extending it would invalidate the activity; or
20 Hour Exception: The time limit is longer than 20 hours.
Note: This success criterion helps ensure that users can complete tasks without unexpected changes in content or context that are a result of a time limit. This success criterion should be considered in conjunction with Success Criterion 3.2.1, which puts limits on changes of content or context as a result of user action.
This applies directly as written, and as described in Intent from Understanding Success Criterion 2.2.2 (also provided below), replacing “page” and “Web page” with “non-web documents and software” and removing “See Conformance Requirement 5: Non-Interference” in Note 2 of the success criterion.
With this substitution, it would read:
2.2.2 Pause, Stop, Hide: For moving, blinking, scrolling, or auto-updating information, all of the following are true: (Level A)
Moving, blinking, scrolling: For any moving, blinking or scrolling information that (1) starts automatically, (2) lasts more than five seconds, and (3) is presented in parallel with other content, there is a mechanism for the user to pause, stop, or hide it unless the movement, blinking, or scrolling is part of an activity where it is essential; and
Auto-updating: For any auto-updating information that (1) starts automatically and (2) is presented in parallel with other content, there is a mechanism for the user to pause, stop, or hide it or to control the frequency of the update unless the auto-updating is part of an activity where it is essential.
Note 1: For requirements related to flickering or flashing content, refer to Guideline 2.3.
Note 2: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole non-web documents and software, all content on the non-web documents and software (whether it is used to meet other success criteria or not) must meet this success criterion.
Note 3: Content that is updated periodically by software or that is streamed to the user agent is not required to preserve or present information that is generated or received between the initiation of the pause and resuming presentation, as this may not be technically possible, and in many situations could be misleading to do so.
Note 4: An animation that occurs as part of a preload phase or similar situation can be considered essential if interaction cannot occur during that phase for all users and if not indicating progress could confuse users or cause them to think that content was frozen or broken.
Note: While the success criteria uses the term “information”, the WCAG 2.0 Intent section makes it clear that this is to be applied to all content. Any content, whether informative or decorative, that is updated automatically, blinks, or moves may create an accessibility barrier.
This applies directly as written, and as described in Intent from Understanding Success Criterion 2.3.1 (also provided below), replacing “Web pages” with “non-web documents or software” , “the whole page” with “the whole non-web document or software”, “the Web page” with “the non-web document or software”, and removing “See Conformance Requirement 5: Non-Interference”.
With these substitutions, it would read:
2.3.1 Three Flashes or Below Threshold: Non-web documents or software do not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds. (Level A)
Note: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole non-web document or software, all content on the non-web document or software (whether it is used to meet other success criteria or not) must meet this success criterion.
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.1.1 (also provided below) replacing “each web page” with non-web documents or software.
With these substitutions, it would read:
3.1.1 Language of Page: The default human language of non-web documents or software can be programmatically determined. (Level A)
Note 1: Where software platforms provide a “locale / language” setting, applications that use that setting and render their interface in that “locale / language” would comply with this success criterion. Applications that do not use the platform “locale / language” setting but instead use an accessibility-supported method for exposing the human language of the software would also comply with this success criterion. Applications implemented in technologies where assistive technologies cannot determine the human language and that do not support the platform “locale / language” setting may not be able to meet this success criterion in that locale / language.
Note 2: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.1.2 (also provided below) replacing “content” with “non-web document or software”.
With these substitutions, it would read:
3.1.2 Language of Parts: The human language of each passage or phrase in the non-web document or software can be programmatically determined except for proper names, technical terms, words of indeterminate language, and words or phrases that have become part of the vernacular of the immediately surrounding text. (Level AA)
Note 1: There are some software and non-web document technologies where there is no assistive technology supported method for marking the language for the different passages or phrases in the non-web document or software, and it would not be possible to meet this success criterion with those technologies.
Note 2: See also the discussion on Closed Functionality in the Introduction.
In WCAG 2.0, the Guidelines are provided for framing and understanding the success criteria under them but are not required for conformance to WCAG. Guideline 3.2 applies directly as written, replacing “web pages” with “non-web documents or software”.
With this substitution, this guideline would read:
Guideline 3.2 Predictable: Make non-web documents or software appear and operate in predictable ways.
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.2.1 (also provided below).
Note: Some compound documents and their user agents are designed to provide significantly different viewing and editing functionality depending upon what portion of the compound document is being interacted with (e.g. a presentation that contains an embedded spreadsheet, where the menus and toolbars of the user agent change depending upon whether the user is interacting with the presentation content, or the embedded spreadsheet content). If the user uses a mechanism other than putting focus on that portion of the compound document with which they mean to interact (e.g. by a menu choice or special keyboard gesture), any resulting change of context wouldn't be subject to this success criterion because it was not caused by a change of focus.
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.2.2 (also provided below).
This applies directly as written and described in Intent from Understanding Success Criterion 3.2.3 (also provided below), replacing “web pages” with “non-web documents” and “software programs”.
With these substitutions, this success criterion would read:
(for non-web documents)
3.2.3 Consistent Navigation: Navigational mechanisms that are repeated on multiple non-web documents within a set of non-web documents occur in the same relative order each time they are repeated, unless a change is initiated by the user.
(for software programs)
3.2.3 Consistent Navigation: Navigational mechanisms that are repeated on multiple software programs within a set of software programs occur in the same relative order each time they are repeated, unless a change is initiated by the user.
Note 1: See set of documents and set of software programs in the Key Terms section of the Introduction to determine when a group of documents or software programs is considered a set for this success criterion. (Sets of software that meet this definition appear to be extremely rare.)
Note 2: Although not required by this success criterion, ensuring that navigation elements have consistent order when repeated within non-web documents or software programs directly addresses user needs identified in the Intent section for this Success Criterion, and is generally considered best practice.
This applies directly as written and described in Intent from Understanding Success Criterion 3.2.4 (also provided below), replacing “web pages” with “non-web documents” and “software programs”.
With these substitutions, this success criterion would read:
(for non-web documents)
3.2.4 Consistent Identification: Components that have the same functionality within a set of non-web documents are identified consistently.
(for programs)
3.2.4 Consistent Identification: Components that have the same functionality within a set of software programs are identified consistently.
Note 1: See set of documents and set of software programs in the Key Terms section of the Introduction to determine when a group of documents or software programs is considered a set for this success criterion. (Sets of software that meet this definition appear to be extremely rare.)
Note 2: Although not required by this success criterion, ensuring that component identification be consistent when they occur more than once within non-web documents or software programs directly addresses user needs identified in the Intent section for this Success Criterion, and is generally considered best practice.
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.3.1 (also provided below).
Note: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.3.2 (also provided below).
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.3.3 (also provided below).
This applies directly as written, and as described in Intent from Understanding Success Criterion 3.3.4 (also provided below) replacing “web pages” with “non-web documents or software”.
With this substitution, it would read:
3.3.4 Error Prevention (Legal, Financial, Data): For non-web documents or software that cause legal commitments or financial transactions for the user to occur, that modify or delete user-controllable data in data storage systems, or that submit user test responses, at least one of the following is true: (Level AA)
Reversible: Submissions are reversible.
Checked: Data entered by the user is checked for input errors and the user is provided an opportunity to correct them.
Confirmed: A mechanism is available for reviewing, confirming, and correcting information before finalizing the submission.
In WCAG 2.0, the Principles are provided for framing and understanding the success criteria under them but are not required for conformance to WCAG. Principle 4 applies directly as written replacing “user agents, including assistive technologies” with “assistive technologies and accessibility features of software”.
With this substitution, it would read:
Principle 4: Robust - Content must be robust enough that it can be interpreted reliably by a wide variety of assistive technologies and accessibility features of software.
In WCAG 2.0, the Guidelines are provided for framing and understanding the success criteria under them but are not required for conformance to WCAG. Guideline 4.1 applies directly as written, replacing “user agents, including assistive technologies” with “assistive technologies and accessibility features of software”.
With this substitution, it would read:
Guideline 4.1 Compatible: Maximize compatibility with current and future assistive technologies and accessibility features of software.
This applies directly as written, and as described in Intent from Understanding Success Criterion 4.1.1 (also provided below), replacing “In content implemented using markup languages” with “For non-web documents or software that use markup languages, in such a way that the markup is separately exposed and available to assistive technologies and accessibility features of software or to a user-selectable user agent”.
With these substitutions, it would read:
4.1.1 Parsing: For non-web documents or software that use markup languages, in such a way that the markup is separately exposed and available to assistive technologies and accessibility features of software or to a user-selectable user agent, elements have complete start and end tags, elements are nested according to their specifications, elements do not contain duplicate attributes, and any IDs are unique, except where the specifications allow these features. (Level A)
Note: Start and end tags that are missing a critical character in their formation, such as a closing angle bracket or a mismatched attribute value quotation mark are not complete.
Note: Markup is not always available to assistive technologies or to user selectable user agents such as browsers. Software sometimes uses markup languages internally for persistence of the software user interface, in ways where the markup is never available to assistive technology (either directly or through a document object model (DOM)), or to a user agent (such as a browser). In such cases, conformance to this provision would have no impact on accessibility as it can have for web content where it is exposed.
Examples of markup that is separately exposed and available to assistive technologies and to user agents include: documents encoded in HTML, ODF, and OOXML. In these examples, the markup can be parsed entirely in two ways: (a) by assistive technologies which may directly open the document, (b) by assistive technologies using DOM APIs of user agents for these document formats.
Examples of markup used internally for persistence of the software user interface that are never exposed to assistive technology include but are not limited to: XUL, GladeXML, and FXML. In these examples assistive technology only interacts with the user interface of generated software.
Note: See also the discussion on Closed Functionality in the Introduction.
This applies directly as written, and as described in Intent from Understanding Success Criterion 4.1.2 (also provided below), replacing the note with: “This success criterion is primarily for software developers who develop or use custom user interface components. For example, standard user interface components on most accessibility-supported platforms already meet this success criterion when used according to specification.”.
With this substitution, it would read:
4.1.2 Name, Role, Value: For all user interface components (including but not limited to: form elements, links and components generated by scripts), the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to user agents, including assistive technologies. (Level A)
Note: This success criterion is primarily for software developers who develop or use custom user interface components. Standard user interface components on most accessibility-supported platforms already meet this success criterion when used according to specification.
Note 1: For conforming to this success criterion, it is usually best practice for software user interfaces to use the accessibility services provided by platform software. These accessibility services enable interoperability between software user interfaces and both assistive technologies and accessibility features of sofware in standardised ways. Most platform accessibility services go beyond programmatic exposure of name and role, and programmatic setting of states, properties and values (and notification of same), and specify additional information that could or should be exposed and / or set (for instance, a list of the available actions for a given user interface component, and a means to programmatically execute one of the listed actions).
Note 2: For document formats that support interoperability with assistive technology, standard user interface components often meet this success criterion when used according to the general design and accessibility guidance for the document format.
Note 3: See also the discussion on Closed Functionality in the Introduction.
The following is a complete list of definitions from the WCAG 2.0 glossary. Some items apply to all technologies and do not require additional guidance in this document; guidance on the remainder follows.
The following glossary items apply to all technologies and do not require further interpretation for non-web Information and Communications Technologies.
This document does not provide guidance on applying AAA Success Criteria to non-web ICT, including the following definitions.
Additional guidance is provided for the following glossary entries from WCAG 2.0 when applying them to non-web documents and software.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “browsers and other user agents” with “user agents or other software”, replacing “user agents” with “user agents or other software”, replacing “web content technology” with “non-web document or software technology”, adding “or other software extension” after “plug-in”, and replacing all five of the Notes with a single new Note: “Note: The concepts behind the five Notes and in Understanding Accessibility Supported are applicable to web technologies. The same or similar factors are applicable for non-web technologies.”
With these substitutions and addition, it would read:
supported by users' assistive technologies as well as the accessibility features in user agents or other software
To qualify as an accessibility-supported use of a non-web document or software technology (or feature of a technology), both 1 and 2 must be satisfied for a non-web document or software technology (or feature):
The way that the non-web document or software technology is used must be supported by users' assistive technology (AT). This means that the way that the technology is used has been tested for interoperability with users' assistive technology in the human language(s) of the content,
AND
The non-web document or software technology must have accessibility-supported user agents or other software that are available to users. This means that at least one of the following four statements is true:
The technology is supported natively in widely-distributed user agents or other software that are also accessibility supported (such as HTML and CSS);
OR
The technology is supported in a widely-distributed plug-in or other software extension that is also accessibility supported;
OR
The content is available in a closed environment, such as a university or corporate network, where the user agent or other software required by the technology and used by the organization is also accessibility supported;
OR
The user agent(s) that support the technology are accessibility supported and are available for download or purchase in a way that:
does not cost a person with a disability any more than a person without a disability and
is as easy to find and obtain for a person with a disability as it is for a person without disabilities.
Note: The concepts behind the five Notes and in Understanding Accessibility Supported are applicable to web technologies. The same or similar factors are applicable for non-web technologies.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “Web page” with “non-web document or software”.
With this substitution, it would read:
the purpose cannot be determined from the link and all information of the non-web document or software presented to the user simultaneously with the link (i.e., readers without disabilities would not know what a link would do until they activated it)
Example: The word guava in the following sentence “One of the notable exports is guava” is a link. The link could lead to a definition of guava, a chart listing the quantity of guava exported or a photograph of people harvesting guava. Until the link is activated, all readers are unsure and the person with a disability is not at any disadvantage.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “acts as a user agent” with “acts stand-alone”, replacing “mainstream user agent[s]” with “mainstream information and communication technologies (ICT)” (later “mainstream ICT[s])”, and replacing “Web content” with “content”.
With these substitutions, it would read:
hardware and/or software that acts stand-alone, or along with mainstream information and communication technologies (ICT), to provide functionality to meet the requirements of users with disabilities that go beyond those offered by mainstream ICT
Note 1: functionality provided by assistive technology includes alternative presentations (e.g., as synthesized speech or magnified content), alternative input methods (e.g., voice), additional navigation or orientation mechanisms, and content transformations (e.g., to make tables more accessible).
Note 2: Assistive technologies often communicate data and messages with mainstream ICTs by using and monitoring APIs.
Note 3: The distinction between mainstream ICTs and assistive technologies is not absolute. Many mainstream ICTs provide some features to assist individuals with disabilities. The basic difference is that mainstream ICTs target broad and diverse audiences that usually include people with and without disabilities. Assistive technologies target narrowly defined populations of users with specific disabilities. The assistance provided by an assistive technology is more specific and appropriate to the needs of its target users. The mainstream ICT may provide important functionality to assistive technologies like retrieving content from program objects or parsing markup into identifiable bundles.
Example: Assistive technologies that are important in the context of this document include the following:
screen magnifiers, and other visual reading assistants, which are used by people with visual, perceptual and physical print disabilities to change text font, size, spacing, color, synchronization with speech, etc. in order to improve the visual readability of rendered text and images;
screen readers, which are used by people who are blind to read textual information through synthesized speech or braille;
text-to-speech software, which is used by some people with cognitive, language, and learning disabilities to convert text into synthetic speech;
speech recognition software, which may be used by people who have some physical disabilities;
alternative keyboards, which are used by people with certain physical disabilities to simulate the keyboard (including alternate keyboards that use head pointers, single switches, sip/puff and other special input devices.);
alternative pointing devices, which are used by people with certain physical disabilities to simulate mouse pointing and button activations.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “Web page” and “page” with “non-web document or content presented by software”.
With this substitution, it would read:
major changes in the content of the non-web document or content presented by software that, if made without user awareness, can disorient users who are not able to view the entire non-web document or content presented by software simultaneously
Changes in context include changes of:
focus;
content that changes the meaning of the non-web document or content presented by software.
Note: A change of content is not always a change of context. Changes in content, such as an expanding outline, dynamic menu, or a tab control do not necessarily change the context, unless they also change one of the above (e.g., focus).
Example: Opening a new window, moving focus to a different component, going to a new page (including anything that would look to a user as if they had moved to a new page) or significantly re-arranging the content of a page are examples of changes of context.
Note: a change in the user agent might include bringing up a new window, or might be a significant change in the menus and/or toolbars that are displayed and available for interacting with some portion of the document.
The guidance in this document does not use the term “conformance”.
The guidance in this document does not use the term “conforming alternate version”.
This applies directly as written and as described in the WCAG 2.0 glossary.
Because relative luminance is defined such that it cannot directly apply to hardware, please note the text in the introduction which reads: “This document does not comment on hardware aspects of products, non-UI aspects of platforms, or the application of WCAG 2.0 for user-interface components as a category, because the basic constructs on which the WCAG 2.0 and / or its conformance are built do not apply to these.”
This applies directly as written and as described in the WCAG 2.0 glossary.
Note: because this deals with relative luminance and not luminance, it can only be applied to information on a display, not to hardware sources of light.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “Web page” with “non-web document or software”.
With this substitution, it would read:
information provided by the user that is not accepted
Note: This includes:
Information that is required by the non-web document or software but omitted by the user
Information that is provided by the user but that falls outside the required data format or values
This applies directly as written and as described in the WCAG 2.0 glossary.
Please see the note in the guidance for Success Criterion 2.1.1 that uses this definition and which reads: “This does not imply that software must directly support a keyboard or ‘keyboard interface’. Nor does it imply that software must provide a soft keyboard. Underlying platform software may provide device independent input services to applications that enable operation via a keyboard. Software that supports operation via such platform device independent services would be operable by a keyboard and would comply.”
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “Web Content” with “content” and adding “or by accessibility features of software” after “assistive technology” in Note 1.
With this substitution, it would read:
text or other component with a text alternative that is presented to a user to identify a component within content
Note 1: A label is presented to all users whereas the name may be hidden and only exposed by assistive technology or by accessibility features of software. In many (but not all) cases the name and the label are the same.
Note 2: The term label is not limited to the label element in HTML.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “Web content” with “content” and adding “or by accessibility features of software” after “assistive technology” in Note 1.
With this substitution, it would read:
text by which software can identify a component within content to the user
Note 1: The name may be hidden and only exposed by assistive technology or by accessibility features of software, whereas a label is presented to all users. In many (but not all) cases, the label and the name are the same.
Note 2: This is unrelated to the name attribute in HTML.
Note: “AccessibleName” (or whatever it is called in different APIs) of the Accessibility API of the platform is an example of such a name.
This term is only used in success criterion 2.4.5 Multiple Ways. The definitions of set of documents and set of software programs in WCAG2ICT require every item in the set to be independently reachable, and so nothing in such a set can be a “step in a process” that can't be reached any other way. The purpose of the term's use in 2.4.5 Multiple Ways (that items in a process are exempt from meeting that success criterion) is achieved by the definitions of set of documents and set of software programs.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “user agents, including assistive technologies” with “assistive technologies and accessibility features of software” and adding and “accessibility features of software” after “assistive technology”.
With this substitution, it would read:
determined by software from author-supplied data provided in a way that different assistive technologies and accessibility features of software, can extract and present this information to users in different modalities
Example 1: Determined in a markup language from elements and attributes that are accessed directly by commonly available assistive technology and accessibility features of software.
Example 2: Determined from technology-specific data structures in a non-markup language and exposed to assistive technology and accessibility features of software via an accessibility API that is supported by commonly available assistive technology and accessibility features of software.
Note: Software typically enables content to be programmatically determined through the use of accessibility services of platform software. Non-web documents typically enable content to be programmatically determined through the use of accessibility services of the user agent.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “user agents, including assistive technologies” with “assistive technologies and accessibility features of software”.
With this substitution, it would read:
set by software using methods that are supported by assistive technologies and accessibility features of software
Note: Software typically enables content to be programmatically determined through the use of accessibility services of platform software. Non-web documents typically enable content to be programmatically determined through the use of accessibility services of the user agent.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “Web content” with “content”.
With this substitution, it would read:
the relative brightness of any point in a colorspace, normalized to 0 for darkest black and 1 for lightest white
Note 1: For the sRGB colorspace, the relative luminance of a color is defined as L = 0.2126 * R + 0.7152 * G + 0.0722 * B where R, G and B are defined as:
if RsRGB <= 0.03928 then R = RsRGB/12.92 else R = ((RsRGB+0.055)/1.055) ^ 2.4
if GsRGB <= 0.03928 then G = GsRGB/12.92 else G = ((GsRGB+0.055)/1.055) ^ 2.4
if BsRGB <= 0.03928 then B = BsRGB/12.92 else B = ((BsRGB+0.055)/1.055) ^ 2.4
and RsRGB, GsRGB, and BsRGB are defined as:
RsRGB = R8bit/255
GsRGB = G8bit/255
BsRGB = B8bit/255
The “^” character is the exponentiation operator. (Formula taken from [sRGB] and [IEC-4WD]).
Note 2: Almost all systems used today to view content assume sRGB encoding. Unless it is known that another color space will be used to process and display the content, authors should evaluate using sRGB colorspace. If using other color spaces, see Understanding Success Criterion 1.4.3.
Note 3: If dithering occurs after delivery, then the source color value is used. For colors that are dithered at the source, the average values of the colors that are dithered should be used (average R, average G, and average B).
Note 4: Tools are available that automatically do the calculations when testing contrast and flash.
Note 5: A MathML version of the relative luminance definition is available.
Because relative luminance is defined such that it cannot directly apply to hardware, please note the text in the introduction which reads: “This document does not comment on hardware aspects of products, non-UI aspects of platforms, or the application of WCAG 2.0 for user-interface components as a category, because the basic constructs on which the WCAG 2.0 and / or its conformance are built do not apply to these.”
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “Web content” with “content”.
With this substitution, it would read:
text or number by which software can identify the function of a component within content
Example: A number that indicates whether an image functions as a hyperlink, command button, or check box.
Note: “AccessibleRole” (or however it is called in different APIs) of the Accessibility API of the platform is an example of such a role.
This applies directly as written and as described in the WCAG 2.0 glossary, adding a second example (and numbering the first).
With these substitutions, it would read:
same result when used
Example 1: A submit “search” button on one web page and a “find” button on another web page may both have a field to enter a term and list topics in the Web site related to the term submitted. In this case, they would have the same functionality but would not be labeled consistently.
Example 2: A ribbon icon that saves the document that looks like an arrow pointing into a folder in one case, and an arrow pointing into a hard drive in another. In this case as well, they would have the same functionality but would not be labeled consistently.
The guidance in this document does not use the term “satisfies a success criterion”.
This applies directly as written and as described in the WCAG 2.0 glossary.
Note: For those success criteria that use the term “set of web pages” explicitly or implicitly (2.4.1, 2.4.5, 3.2.3, and 3.2.4) WCAG2ICT provides specific replacement term(s) for “set of Web pages”.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “a Web page” with “non-web documents or software” and replacing “collection of Web pages” with “set of documents or set of software programs”.
With these substitutions, it would read:
The way the parts of non-web documents or software are organized in relation to each other; and
The way a set of documents or set of software programs is organized
Note 1: See the guidance on user sets of documents and sets of software programs in the Key Terms section.
Note 2: “AccessibleRole” (or however it is called in different APIs) of the Accessibility API of the platform is an example of such a role.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “web content” with “non-web document or software”, “user agents” with “user agents or other software”, removing the notes, and replacing the example with “Example: Some common examples of non-web document and software technologies include ODF, OOXML, Java, and C++.”
With these substitutions, it would read:
mechanism for encoding instructions to be rendered, played or executed by user agents or other software.
Example: Some common examples of non-web document and software technologies include ODF, OOXML, Java, and C++.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing the example with “Example: A software program has 2 controls: a text field for entering a file name and a drop down list box for choosing a folder. Each is a user interface component with a name that is settable by the software.”
With this substitution, it would read:
a part of the content that is perceived by users as a single control for a distinct function
Note 1: Multiple user interface components may be implemented as a single programmatic element. Components here is not tied to programming techniques, but rather to what the user perceives as separate controls.
Note 2: User interface components include form elements and links as well as components generated by scripts.
Example: A software program has 2 controls: a text field for entering a file name and a drop down list box for choosing a folder. Each is a user interface component with a name that is settable by the software.
This applies directly as written and as described in the WCAG 2.0 glossary, replacing “user agent” with “software”.
With this substitution, it would read:
object in which the software presents content
Note 1: The software presents content through one or more viewports. Viewports include windows, frames, loudspeakers, and virtual magnifying glasses. A viewport may contain another viewport (e.g., nested frames). Interface components created by the software such as prompts, menus, and alerts are not viewports.
Note 2: This definition is based on User Agent Accessibility Guidelines 1.0 Glossary.
This applies directly as written and as described in the WCAG 2.0 glossary.
Note: For those success criteria that use the term “web page”, WCAG2ICT provides specific replacement term(s) for “Web page”.
The following success criteria will be problematic for developers of closed functionality. They either discuss making information available in text (which can be read by assistive technologies) or making it “programmatically determinable” (rendered by a user agent and readable by assistive technologies) or discuss doing something else to make content compatible with assistive technologies. Alternate accessibility provisions that would be needed to address the purpose of these success criteria for the closed functionality aspects of products:
Note 1: Some of the above success criteria would apply to systems with closed functionality if they are partially closed or if they allow for the connection of some types of devices. For instance, Success Criterion 2.1.1 Keyboard would apply to systems which have closed functionality to screen readers but which have a physical keyboard or a connector for standard keyboards.
Note 2: While these guidelines are not suitable for closed functionality as written, they will inform and aid development of built-in accessible alternatives needed with closed functionality.
The interface of a text application is realized through a text application directing which characters should be placed on the screen, along with either a hardware terminal or a terminal application that displays the characters produced by the text application. Some text applications render like a TeleTYpewriter (“TTY”); their output is always appended, like an ever growing file. Such text applications are often called “command-line applications” or occasionally “TTY-applications”, and their output can optionally be redirected to a file for later review. Others explicitly place text into a matrix of fixed width character cells on a screen (sometimes with specific foreground and background colors). Similar to a web application, the text application may execute primarily on a remote server or execute locally, and a local client terminal application handles the visual display (similar to a web user agent). Input to the text application itself is provided exclusively through a keyboard interface.
Strategies for making text applications accessible through assistive technology involve two key tasks: (1) obtaining all of the text displayed in the interface, and (2) performing an analysis on that text to discern structural elements and screen updates.
For example, a text application screen reader might directly access the matrix of character cells in the interface and provide a screen review mechanism for the user to review that matrix of characters (by sending the output to synthetic speech and / or a braille display). Alternately, a text application screen reader might directly consume the output rendered (perhaps by acting as its own terminal application or by analyzing the “TTY” output). The text application screen reader would also analyze the spacing and layout of the text in the matrix to provide features such as reading columns of text in a multi-column layout, discerning headers through analysis of line spacing, indentation and capitalization, and discerning input fields or user interface components, etc. by scanning for the use of inverse video or for text appearing in brackets or text from the character graphics codepage (ASCII codes greater than ‘0x7F’). Some of this analysis might also be done through the use of filter tools that transform the output of a program (e.g. through reformatting “TTY” output rendered to a file or as direct input to a filter too).
Similarly, a text application screen magnifier would gain access to the matrix of character cells in order to magnify them or re-display them in a larger font. It would scan for screen refreshes / updates and apply heuristics to what had changed in order to decide what sub-matrix of character cells should appear in a magnified view. It would also scan for inverse video and a moving text cursor to track text being input by the user (and might combine the text matrix scanning with scanning of the keyboard input to match user input to what is appearing on the screen).
To apply WCAG to text applications, it is necessary to apply the glossary terms “accessibility supported” and “programmatically determined” in the context of how text applications are rendered and the history of assistive technologies that made them accessible.
As noted above, in a text interface the terminal application renders the characters on the screen, just as a web browser typically renders content for a web application. Thus for example, in success criterion 1.4.4 Resize Text, a text application could achieve 200 percent resizing when the terminal application client that is rendering it has this capability (cf. WCAG 2.0 Technique G142 Using a technology that has commonly-available user agents that support zoom). Many web pages and web applications use this approach to meet success criterion 1.4.4 Resize Text through no explicit action of their own.
A similar approach could also be used for success criterion 1.4.3 Contrast (minimum) (cf. WCAG 2.0 Technique G148: Not specifying background color, not specifying text color, and not using technology features that change those defaults): relying on the terminal application client to render the text with sufficient contrast against the background. In fact, many terminal applications allow the user to force all text to share a single user-chosen foreground color (and a single user-chosen background color), overriding the text application's specified colors in order to meet the user's desires or needs.
Since many assistive technology analysis techniques depend upon discerning the location of the text input cursor, terminal application use of “soft cursors” and “highlight bars” may bypass those analysis techniques and cause failures of success criteria.
Note: It is outside of the scope of this document to define WCAG techniques for non-web ICT. These examples are simply raised here to illustrate how WCAG 2.0 success criteria can be applied to this older class of applications that pre-date the Web.
The way to think about “accessibility supported” and “programmatically determined” may seem a little different for text applications, but the definitions are unchanged. Because assistive technologies developed analysis techniques to recognize many forms of tabular layout, column headers, and section headings, such recognized layouts are by definition “accessibility supported”. Where assistive technology is able to extract and present that information, it is “programmatically determinable”—even though no explicit markup or API was used to make it so. While such assistive technology analysis techniques are not used for supporting newer technologies, the fact that such previous analysis work was done allows us to apply WCAG 2.0 to text / command-line applications.
Note: The terminal application itself is “traditional” non-web software ICT. It is only for the text application that there is a need to take this approach with these glossary terms.
The following people were active participants in the WCAG2ICT Task Force, which had a primary role in preparation of this document:
The following people were active participants in the Web Content Accessibility Guidelines Working Group, which reviewed materials to ensure consistency with the intent of WCAG 2.0 and provided final approval of the Working Group Note:
This publication has been funded in part with Federal funds from the U.S. Department of Education, National Institute on Disability and Rehabilitation Research (NIDRR) under contract number ED-OSE-10-C-0067. The content of this publication does not necessarily reflect the views or policies of the U.S. Department of Education, nor does mention of trade names, commercial products, or organizations imply endorsement by the U.S. Government.