This specification provides web content authors a standard approach to support web users who are persons with various cognitive and learning disabilities, including users who:

The technology described in this specification is intended to be used to programmatically transform the appearance of typical web content including form controls, icons, and other user interface elements into a rendering more familiar and comprehensible to an individual user. Use cases and relevant vocabulary terms are defined which allow user agents to augment or adapt content to better fit a particular user's particular needs. This helps users with varying needs to understand web content more readily, by simplifying the web interaction, or by avoiding forcing the user to grapple with unfamiliar representations they are ill equipped to comprehend.

This WAI-Adapt: Tools Module is a component of the WAI-Adapt series introduced in the WAI-Adapt Explainer document [[personalization-semantics-1.0]].



This specification module enables authors to add semantic information about content at the element level, in order to indicate the priority level of a message for the individual user, or programmatically enumerate tasks that the user is required to complete, so that users who have memory issues can keep track of the steps previously completed. It is anticipated that multiple screen renderings (transformations) will be supported in order to meet the differing needs of different users. Final renderings — generated via helper apps or 3rd-party tools — will be ultimately defined by the user's configuration settings.

This document lists examples of the personalized tools properties, an extension of WAI-Adapt Explainer, including the properties of messageimportance, messagefrom, messagecontext, messagetime, and stepindicator.

WAI-Adapt: Tools Module

WAI-Adapt: Tools Module is the third and final part of the WAI-Adapt technical specification, which provides WAI-Adapt semantics and vocabularies that can be used to mark-up web content with additional semantic information, enabling user agents to augment or adapt content to various user-scenarios based on the user’s personalization settings or preferences. The Tools Module enhances web content by providing additional information about message importance (for filtering), and tracking multi-step activities. User agents can use these semantics to augment or adapt content to the user’s scenario — for example allowing for the prioritization or filtering of on-screen messages. This helps users with varying needs to filter content by providing support for managing distractions.

Vocabulary Structure and Implementations

All the vocabulary in WAI-Adapt: Symbols Module is constructed of properties and their values. Please see our WAI-Adapt Explainer.

The vocabulary implementations included in this document are available at our implementations wiki page.


Properties are the main units of WAI-Adapt types supported by the vocabulary. A given property supports a specific type of WAI-Adapt. That property would only be used once on a given piece of content, but multiple different properties could be used on the same piece of content to address different needs.


Values provide the specific personalization information for the property. The possible values for each property are elaborated in the definition of the property in the modules. Some properties require the value to come from a predefined list of possible values, others can accept arbitrary strings, and some may accept multiple values. The attribute value may be one of the following types:

ID reference
Reference to the ID of another element in the same document
ID reference list
A list of one or more ID references.
A numerical value without a fractional component.
Any real numerical value.
Unconstrained value type.
One of a limited set of allowed values.
token list
A list of one or more tokens.
A Uniform Resource Identifier as defined by RFC 3986 [RFC3986] It may reference a separate document, or a content fragment identifier in a separate document, or a content fragment identifier within the same document.

Note that the attributes and values in this specification do not overide the semantics exposed in the accessibility tree, but rather augment them. In the case of conflict between an element's semantics and the attribute values, validation algorithms should issue a warning but not an error.

Since implementations have not yet been finalized, any examples in this document are illustrative only, and are provided to help in understanding the concept. All examples will be updated once implementation examples are finalized.

Use Cases and Requirements

The Requirements for Personalization Semantics describes use cases and requirements. This module provides properties to fulfill requirements related to user support tools.


This document uses a number of specific terms related to various cognitive disabilities and related user-needs. Those terms have been defined by the Cognitive and Learning Disabilities Accessibility Task Force. See the COGA Glossary for specific definitions.


Privacy and Security Considerations

This specification adds context information about content to the document, and should not affect security.

Although this specification does not expose personal preferences and personal information, third party user agents or proxy server(s) acting upon our semantic information may need to store personal preferences on how to present content to a specific user. It is recommended that any user agent or proxy server implements best practices to protect all personal preferences and personal information.

Any user agent with user settings are recommended to follow best practices to keep user information secure.

Acknowledgements placeholder