WAI-ARIA (Web Accessibility Initiative — Accessible Rich Internet Applications)
WAI-ARIA is the W3C Recommendation defining attributes (`role`, `aria-label`, `aria-expanded`, etc) that describe the structure and state of UI components for assistive technology. The current version is WAI-ARIA 1.2 (2023).
Detailed explanation
WAI-ARIA fills gaps in native HTML semantics. When a custom UI control like a tab panel, modal dialog, or autocomplete combobox cannot be fully expressed with built-in HTML elements, ARIA attributes describe the role, state, and properties so screen readers announce the control correctly.
The first rule of ARIA is "do not use ARIA when a native HTML element would do" — `<button>` brings keyboard handling, focus management, and assistive-tech support automatically; `<div role="button">` requires manual implementation of all of those.
Common attributes: `role="button"` redefines an element as a button, `aria-label` provides an accessible name, `aria-expanded="true|false"` describes whether a disclosure is open, `aria-current="page"` marks the current item in a navigation list, `aria-live="polite"` announces dynamic content updates.
How this applies to Shopify stores
Shopify themes ship with custom dropdowns, mega-menus, cart drawers, and product accordions that all need correct ARIA. AccessComply detects missing roles, states, and properties and writes the fixes directly into Liquid templates with full keyboard interaction handlers.
Primary source: w3.org