This normative section addresses a number of topics related to conformance:
Conformance to the requirements of this document is expected to be a strong indicator of accessibility, but it may be neither a necessary nor a sufficient condition for ensuring the accessibility of software. Some software may not conform to this document but still be accessible to some users with disabilities. Conversely, some software may conform to this document but still be inaccessible to some users with disabilities. Some requirements of this document may not benefit some users for some content, but the requirements are expected to benefit many users with disabilities, for general purpose content. For more information, please see the section on known limitations of this document, and the section on restricted functionality and conformance.
This document does not use the terms "must", "should", and "may" (and related terms) in the conventional manner, as defined in RFC 2119 [RFC2119]. This document requires substantially more conformance flexibility than can be achieved using the terms defined in RFC 2119 alone. The imperative voice used in the checkpoints implies "must", but a user agent is only required to satisfy the checkpoints of a chosen conformance profile. Where "must", "should", "required", and "may" do appear in this document, they are used consistently with RFC 2119 for a chosen conformance profile.
Note: UAAG 1.0 extends significantly the conformance mechanism defined in both WCAG 1.0 [WCAG10] and ATAG 1.0.
A conforming user agent is not required to be a single piece of software. In general, a conforming user agent will consist of several coordinated components, such as a browser, a multimedia player, documentation on the Web, etc. The current document places no restrictions on the type or number of components used for conformance. To allow conformance by a wide variety of user agents meeting a variety of user needs, this document defines conformance profiles.
Conformance profiles are used in two ways:
In either case, conformance profile identifies a set of requirements derived from a default set according to the following well-defined mechanisms, collectively called conformance profile labels:
The following sections explain how to create a conformance profile. UAAG 1.0 does not define any (named) conformance profiles, just the mechanism for creating them.
A conformance profile used to document how a user satisfies the requirements of this document includes the following information:
A conformance profile used to document how a user agent must satisfy the requirements of this document includes the same information, except that the profile indicates what the user agent "must satisfy" rather than "does satisfy". The VisualText label and Selection label must appear under the indicated conditions.
For any profile:
Thus, a conformance profile when evaluating a user agent might be as short as:
For "User Agent Accessibility Guidelines 1.0", http://www.w3.org/WAI/UA/WD-UAAG10-20020728:
- Conformance level: Double A
- Content types: Image, Animation, and Audio supported
- Events: supported
- Selection: supported
- A list of checkpoints that do not apply is available online (link to list)
- The specifications that are part of this profile are W3C's HTML 4.0, CSS2, PNG, and SVG (link to each specification)
An extended example below illustrates how to build a conformance profile while evaluating a user agent.
The default set of conformance requirements is defined to be all of the requirements of all of the provisions of all the checkpoints, as well as all of the normative inclusions and exclusions that qualify the checkpoints. Conformance is also affected by additional details that apply across the checkpoints.
The set of requirements identified by a conformance profile is the set derived from the default set by:
Since conformance profiles differ, a well-formed conformance claim must include information about the chosen profile.
Note: The requirements that are not removed through the above mechanisms are part of every UAAG 1.0 conformance profile (including, for example, the keyboard requirements of checkpoint 1.1).
Each conformance level defines a set of requirements, based on priority.
Note: Conformance levels are spelled out in text (e.g., "Double-A" rather than "AA") so they may be understood when rendered as synchronized speech.
Each content type label defines a set of requirements related to support for visually rendered text, images, animations, video, audio, and synthesized speech.
Note: Some of the labels above require implementation of at least one format (e.g., for images). This document does not require implementation of specific formats, (e.g., PNG [PNG] versus SVG [SVG] for images). However, please see the requirements of checkpoint 8.2.
The following checkpoints are designed to augment user agent support for event-driven behavior specified by the author: 1.2, 9.5, and 9.6. Satisfying these checkpoints will promote input device independence and thus enable users with some disabilities to make better use of content designed for a single input device (generally a pointing device). The Events label refers to the requirements of these checkpoints.
This document does not require the user agent to implement a selection mechanism in order to conform. However, if the user agent does implement a selection mechanism, in order to conform it must satisfy the relevant portions of the following checkpoints: 5.4, 6.6, 7.1, 9.4, 10.2, and 10.3. The Selection label refers to the selection requirements of these checkpoints.
Note: This document does require implementation of both content focus and user interface focus; see checkpoint 9.1 and checkpoint 9.2.
Each input modality label defines a set of requirements related to support for pointing device and voice input. Input device requirements in this document are either stated generically (e.g., "input configuration" requirements) or as keyboard-specific requirements (e.g., "keyboard API").
Note: Developers are encouraged to design user agents that are at least partially operable through pointing device and/or voice input, in addition to being fully operable through the keyboard.
A checkpoint (or part of a checkpoint) applies unless any one of the following conditions is met:
NOFRAMEScontent as specified mechanisms for conditional content. HTML user agents are not expected to recognize that a nearby paragraph is a text equivalent for the image (when not marked up as such).
The following example illustrates how to evaluate a user agent and build an appropriate conformance profile. This informative example does not illustrate a complete user agent evaluation.
Consider a user agent that:
For this profile, we choose level Double-A. This establishes a set of requirements consisting of all of the requirements of all the priority 1 and 2 checkpoints.
For this profile, we must include VisualText since the user agent renders text visually.
For this profile, we also wish to include the labels Image, Video, and Audio, so the user agent must satisfy those requirements as well. Consider the following checkpoint:
4.4 Slow multimedia. (P1)
- Allow the user to slow the presentation rate of rendered audio and animation content (including video and animated images).
- As part of satisfying provision one of this checkpoint, for a visual track, provide at least one setting between 40% and 60% of the original speed.
- As part of satisfying provision one of this checkpoint, for a prerecorded audio track including audio-only presentations, provide at least one setting between 75% and 80% of the original speed.
- When the user agent allows the user to slow the visual track of a synchronized multimedia presentation to between 100% and 80% of its original speed, synchronize the visual and audio tracks (per checkpoint 2.6). Below 80%, the user agent is not required to render the audio track.
The second provision is specific to video, so must be satisfied for this profile. The third provision is specific to audio, so must be satisfied as well. The fourth provision involves synchronization, but the user agent does not implement any synchronized multimedia format (see step 6).
Note also the relevant normative exclusions for this checkpoint: the user agent is not required to satisfy the requirements of this checkpoint for audio and animations whose recognized role is to create a purely stylistic effect. In our example, the user agent provides the functionality for all audio and animations, even though this is not required.
Although the user agent implements two animation formats, it only meets some, but not all, of the requirements associated with the Animation label. Therefore, we do not include it in the profile.
Note: A conformance claim will indicate that the plug-in renders the video.
In this example, the user agent supports functionalities that promote input-device independent access to event handlers. Therefore, we can include the Events label in the profile.
In this example, since the user agent implements a selection mechanism, the profile must include the Selection label (and the user agent must satisfy the associated requirements).
Since the user agent does not fully support operation through the pointing device alone or voice input alone, we exclude the Pointer and Voice labels from the profile.
In step 2 we saw that the fourth provision of checkpoint 4.4 did not apply since the user agent implements no synchronized multimedia format.
Other provisions that do not apply must also be documented. See the section on conformance and implementing specifications for more information about identifying formats that are used to satisfy the requirements of this document.
The profile resulting from these would include the following information:
For "User Agent Accessibility Guidelines 1.0", http://www.w3.org/WAI/UA/WD-UAAG10-20020728:
- Conformance level: Double-A
- Content types: VisualText (T1, T2, T3), Image (I1, I2), Video (V1, V2), and Audio (A1) supported
- Events: supported
- Selection: supported
- Applicability: For checkpoint 4.4, provision three of checkpoint does not apply because the user agent does not implement any formats that support synchronized multimedia.
The following normative subsections provide additional information that affects conformance.
Except for the checkpoints in guideline 6 that refer to implementation of APIs, the user agent must satisfy the checkpoint requirements through at least one mechanism other than an API. Thus, for most of the requirements in this document, it is not possible to conform by only making information available through an API (e.g., for an assistive technology to provide the missing feature). For example, checkpoint 9.3 involves navigation that must be possible through the user interface, not just via an API. This and other checkpoints involving user control or configuration will therefore generally be satisfied through features in the user interface or through configuration files (see the section on configuration requirements).
Note: Assistive technologies may satisfy some of the requirements of this document, and may be included in a conformance claim.
The requirements of certain checkpoints might apply equally well to content or to user agent user interface features. When it is necessary to remove ambiguity about the scope of a checkpoint, the checkpoint includes a label to indicate whether the requirements must be satisfied:
Many of the content-only requirements also make sense for the user agent user interface (e.g., allow the user to render blinking text as motionless text). User agent developers are encouraged to consider the content-only requirements when designing the user agent's user interface.
The user agent may satisfy a content-only requirement with a mechanism that also involves user agent features. For instance, to satisfy checkpoint 4.7, the user agent may provide a single control for all volume (including content and user interface features). Similarly, to satisfy checkpoint 3.3, the user agent may offer a single configuration that turns off blinking in both content and the user interface.
In general, a user agent is only required to satisfy the requirements of this document for a subset of implemented specifications; these specifications must be identified in a conformance profile. For example, a user agent may implement ten image formats, but a developer may only wish to claim "Image" conformance for three of them. In the conformance profile, the developer must list the three formats used to satisfy the Image requirements. The developer is thus "rewarded" for improving user agent accessibility for three image formats.
There are several checkpoints, however, that must be satisfied for all applicable implemented specifications, otherwise the intent of the checkpoint may not be met. For instance, checkpoint 3.3 involves turning off blinking and animated text. Since there is a risk that these rendering effects may trigger seizures in people with photosensitive epilepsy, it is important that the user be able to turn them off in all cases (whether the specification is identified in a conformance profile or not).
For a given conformance profile, the user agent must satisfy all checkpoints in this document for at least those specifications identified in the profile (e.g., format specifications, style sheet specifications, API specifications, operating environment conventions, etc.). The user agent is not required to satisfy all checkpoints for all implemented specifications, except for the following cases:
The user agent may satisfy the configuration requirements of this document through configuration files (e.g., profiles, initialization files, themes, etc.). For instance, style sheets might be used as a mechanism to satisfy the highlight and configuration requirements of checkpoint 10.2. Any functionality that is configurable through a configuration file should also be configurable through the user agent user interface. Furthermore, if configuration files may be edited by hand, the user agent documentation should explain the configuration file format, or refer to an explanation (a format specification, for example).
For some of the checkpoints in this document (checkpoints 3.3, 5.1, 5.3, and 5.5), configuration is preferred, but not required to satisfy the checkpoint in some circumstances. For other checkpoints, configurability may be as important as the functionality being configured.
Since this document allows conformance by multiple software components (e.g., a browser, a media player, and several plug-ins), there are likely to be times when, to satisfy the configuration requirements of the document, each component has to provide for configuration independently. To make configuration easier for the user, components should share and inherit configurations (including those of the operating environment).
To satisfy the requirements of this document, developers are encouraged to adopt operating environment conventions and features that benefit accessibility. When an operating environment feature (e.g., the operating system's audio control feature, including its user interface) is adopted to satisfy the requirements of this document, it is part of the user agent.
Some of the checkpoints in this document involve operating environment conventions. When a user agent runs in more than one operating environment (e.g., a user agent implemented in Java on top of another operating system), developers may satisfy the requirements of this document by following the conventions of a single operating environment. Developers should follow the conventions that benefit accessibility most, while meeting the developers' design goals. For instance, some developers may prefer cross-platform consistency over consistency with other user agents running in a given operating environment, and this might affect which conventions would be preferred.
User agents do not conform to this document on a per-resource basis; claims are not as specific as "the user agent conforms for this particular Web page." A user agent conforms if it satisfies the requirements of this document for most general-purpose content, in ordinary operating conditions.
In some cases, the author's content may limit the user agent's functionality for specific reasons, such as to protect intellectual property rights, or to provide a read-only view (allowing no user interaction). Content that limits the functionality of the user agent in some cases does not automatically invalidate a conformance claim. A valid conformance claim remains valid as long as the user agent satisfies the requirements of this document for most general-purpose content.
Note: The User Agent Accessibility Guidelines Working Group recognizes that further work is necessary in the area of digital rights management as it relates to accessibility. Digital rights management refers to methods of describing and perhaps enforcing intellectual property associated with Web resources.
Some of the requirements of this document have security implications: communication through APIs, allowing programmatic read and write access to content and user interface control, etc. This document assumes that features required by this document will be built on top of an underlying security architecture. Consequently, unless permitted explicitly in a checkpoint (as in checkpoint 6.5), this document grants no conformance exemptions based on security issues.
Consider the example of a form control that allows the user to enter a password. Graphical user agents commonly display typed characters as asterisks (or display nothing). The user agent should not communicate asterisks to assistive technologies, but the real password, properly encrypted.
Appropriate user agent behavior with respect to security (and more generally as well) also depends on the user's context. For instance, hiding typed passwords with asterisks is much less important for someone in a room alone than for someone in a crowded room. Similarly, unencrypted passwords rendered as synthesized speech should not be broadcast in a crowded room, but may pose no security risk if the user is wearing an earphone.
For information related to security, refer to "XML-Signature Syntax and Processing" [XMLDSIG] and "XML Encryption Syntax and Processing" [XMLENC].
Here is a sample conformance claim (expressed in HTML):
<p>On 28 July
2002, UserAgent X (version 2.3) running on MyOperatingSystem (version 4.2)
conforms to <abbr title="the World Wide Web
Consortium">W3C</abbr>'s "User Agent Accessibility Guidelines 1.0",
http://www.w3.org/WAI/UA/WD-UAAG10-20020728. Conformance level: Double A;
Content types: Image, Animation, and Audio supported; Events supported;
Selection supported. A <a
href="http://example.com/checkpoints">list</a> of formats used to
satisfy the requirements, and of checkpoints that do not apply is available
online. The specifications that are part of this profile are W3C's HTML 4.0,
CSS2, PNG, and SVG (where each acronym links to the corresponding
A claim is well-formed if it meets the following two conditions.
Condition 1: The claim must include the following information:
Condition 2: At least one version of the claim must conform to the "Web Content Accessibility Guidelines 1.0" [WCAG10], level A. This claim may appear on the Web, on a CD-ROM, etc. If a conformance icon is part of a claim on the Web, it must link to the W3C explanation of the icon.
This specification imposes no restrictions on the format used to make a well-formed claim. For instance, the claim may be marked up using HTML (see sample claim), or expressed in the Resource Description Framework (RDF) [RDF10].
A conformance claim is valid if it is well-formed and true.
The document has been designed to help non-experts evaluate the validity of conformance claims. Some checkpoints may require interpretation and judgment. In some cases, although a requirement is clearly stated, without documentation or feedback from developers (e.g., about implemented APIs) it may be difficult to evaluate whether a user agent has satisfied the requirement. Some checkpoints (e.g., those requiring developers to follow conventions or implement specifications defined outside this document) are inherently more open to interpretation than others.
It is not currently possible to evaluate the validity of a claim automatically.
Note: The checklist [UAAG10-CHECKLIST] is designed to help people evaluate user agents. The User Agent Accessibility Guidelines Working Group makes available additional test suites, guides, and other tools to help people evaluate user agents for conformance.
This specification imposes no restrictions about:
Claimants (or relevant assuring parties) are solely responsible for the validity of their claims, keeping claims up to date, and proper use of the conformance icons. As of the publication of this document, W3C does not act as an assuring party, but it may do so in the future, or it may establish recommendations for assuring parties.
Claimants are expected to modify or retract a claim if it may be demonstrated that the claim is not valid. Claimants are encouraged to claim conformance to the most recent User Agent Accessibility Guidelines Recommendation available.
As part of a conformance claim, people may use a conformance icon (or, "conformance logo") on a Web site, on user agent packaging, in documentation, etc. A conformance icon does not represent that a claim is valid, only that a claim has been made. The appearance of a conformance icon does not imply that W3C has reviewed or validated a claim.
It is meaningless to use a conformance icon on its own, i.e., to use the icon without an associated well-formed claim.
Draft Note: In the event this document becomes a W3C Recommendation this document will link to the W3C Web site for additional information about the icons and how to use them.
Authors of technical specifications (such as W3C Recommendations) should incorporate the requirements of UAAG 1.0 as part of conformance to their specifications. This may be done by direct inclusion, or by reference using a conformance profile. Direct inclusion promotes the integration of specialized accessibility requirements; inclusion by reference is easier and less prone to error.
For more information on designing specifications that promote accessibility, refer to W3C's "XML Accessibility Guidelines" [XAG10].
objectelements are defined, include a statement such as "Per checkpoint 3.4 of UAAG 1.0, a conforming user agent must allow configuration not to execute scripts, applets, or other executable content."
'text-decoration'property is defined, include a statement such as "A conforming user agent must either: (a) allow configuration to override the
'blink'value with the 'none' value, or (b) ignore the
'blink'value. This is required by checkpoint 3.3 of UAAG 1.0 [UAAG10]."
Section G.5 of the SVG 1.0 Recommendation [SVG] states:
Additionally, an authoring tool which is a Conforming SVG Generator conforms to all of the Priority 1 accessibility guidelines from the document "Authoring Tool Accessibility Guidelines 1.0" that are relevant to generators of SVG content.
This statement requires conformance to the Authoring Tool Accessibility Guidelines as part of conformance to SVG 1.0 (for certain classes of tools). This type of "conformance requirement by reference" is also possible for UAAG 1.0, by inclusion of a conformance profile.
The following is a (partial) example of a conformance profile for the MyFormat specification (expressed in plain text):
As part of conformance to MyFormat 1.0, a user agent must satisfy the following conformance profile:
See the section on how to refer to UAAG 1.0 for what should appear in the references section of the specification.