The catalog
Every dimension the CAI measures.
The standard is composed of 124 dimensions across 10 lenses. Each is a definition — what it measures and how it's evaluated — pinned to a rubric version. This catalog is the standard's vocabulary; the spec documents how each folds into the score.
Showing only the Accessibility lens. Show all 124 dimensions →
Accessibility · 10 dimensions
| ID | Dimension | What it measures | Why it matters | Evaluator |
|---|---|---|---|---|
AC1 |
Text alternativesmeta | Whether non-text content carries a text alternative — img/area/input[type=image] have alt, a meaningful svg has a title or aria-label, video has a captions track, and object/embed/canvas have a name or fallback content. Static markup readiness, not a WCAG conformance claim. | tool | |
AC2 |
Forms & labelsmeta | Whether form controls have a programmatic label (an associated label, aria-label or aria-labelledby), buttons have text, links have an accessible name, fieldsets have a non-empty legend, known UI-library field components carry a label prop, and a placeholder isn't used as the only label. Static markup readiness, not a WCAG conformance claim. | tool | |
AC3 |
Page structuremeta | Whether pages declare a language (well-formed BCP-47) and a non-empty title, expose exactly one main landmark and a sane heading order with non-empty headings, keep zoom enabled, title their iframes, give data tables header cells, and avoid meta-refresh. Static markup readiness, not a WCAG conformance claim. | tool | |
AC4 |
Keyboard semanticsmeta | Whether interactive behaviour is keyboard-reachable — no click handler on a non-interactive element lacking a role, tabindex and key handler, no positive tabindex, no href-less anchor, no placeholder-href (#/javascript) link acting as a button. Static markup readiness, not a WCAG conformance claim. | tool | |
AC5 |
ARIA correctnessmeta | Whether ARIA is used correctly — valid non-abstract roles, the ARIA state a role requires, valid (non-misspelled) aria-* attribute names, in-enum values for token-typed aria-* attributes, and no aria-hidden on (or wrapping) a focusable element. Static markup readiness, not a WCAG conformance claim. | tool | |
AC6 |
Visual & motion safetymeta | Whether focus outlines aren't removed without a replacement, motion respects prefers-reduced-motion, and literal CSS colour pairs meet contrast — PARTIAL: inline styles, in-repo <style> blocks, in-repo .css files, var() tokens, Tailwind neutral utilities and CSS-in-JS literals are read (hex/rgb/hsl/named), never computed/runtime/external-CDN colour. Static markup readiness, not a WCAG conformance claim. | tool | |
AC7 |
A11y enforcementmeta | Whether accessibility is ENFORCED in the toolchain — an a11y linter (eslint-plugin-jsx-a11y / vuejs-accessibility) configured, and axe/pa11y/Lighthouse wired into tests or CI — on the Documented→Verified→Prevented ladder. | tool | |
LA2 |
Alt-Text Quality (WCAG 1.1.1)meta | LLM-judged quality of image alt text — whether each alt is a meaningful equivalent rather than a filename, generic word or placeholder. Advisory; complements the deterministic 'alt present?' check. | When this is weak, images carry alt text that isn't a meaningful equivalent — filenames or generic words — so screen-reader users don't get the information the image conveys (WCAG 1.1.1), as judged by AI. | LLM · advisory |
LA5 |
Link & Button Text Quality (WCAG 2.4.4)meta | LLM-judged descriptiveness of link/button text — whether each conveys its purpose out of context rather than a vague 'click here'/'read more'. Advisory; complements the deterministic 'has a name?' check. | LLM · advisory | |
LA6 |
Heading & Label Text Quality (WCAG 2.4.6)meta | LLM-judged descriptiveness of heading/label text — whether each meaningfully describes its section or field rather than a placeholder ('Heading', 'Untitled', 'Label'). Advisory. | LLM · advisory |
No dimensions match that filter.