Techniques for WCAG 2.0

On this page:

-

# F77: Failure of Success Criterion 4.1.1 due to duplicate values of type ID

## Applicability

Any XML-based markup languages including HTML 4.01 and XHTML 1.x.

This failure relates to:

- Success Criterion 4.1.1 (Parsing)
  - How to Meet 4.1.1 (Parsing)
  - Understanding Success Criterion 4.1.1 (Parsing)

## Description

This describes a failure condition where duplicate ID errors are known to cause problems for assistive technologies when they are trying to interact with content. Duplicate values of type ID can be problematic for user agents that rely on this attribute to accurately convey relationships between different parts of content to users. For example, a screen reader may use ID values to identify the applicable header content for a data cell within a data table, or an input control to which a given label applies. If these values are not unique, the screen reader will be unable to programmatically determine which headers are associated with the data cell or which control is associated with which label or name.

Checking that ID attribute values are unique within a document can be done by validating the document against its schema, because the schema defines which attributes contain document-wide unique identifiers.

Note 1: In most markup languages, ID values are attribute values, for example in HTML and XHTML.

Note 2: XML documents that use only the `xml:id` attribute as an ID attribute, parsing the XML document with a validating parser that supports the xml:id specification is sufficient.

## Examples

### Example 1

An author uses an online validation service to check that all id attribute values are unique.

### Example 2

A developer utilizes features in their authoring tool to ensure that id attribute values are unique.

## Resources

Resources are for information purposes only, no endorsement implied.

- xml:id Version 1.0 - W3C Recommendation 9 September 2005.

- Extensible Markup Language (XML) 1.0 (Fourth Edition): Validity constraint: ID

- HTML 4.01: id attribute

## Related Techniques

- G108: Using markup features to expose the name and role, allow user-settable properties to be directly set, and provide notification of changes
- H75: Ensuring that Web pages are well-formed

## Tests

### Procedure

1. Check that all values of type ID are unique in the Web page

### Expected Results

- If Step #1 is false, then this failure condition applies and the content fails the Success Criterion.

- Top
- Contents
- Intro
- Previous: Failure F76
- Next: Failure F78