Accessibility / ARIA / Conformance DSLs Family Index


type: language-family-index family: accessibility-aria languages_catalogued: 26 tags: [language-reference, family-index, accessibility-aria, wai-aria, wcag, axe-core, ssml, webvtt, ttml, uia, nsaccessibility, epub-accessibility]

Accessibility / ARIA / Conformance — Family Index

Family overview

Accessibility DSLs are the textual languages, attribute vocabularies, and rule-criterion taxonomies used to describe how content and software expose semantics to assistive technology — and to describe whether a given artefact conforms to a given criterion. Unlike most other Tier-3 families, this one is dominated not by a single linguistic core but by two parallel grammars that have to align: the expression grammar (ARIA attributes, HTML semantics, AOM, platform accessibility APIs like UIA / NSAccessibility / AT-SPI) and the conformance grammar (WCAG success-criterion IDs 1.1.1, 2.4.6; Section 508 FPC1xx codes; EN 301 549 clauses; axe-core/WAVE/Pa11y rule IDs). The expression side is what developers write; the conformance side is what auditors and the law speak.

The web has a clear focal point. WAI-ARIA 1.2 (W3C Recommendation, 6 June 2023) is the production-current ARIA standard, and WAI-ARIA 1.3 has been in Working Draft since 23 January 2024, introducing roles like comment, suggestion, and mark for collaborative editing surfaces. ARIA’s grammar is consumed by every browser’s accessibility-tree builder, which then maps it onto whatever platform API the operating system exposes — Microsoft UIA on Windows, NSAccessibility on macOS, AT-SPI on Linux, AccessibilityServiceConfig on Android. The Accessibility Object Model (AOM, in the W3C/WICG) is the JS-side DSL for direct accessibility-tree manipulation, with the WebDriver computedRole/computedLabel slice already shipping in all major browsers.

On the conformance side, WCAG 2.2 became a W3C Recommendation on 5 October 2023, adding nine success criteria (focus-not-obscured, dragging-movements, target-size-minimum, etc.). WCAG 3.0 is still a Working Draft as of the March 2026 update — now built around 174 requirements (formerly called “outcomes”) and a rating-based conformance model that breaks compatibility with WCAG 2.x. Worldwide legal frameworks orbit WCAG: Revised Section 508 (USA, 2017) references WCAG 2.0 AA; EN 301 549 v3.2.1 (Europe, March 2021, harmonised under the European Accessibility Act enforced 28 June 2025) references WCAG 2.1 AA; an EN 301 549 update incorporating WCAG 2.2 is in progress. The testing-tool layer (axe-core, WAVE, Pa11y, Lighthouse) each has its own rule-ID taxonomy that maps back to WCAG criteria.

Adjacent to ARIA/WCAG sit the speech-synthesis DSLs (SSML 1.1, PLS 1.0) — W3C standards from 2010/2008 that every major TTS engine (Amazon Polly, Google, Azure, OpenAI to varying degrees) still honours — and the caption/subtitle zoo (WebVTT, TTML2, IMSC 1.2 / IMSC Text 1.3, SRT, CEA-608/708), the EPUB Accessibility 1.1 conformance profile (W3C Recommendation, 17 October 2024) layered on top of EPUB 3.3, and the publishing-side accessible-book formats (DAISY, NIMAS) maintained by the DAISY Consortium.

In our deep library

Cross-link related Tier-3 families:

  • api-description — most accessibility specs are XML/JSON schemas with formal grammars; ARIA roles + states are effectively a controlled attribute vocabulary
  • i18n-localehreflang, language tagging (BCP 47), and pronunciation lexicons (PLS) all sit on locale infrastructure
  • document-typesetting — LaTeX → tagged PDF / PDF-UA accessibility pipeline
  • print-page-description — PDF/UA (ISO 14289-1, -2) cross-listed there
  • notation-spec — WCAG criteria IDs (1.1.1, 2.4.6) are a structured rule taxonomy / spec-naming DSL
  • math-notation — MathML accessibility (MathSpeak, Nemeth Braille) overlap
  • javascript — AOM is JS DSL; axe-core, Pa11y, Lighthouse are JS-hosted; HTML and CSS prefers-* media queries (an accessibility-policy mini-DSL) sit on top of the JS deep note as the web-platform layer
  • api-description — TTML, DAISY, EPUB, SSML, PLS are all XML applications; their schema-description infrastructure is catalogued there

Tier 3 family table — Web accessibility (ARIA + HTML semantics + AOM)

StandardFirst appearedOriginTypeStatus (2026)URL
WAI-ARIA 1.26 June 2023 (W3C Rec)W3C ARIA Working GroupAttribute vocabulary (role, aria-*) for HTML/SVGW3C Recommendation, production-currenthttps://www.w3.org/TR/wai-aria-1.2/
WAI-ARIA 1.323 Jan 2024 (FPWD)W3C ARIA WGAdds comment, suggestion, mark, expanded errormessage handlingWorking Draft (editor’s draft Feb 2026)https://www.w3.org/TR/wai-aria-1.3/
HTML Accessibility API Mappings (HTML-AAM)2014+W3C ARIA WGSpec for how HTML elements map to platform a11y APIsActive, parallel to ARIAhttps://www.w3.org/TR/html-aam-1.0/
Accessibility Object Model (AOM)2017+W3C / WICG (Google, Apple, Mozilla)JS DSL for direct accessibility-tree manipulation; multi-phaseIncubation in WICG; WebDriver computedRole/computedLabel ships in all major browsershttps://wicg.github.io/aom/
Accessible Name & Description Computation (AccName) 1.2Dec 2023W3C ARIA WGAlgorithm spec for computing accessible names from DOMW3C Recommendationhttps://www.w3.org/TR/accname-1.2/
ARIA Authoring Practices Guide (APG)2013+W3C ARIA WGPattern recipes (combobox, treegrid, tabs) using ARIAActive Note, continuously updatedhttps://www.w3.org/WAI/ARIA/apg/

Tier 3 family table — Conformance / WCAG taxonomy

StandardFirst appearedOriginTypeStatus (2026)URL
WCAG 2.15 June 2018W3C AG WGSuccess-criterion ID DSL (1.1.14.1.3); 78 SCsW3C Recommendation (superseded by 2.2 but still legally referenced by EN 301 549 v3.2.1)https://www.w3.org/TR/WCAG21/
WCAG 2.25 Oct 2023W3C AG WGAdds 9 SCs (focus-not-obscured, target-size-minimum, dragging-movements, etc.)W3C Recommendation, current published baselinehttps://www.w3.org/TR/WCAG22/
WCAG 3.021 Jan 2021 (first WD)W3C AG WGRating-based conformance, 174 requirements (renamed from outcomes); breaks 2.x modelWorking Draft (March 2026 update); years from Rechttps://www.w3.org/TR/wcag-3.0/
Section 508 (Revised)18 Jan 2017 final ruleU.S. Access BoardFPC1xx codes; references WCAG 2.0 AA by referenceIn force; still pegged to WCAG 2.0 AA in 2026https://www.access-board.gov/ict/
EN 301 549 v3.2.1March 2021ETSI / CEN / CENELECEU ICT accessibility harmonised standard; references WCAG 2.1 AAHarmonised standard under European Accessibility Act (enforced 28 June 2025); v4 incorporating WCAG 2.2 in progresshttps://www.etsi.org/deliver/etsi_en/301500_301599/301549/03.02.01_60/en_301549v030201p.pdf
ATAG 2.024 Sept 2015W3C AG WGAuthoring Tool Accessibility GuidelinesW3C Recommendation; companion to WCAGhttps://www.w3.org/TR/ATAG20/
axe-core rule IDs2015+Deque Systems~100 rule IDs (aria-roles, color-contrast, landmark-one-main); maps to WCAG 2.0/2.1/2.2, S508, EN 301 549Very active, ~minor release every 3–5 monthshttps://github.com/dequelabs/axe-core/blob/develop/doc/rule-descriptions.md
WAVE rule IDs2001+WebAIM (Utah State)Error/alert/feature IDs (alt_missing, label_missing_input)Active, browser extension + APIhttps://wave.webaim.org/api/docs
Pa11y rule IDs2013+Team Pa11y (Nature, then community)Wraps axe-core + HTML_CodeSniffer rule setsActive, headless-Chromium CLIhttps://pa11y.org/
Lighthouse accessibility audits2016+GoogleAudit IDs bundled into Lighthouse; uses axe-core under the hoodActive, ships in Chrome DevToolshttps://developer.chrome.com/docs/lighthouse/accessibility/
PAC (PDF Accessibility Checker) checkpoints2004+ (PAC) / 2021 (PAC 2024)access for all foundation (Switzerland)Checkpoint IDs for PDF/UA + Matterhorn Protocol mappingActive; reference tool for PDF/UAhttps://pdfua.foundation/en/pdf-accessibility-checker-pac/

Tier 3 family table — Speech / TTS

StandardFirst appearedOriginTypeStatus (2026)URL
SSML 1.17 Sept 2010 (W3C Rec)W3C Voice Browser WGXML markup for controlling synthesised speech (<prosody>, <phoneme>, <lexicon>)W3C Recommendation; honoured by every major TTS engine (Polly, Azure, Google)https://www.w3.org/TR/speech-synthesis11/
PLS 1.0 (Pronunciation Lexicon)14 Oct 2008 (W3C Rec)W3C Voice Browser WGXML lexicon format referenced by SSML <lexicon>; IPA + vendor alphabetsW3C Recommendation; AWS Polly et al. consume ithttps://www.w3.org/TR/pronunciation-lexicon/
NVDA / JAWS speech dictionariesNVDA 2006+ / JAWS 1995+NV Access / Freedom Scientific (Vispero)Vendor-specific pronunciation override DSLs (.dic / .jdf files)Active, screen-reader-specifichttps://www.nvaccess.org/files/nvda/documentation/userGuide.html
VoiceXML 2.119 June 2007W3C Voice Browser WGDialog-style markup; voice-side accessibilityLegacy but still referenced; superseded operationally by modern conversational stackshttps://www.w3.org/TR/voicexml21/

Tier 3 family table — Caption / subtitle

StandardFirst appearedOriginTypeStatus (2026)URL
WebVTT2010 (Hixie draft)WHATWG → W3C Timed Text WGWeb-native caption format (.vtt); cues + simple stylingW3C Candidate Recommendation, universally implemented in browsershttps://www.w3.org/TR/webvtt1/
TTML28 Nov 2018 (W3C Rec)W3C Timed Text WGXML timed-text language; broadcast/IMSC baseW3C Recommendationhttps://www.w3.org/TR/ttml2/
IMSC 1.24 Aug 2020 (W3C Rec)W3C Timed Text WGTTML profile for subtitles/captions; broadcast mediaW3C Recommendation; IMSC Text 1.3 in CR-Snapshot (2025)https://www.w3.org/TR/ttml-imsc1.2/
TTML2 Dubbing & Audio Description Profiles2025 (updated CR)W3C Timed Text WGTTML2 profiles for dubbing scripts + audio descriptionCandidate Recommendationhttps://www.w3.org/TR/ttml-dapt/
SRT (SubRip)~2000SubRip author Zuggy (informal)Plain-text cue format; ubiquitous, no formal ownerDe facto standard; no formal spechttps://en.wikipedia.org/wiki/SubRip
CEA-608 / CEA-7081980 / 2000CEA (Consumer Electronics Association)TV-broadcast caption formats (line-21 / DTV)In force for US broadcast TV; mapped into TTML/IMSC for deliveryhttps://www.cta.tech/

Tier 3 family table — Platform / API

StandardFirst appearedOriginTypeStatus (2026)URL
Microsoft UI Automation (UIA)2005 (Vista)MicrosoftWindows accessibility tree + control patterns (Invoke, Toggle, Value, etc.)Active, primary Windows a11y API; MSAA/IAccessible/IAccessible2 are legacyhttps://learn.microsoft.com/en-us/windows/win32/winauto/entry-uiauto-win32
NSAccessibility (macOS)2002 (Mac OS X 10.2)AppleObjective-C / Swift protocols + attribute names (NSAccessibilityRoleAttribute etc.)Activehttps://developer.apple.com/documentation/appkit/nsaccessibility
AccessibilityServiceConfig (Android)2009 (Android 1.6)GoogleXML config + AccessibilityNodeInfo treeActive, primary Android a11y vocabularyhttps://developer.android.com/reference/android/accessibilityservice/AccessibilityService
AT-SPI 2 (Linux)2011GNOME / freedesktop.orgD-Bus accessibility API; Linux equivalent of UIA/NSAActivehttps://www.freedesktop.org/wiki/Accessibility/AT-SPI2/
MSAA / IAccessible / IAccessible21997 / 2007Microsoft / Linux FoundationLegacy Windows COM accessibility APIsLegacy, still in browsers as bridges; UIA preferredhttps://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/
CSS prefers-* media queries2017+W3C CSS Media Queries 5prefers-reduced-motion, prefers-contrast, prefers-color-scheme, prefers-reduced-transparencyActive, broadly supportedhttps://www.w3.org/TR/mediaqueries-5/

Tier 3 family table — Document a11y / publishing

StandardFirst appearedOriginTypeStatus (2026)URL
EPUB Accessibility 1.117 Oct 2024 (W3C Rec)W3C EPUB 3 WGConformance + discoverability spec for EPUB 3.3; accessibilityFeature / accessibilityHazard metadataW3C Recommendation; 1.1.1 in WD (Mar 2025)https://www.w3.org/TR/epub-a11y-11/
PDF/UA-1 (ISO 14289-1)July 2012ISOUniversal Accessibility profile for PDF (tagged PDF requirements)In force (2014 corrigendum); cross-listed in print-page-descriptionhttps://www.iso.org/standard/64599.html
PDF/UA-2 (ISO 14289-2)Dec 2024ISOUniversal Accessibility profile for PDF 2.0Published; rolling adoptionhttps://www.iso.org/standard/82278.html
DAISY (Digital Accessible Information SYstem)1996+DAISY ConsortiumXML-based accessible-book format; MathML + SMIL navigationActive but mostly superseded by EPUB-based DAISY since DAISY 4 / EPUB 3 alignmenthttps://daisy.org/
NIMAS (USA)2006US Dept. of EducationNational Instructional Materials Accessibility Standard; DAISY-derived XML for K-12 textbooksIn force in US K-12https://aem.cast.org/navigating/nimas-fileset-elements
Schema.org accessibility metadata2013+Schema.org (Google/Microsoft/Yahoo/Yandex)accessibilityAPI, accessibilityControl, accessibilityFeature, accessibilityHazard, accessibilitySummaryActive, used by EPUB + general web SEOhttps://schema.org/docs/accessibility-properties.html
MathML 4 + MathSpeak / NemethMathML 4 (Mar 2023 CR) / MathSpeak 2008 / Nemeth 1952W3C / Abraham NemethMath-speech rendering rule DSLs; consumed by JAWS, NVDA, MathPlayer, MathJaxActive; MathML 4 Candidate Rechttps://www.w3.org/TR/mathml4/

Notable threads

  • The two-grammar problem: expression vs conformance. Unlike most language families, accessibility has two intersecting DSLs that have to agree. The expression layer (ARIA roles + states, AOM, UIA patterns, NSAccessibility attributes) is what developers write to make widgets accessible; the conformance layer (WCAG 2.2 success-criterion IDs, S508 FPC1xx codes, EN 301 549 clause numbers, axe-core rule IDs) is what auditors, regulators, and litigators speak. The bridge between them is implicit mapping — every WCAG criterion implicitly assumes some ARIA/HTML expression, and every axe-core rule is a concrete computable check that one criterion is met. No single artefact captures the full mapping; each tool vendor ships its own crosswalk.

  • WCAG 2.1 → 2.2 → 3.0: a generational break is coming. WCAG 2.1 (June 2018) added 17 SCs covering mobile, low-vision, and cognitive. WCAG 2.2 (October 2023) added 9 more — most consequentially the target-size, dragging-movements, and focus-not-obscured criteria — and is now the published baseline. WCAG 3.0 is fundamentally different: as of the March 2026 working draft, it abandons the 2.x A/AA/AAA pass/fail model in favour of 174 requirements (renamed from “outcomes” in this draft) graded by rating scales, and explicitly intended to cover non-web ICT alongside web content. The 3.0 timeline is years out — the AG WG plans to publish a projected timeline by April 2026, but Rec status is not expected before late decade — so WCAG 2.2 will remain the operative legal anchor for a long time.

  • The testing-tool rule-ID fragmentation. axe-core, WAVE, Pa11y, Lighthouse, IBM Equal Access Accessibility Checker, Tenon, ARC Toolkit, and Microsoft Accessibility Insights all expose their own rule-ID taxonomies. They all target WCAG criteria but with different granularity (axe has ~100 rules; WAVE groups things differently; Lighthouse bundles axe-core but reports under its own audit IDs). The W3C ACT Rules community group is the standardisation effort to define vendor-neutral “Accessibility Conformance Testing” rules with stable IDs that vendors can claim conformance against; adoption is partial but growing. There is still no canonical single taxonomy and likely won’t be one.

  • Section 508 and EN 301 549: the WCAG-by-reference lattice. Revised Section 508 (USA, 2017 final rule) references WCAG 2.0 AA — not 2.1 or 2.2 — meaning federal procurement compliance in 2026 is still pegged to a 2008 standard. EN 301 549 v3.2.1 (Europe, March 2021), harmonised under the European Accessibility Act enforced 28 June 2025, references WCAG 2.1 AA. An EN 301 549 v4 update incorporating WCAG 2.2 is in progress. The pattern is consistent: national/regional law lags WCAG by one to two versions, because legal references to a Recommendation cannot float — they must point at a specific dated revision. This is why WCAG criterion IDs are so stable: changing them would break every legal reference downstream.

  • SSML and PLS: a 2010-era W3C duo that the AI-voice era still uses. SSML 1.1 (September 2010) and PLS 1.0 (October 2008) have not been revised, yet every commercial TTS engine — Amazon Polly, Google Cloud TTS, Azure Speech, IBM Watson, ReadSpeaker, and partially OpenAI / ElevenLabs — accepts SSML input. PLS (referenced via SSML’s <lexicon>) is what AWS Polly uses for custom-pronunciation lexicons. The reason no v2 has happened: the W3C Voice Browser WG closed in the mid-2010s, and vendor extensions (<amazon:effect>, <google:tts>, <mstts:express-as>) absorbed the demand for new features without breaking the core grammar. SSML is one of the cleanest examples of a “frozen but alive” web standard.

  • The caption-format zoo and its conversion industry. SRT (informal, ~2000, no owner) is ubiquitous because it’s plain text. WebVTT (W3C Candidate Recommendation) is the browser-native modern format. TTML2 (W3C Recommendation, November 2018) is the XML heavyweight used in broadcast workflows; IMSC 1.2 (W3C Recommendation, August 2020) is its profile for online subtitles and is what Netflix, Hulu, BBC, and most streaming platforms author against, with IMSC Text 1.3 in Candidate Recommendation Snapshot (2025) and TTML2 Dubbing/Audio-Description Profiles updated to CR in 2025. CEA-608/708 sit on the broadcast-television side. Conversion between these formats is a perennial pain because feature parity is incomplete (WebVTT has no nested styling like IMSC; IMSC’s region/region-style model has no SRT equivalent).

  • EPUB Accessibility 1.1 + Schema.org as the publisher’s API. EPUB Accessibility 1.1 became a W3C Recommendation on 17 October 2024. It defines the conformance criteria for EPUB 3.3 publications and — crucially — formalises the use of Schema.org accessibility metadata (accessibilityFeature, accessibilityHazard, accessibilityAPI, accessibilityControl, accessibilitySummary) as machine-readable declarations on the publication’s package document. Apple Books, Google Play Books, Kobo, and most retailer storefronts read these to filter “books that work with VoiceOver” or “books with no flashing hazards.” It is the model for how accessibility metadata should propagate through a distribution chain. EPUB Accessibility 1.1.1 (Working Draft, March 2025) is a maintenance update.

  • Platform a11y APIs as ARIA’s downstream consumers. Every browser’s accessibility-tree builder maps ARIA into a platform-specific vocabulary. Windows: Microsoft UIA (2005, Vista-era) with its control-pattern model (Invoke, Toggle, Value, Selection, ExpandCollapse, etc.) — UIA superseded MSAA / IAccessible / IAccessible2 but those still exist as bridges. macOS: NSAccessibility’s protocol + attribute strings. Linux: AT-SPI 2 over D-Bus. Android: AccessibilityServiceConfig + AccessibilityNodeInfo. iOS: UIAccessibility protocol + traits. The HTML-AAM and Core-AAM specs at W3C document these mappings explicitly; they are why writing role="button" in HTML produces a ControlType.Button in UIA, an AXButton role in NSAccessibility, and the equivalent on Android — without that mapping spec, ARIA would be useless.

Citations