Relationships Detectable
Group: layout • Guideline: structure
Summary in Plain English
Where two things are related in meaning - a label and its field, a heading and its section, a cell and its column - the relationship is marked up, not just implied by position or styling.
Why It Matters
A label beside a field, a cell under a column header, a caption under a figure - all of these are obvious by sight and invisible to assistive technology unless the relationship is marked up.
Test Procedure from the W3C Draft
Quoted from the provision's informative document, informative/guidelines/layout/structure/relationships-detectable.md. It is the group's own procedure, not an editorial testing guide.
HTML hierarchical relationship
Procedure
- Determine the contextual hierarchy of the content either visually or through the meaning of the content.
- Examine the source code of the HTML document to identify each hierarchical section.
- Check that each section uses an appropriate semantic HTML element that reflects its position in the hierarchy.
Expected results
- #3 is true.
HTML input field/label relationship
Procedure For each input field within the unit of conformance:
- Check that each
<input>,<select>, and<textarea>in the source code has a programmatically-associated<label>usingforandidattributes.
Expected results
- #1 is true.
HTML list relationship
Procedure
For each list within the unit of conformance:
- Check that each list consists of a
<ul>,<ol>, or<dl>. - Check that each list item within the list is contained within an
<li>element (for<ul>and<ol>) or<dt>/<dd>pair (for<dl>). - Check that the immediate child element of the list is an
<li>element (for<ul>and<ol>) or<dt>/<dd>pair (for<dl>).
Expected results
- #1, #2, and #3 are true.
HTML nested list relationship
Procedure
For each nested list within the unit of conformance:
- Check that all child lists are contained within a
<li>of the parent list.
Expected results
- #1 is true.
W3C Working Group Status
The draft records no open editors' notes on this provision.
W3C Threads on This Provision
4 GitHub threads carrying 50 comments, fetched from w3c/wcag3 by the tracker. Titles, numbers and states are the threads' own.
⚠️ This summary is stale — comments landed after it was written.
What the Argument Is About
Whether "relationships detectable" is purely a programmatic requirement, and how to bound it โ the two substantive threads behind it are both stalled proposals inherited from WCAG 2.x, one on element nesting and one on visual label proximity.
Positions taken in the thread
cstrobbe's proposal in #166 would require that elements used with their native roles be nested according to the content models in their specifications, plus a fourth clause barring links, interactive elements and keyboard-focusable elements as descendants of links. He worked through seventeen code examples (numbered 1 to 16, then 19) showing where a syntax reading of 4.1.1, a validation reading, and the proposal each land โ button wrapping an anchor, li inside a div inside a ul, p as a sibling of li, h2 wrapping p. JAWS-test called it exactly what was needed and asked that it also cover ARIA and PDF tags, noting that correct nesting is what lets a screen reader report that a table has 3 columns and 2 rows and that you are in column 2, row 1. JAWS-test cited EN 301 549 clause 11.5.2.9 and Section 508 502.3.7, both of which already require parent-child relationships to be programmatically determinable.
patrickhlauke would rather see 4.1.1 updated normatively in a backwards-compatible way than patch around a poorly interpreted criterion, warning of weird overlaps where one SC is a stricter special case of another. yatil proposes extending 4.1.1 to "markup languages and associated extensions as they relate to accessibility features" and dropping the well-formedness framing from the Understanding document, or alternatively removing 4.1.1 entirely per w3c/wcag#2676. scottaohara agrees: use 4.1.1 for what people think it is for, unless "elements are nested according to their specifications" does not actually mean that. patrickhlauke also argues the singling out of links is arbitrary, since buttons and other controls have the same problem.
bruce-usab says it is bad to retcon a standard and refuses scottaohara's "use 4.1.1 for what people think it's for" framing; GreggVan agrees and adds that 4.1.1 should be clarified to mean what the working group meant when it was written, not what people later want it to mean. bruce-usab separately notes the proposal arrived too late for WCAG 2.2. cstrobbe's own reply is that the intents differ: 4.1.1 is about a user agent building an unambiguous parse tree, while his proposal is about name, role, state and value being exposed unambiguously through an accessibility API, which puts it closer to 4.1.2.
detlevhfischer's #194 proposal caps the gap between a label and the element it labels at twice the smaller of the labelled element's width or height, illustrated with a 16 px-tall field passing at a 32 px gap and failing at 33 px. He later revised it to four times the smaller dimension of the label itself, to escape the problem that the original formula breaks for textarea. mraccess77 defends the need against demands for evidence, pointing out that the SC 3.3.2 Understanding document said in 2008 that labels close to their field help screen-magnifier users, that G162 already exists, and citing Nielsen Norman Group material on proximity and form white space; to the argument that proximity gaps are a common pattern he answers that "because something is a common pattern doesn't mean it's a correct pattern."
jake-abma checked with designers and reported that almost all current forms would fail and that the calculation is too prescriptive for design aesthetics, and that the measurement scheme โ four times, three times, widths, heights, mixed elements โ is too complicated for designers, developers and testers alike. awkawk points to the very common pattern of left-aligned labels against aligned fields, where varying label length forces varying gaps, and says disallowing a common pattern requires clear evidence. alastc notes the proposal would fail the GOV.UK Design System text input with hint text, and asks what happens when an error message is inserted. patrickhlauke finds the loophole immediately: a designer could make fields excessively tall purely to buy leeway to push the label further away, defeating the point while passing; he also asks for hard proof that larger gaps harm particular users rather than the working group making things up. detlevhfischer concedes the exception list grows until the original requirement is lost, and that focusing on label-to-control catches only a subset of the proximity problems he has seen in low-vision user testing.
In #451 GreggVan argues that if a relationship is not presented to anybody, it is unclear what the requirement is getting at, and that without scoping there are a million ways elements can be related and all of them would have to be conveyed programmatically; he proposes narrowing it to "when relationships of meaning between elements are presented visually, they are also conveyed programmatically." giacomo-petri opened the issue acknowledging the tests are incomplete and that the requirement must either gain sufficient tests or state its applicability clearly. adampage's specific gaps are error messages and help text for form controls, and tables with headers, bodies, footers, data cells and header cells โ questions that arise precisely because the written tests are so narrow.
Agreed
- Proximity of a label to its control genuinely matters for low-vision and magnifier users; awkawk, the main sceptic on #194, states outright that he does not dispute the concept and that the challenge is only deciding how close is close enough so it can be tested. patrickhlauke still asked for hard proof that larger gaps can be a problem for particular users, so the evidence base itself remained in question.
- A whole class of parent-child relationships is not expressible as element nesting at all โ JAWS-test's list of aria-owns, radio buttons grouped by the name attribute, and aria-level on treegrids drew no rebuttal, and cstrobbe conceded the requirement should be framed around what reaches the accessibility API and not only around nesting.
Still open
- Whether the provision stays limited to programmatic relationships or additionally requires visually clear ones. adampage raised it on #194 against the current draft text; patrickhlauke's objection is that defining how to represent something "clearly" in visual terms lands you in arbitrary graphic design statements.
- Whether the requirement should apply only where a relationship is presented visually, per GreggVan's proposed rewording in #451.
- What the tests must cover: error messages and help text for form controls, and table headers, bodies, footers and cells โ adampage's list, carried into #451 by giacomo-petri.
- What artefact is evaluated โ source code, DOM or accessibility tree. JAWS-test raised this on #166: source often has no bearing after JS and CSS, while DOM and accessibility tree reflect browser repair that is not consistent across browsers, which is why 4.1.1 existed in the first place.
- Whether roles overridden by ARIA are in scope, and how to word that technology-independently. This is cstrobbe's own question on #166. JAWS-test answered it in favour, arguing ARIA is exactly where the problems are, since it is widely misused, hard to validate and not consistently repaired by browsers, and suggested wording along the lines of EN 301 549 and Section 508; cstrobbe said he would submit a suggestion covering explicitly assigned roles, but never posted it.
- Whether any testable proximity metric is achievable at all. jake-abma and patrickhlauke floated a reflow-style alternative โ label and input both at least partly visible in a 320 CSS px viewport โ and jake-abma noted it leaves desktop zoom-tool users, where the label is simply too far right, unaddressed.
- Whether a programmatic relationship should serve as an escape hatch from a visual proximity requirement. alastc proposed it; patrickhlauke called it a cop-out that shifts the burden to user agents and makes the provision redundant, since programmatic association is already required by 1.3.1 and in most cases 4.1.2.
Note
Both substantive threads are inherited and largely dormant. #194 was opened in 2019 as a WCAG 2.2 proposal, had its real debate over two weeks in March and April 2019, drew one comment in 2022 from anevins12 that went unanswered, then sat untouched until adampage reopened the question in May 2026 against the WCAG 3 draft text. #166 dates from 2022 and its last exchange is bruce-usab and GreggVan on retconning, with cstrobbe's promised rewording never posted. #271 is alastc's requirement-tracking stub listing five requirements and a Google doc link, with no discussion at all.
- #166 New SC (4.1.4?): Native Child-Element Roles open 16 comments · updated 2026-05-01
- #194 Draft SC "Label gaps" open 34 comments · updated 2026-10-26
- #271 Requirements: Section labels open 0 comments · updated 2026-04-02
- #451 Programmatic relationships - Clarify/review applicability + improve tests open 0 comments · updated 2026-03-29
WCAG 2.2 Criteria That Map Here
From this site's reviewed WCAG 2.2 → WCAG 3 map. The map is an interpretation, not a W3C mapping: W3C has not published one yet.
W3C Raw Source Text
Verbatim from guidelines/groups/layout/structure/relationships-detectable.md · informative document: informative/guidelines/layout/structure/relationships-detectable.md
Relationships of meaning between elements are conveyed programmatically.