Introduction
AriaML is a markup evolution designed to separate semantics, appearance, and behavior while prioritizing native accessibility and browser-mediated privacy.
AriaML is an accessibility-first and JS-unobtrusive evolution of HTML. This format offers a cleaner structure by decoupling semantics from appearance.
Furthermore, it introduces an additional declarative layer to describe DOM element behaviors. By assigning relations and events through a syntax similar to CSS—the Behavior Sheets—interactivity becomes purely declarative. Finally, it enhances the user experience by delegating consent management to the browser.
Philosophy
- Integrator-led Accessibility: How elements are exposed to assistive technologies, keyboard interactions, and structural relationships should be adaptable and correctable by non-developers.
- Browser-level Consent: Handling JS execution, the
pingattribute, or external data flows (analytics, targeted ads) is the browser's responsibility. The browser can resolve the document's intents silently if some user preferences are already set. - Self-storing State: Much like a spreadsheet, when a user interacts with a form, they should be able to add/remove list items, modify values, and save the document to return to it later. The document is not just a bridge to a server but a storage medium in its own right.
- No-code Interactions: It should require neither JavaScript nor any other programming language to provide fundamental interactions (e.g., accordions, disclosures, menus, tabs, switches, toolbars, etc., as defined by W3C APG Patterns).