Action Semantics for Agents: Protecting ARIA and Marking Risk in HTML
- Upcoming
- Tentative
- Breakout Sessions
At last year's TPAC breakout on Semantics for the Agentic Web, we asked whether the web needs a semantic layer for AI agents alongside ARIA for assistive technologies. Since then, that question has turned into a real problem on live sites. Several browser agents now tell web developers to add aria-label and aria-description attributes to buttons, links, and inputs so agents can tell what a page does. Because ARIA overrides visible text and feeds straight into screen readers, stuffing prompts and agent instructions into accessibility attributes breaks the experience for screen reader users.
At the same time, browser engines and web developers are debating how much of the agentic web should rely on existing HTML "as it is spoken" versus new declarative markup or imperative tool APIs like WebMCP. Many web interactions are simple, stateless actions where writing a JavaScript tool handler is overkill, but standard HTML and existing structured data don't always make it obvious what a control does or whether an agent is safe to trigger it.
Alongside related sessions on AI-friendly webpages, declarative and imperative solutions, and extending WebMCP, this session gets the accessibility, HTML, structured data, and WebML communities in the same room to talk through concrete markup trade-offs:
- Keeping ARIA for accessibility: Why are agent builders telling developers to overload
aria-labelwhen semantic HTML elements and forms already exist? Can better browser heuristics on standard HTML solve this, or do developers need a simple way to describe controls for agents without breaking screen readers? - Standard HTML and Schema.org vs. new attributes vs. imperative tools: For everyday page actions like search, filtering, and cart updates, how far can standard HTML forms, Schema.org Microdata, and JSON-LD get us? Where is the clean handoff between declarative markup in the DOM and registering JavaScript tools via
navigator.modelContext.registerTool? - Safety hints and human-only controls: Should HTML have a declarative way to mark the risk of an action, like separating read-only navigation from actions that change state, spend money, or always require a human click? And since careless or malicious sites can mislabel controls, how should browsers and agents treat safety hints from a site?
- Working with existing browser signals: How should agent semantics fit with features browsers already have, like form autofill, password managers, and login status APIs, so developers don't have to describe the same flow three times?
Goal(s):
Work out how far standard HTML and existing structured data can go for everyday agent actions, how to keep agent instructions out of ARIA, and where declarative HTML hands off to imperative APIs like WebMCP.
– Greenwich Mean Time
Location: Second Floor - Room 05
Proposers: Chris Harrelson, Johann Hofmann, Penelope McLachlan