: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
* Interface with constants for the different types of accessibility roles.
* @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques
* @package ampproject/amp-toolbox
* A message with an alert or error information.
* A separate window with an alert or error information.
const ALERTDIALOG = 'alertdialog';
* A software unit executing a set of tasks for its users.
const APPLICATION = 'application';
* A section of a page that could easily stand on its own on a page, in a document, or on a website.
const ARTICLE = 'article';
* A region that contains mostly site-oriented content, rather than page-specific content.
* Allows for user-triggered actions.
* An element as being a cell in a tabular container that does not contain column or row header information.
* A control that has three possible values, (true, false, mixed).
const CHECKBOX = 'checkbox';
* A table cell containing header information for a column.
const COLUMNHEADER = 'columnheader';
* Combobox is a presentation of a select, where users can type to locate a selected item.
const COMBOBOX = 'combobox';
* A supporting section of the document, designed to be complementary to the main content at a similar level in the
* DOM hierarchy, but remains meaningful when separated from the main content.
const COMPLEMENTARY = 'complementary';
* A large perceivable region that contains information about the parent document.
const CONTENTINFO = 'contentinfo';
* A definition of a term or concept.
const DEFINITION = 'definition';
* Descriptive content for a page element which references this element via describedby.
const DESCRIPTION = 'description';
* A dialog is a small application window that sits above the application and is designed to interrupt the current
* processing of an application in order to prompt the user to enter information or require a response.
* A list of references to members of a single group.
const DIRECTORY = 'directory';
* Content that contains related information, such as a book.
const DOCUMENT = 'document';
* A scrollable list of articles where scrolling may cause articles to be added to or removed from either end of the
* A figure inside page content where appropriate semantics do not already exist.
* A landmark region that contains a collection of items and objects that, as a whole, combine to create a form.
* A grid contains cells of tabular data arranged in rows and columns (e.g., a table).
* A gridcell is a table cell in a grid. Gridcells may be active, editable, and selectable. Cells may have
* relationships such as controls to address the application of functional relationships.
const GRIDCELL = 'gridcell';
* A group is a section of user interface objects which would not be included in a page summary or table of contents
* by an assistive technology. See region for sections of user interface objects that should be included in a page
* summary or table of contents.
* A heading for a section of the page.
const HEADING = 'heading';
* An img is a container for a collection elements that form an image.
* Interactive reference to a resource (note, that in XHTML 2.0 any element can have an href attribute and thus be a
* Group of non-interactive list items. Lists contain children whose role is listitem.
* Uses an underscore as "list" is a conflicting PHP keyword.
* A list box is a widget that allows the user to select one or more items from a list. Items within the list are
* static and may contain images. List boxes contain children whose role is option.
const LISTBOX = 'listbox';
* A single item in a list.
const LISTITEM = 'listitem';
* A region where new information is added and old information may disappear such as chat logs, messaging, game log
* or an error log. In contrast to other regions, in this role there is a relationship between the arrival of new
* items in the log and the reading order. The log contains a meaningful sequence and new information is added only
* to the end of the log, not at arbitrary points.
* The main content of a document.
* A marquee is used to scroll text across the page.
const MARQUEE = 'marquee';
* Content that represents a mathematical expression.
* Offers a list of choices to the user.
* A menubar is a container of menu items. Each menu item may activate a new sub-menu. Navigation behavior should be
* similar to the typical menu bar graphical user interface.
const MENUBAR = 'menubar';
* A link in a menu. This is an option in a group of choices contained in a menu.
const MENUITEM = 'menuitem';
* Defines a menuitem which is checkable (tri-state).
const MENUITEMCHECKBOX = 'menuitemcheckbox';
* Indicates a menu item which is part of a group of menuitemradio roles.
const MENUITEMRADIO = 'menuitemradio';
* A collection of navigational elements (usually links) for navigating the document or related documents.
const NAVIGATION = 'navigation';
* An element whose implicit native role semantics will not be mapped to the accessibility API.
* A section whose content is parenthetic or ancillary to the main content of the resource.
* A selectable item in a list represented by a select.
* An element whose role is presentational does not need to be mapped to the accessibility API.
const PRESENTATION = 'presentation';
* Used by applications for tasks that take a long time to execute, to show the execution progress.
const PROGRESSBAR = 'progressbar';
* A radio is an option in single-select list. Only one radio control in a radiogroup can be selected at the same
* A group of radio controls.
const RADIOGROUP = 'radiogroup';
* Region is a large perceivable section on the web page.
* A structure containing one or more row elements in a tabular container.
const ROWGROUP = 'rowgroup';
* A table cell containing header information for a row.
const ROWHEADER = 'rowheader';
* Scroll bar to navigate the horizontal or vertical dimensions of the page.
const SCROLLBAR = 'scrollbar';
* A section of the page used to search the page, site, or collection of sites.
* An entry field to provide a query to search for.
const SEARCHBOX = 'searchbox';
* A line or bar that separates and distinguishes sections of content.
const SEPARATOR = 'separator';
* A user input where the user selects an input in a given range. This form of range expects an analog keyboard
* A form of Range that expects a user selecting from discrete choices.
const SPINBUTTON = 'spinbutton';
* This is a container for process advisory information to give feedback to the user.
* Functionally identical to a checkbox but represents the states "on"/"off" instead of "checked"/"unchecked".
* Uses an underscore as "list" is a conflicting PHP keyword.
const SWITCH_ = 'switch';
* A header for a tabpanel.
* A non-interactive table structure containing data arranged in rows and columns.
* A list of tabs, which are references to tabpanels.
const TABLIST = 'tablist';
* Tabpanel is a container for the resources associated with a tab.
const TABPANEL = 'tabpanel';
* A word or phrase with a corresponding definition.
* Inputs that allow free-form text as their value.
const TEXTBOX = 'textbox';
* A numerical counter which indicates an amount of elapsed time from a start point, or the time remaining until an
* A toolbar is a collection of commonly used functions represented in compact visual form.
const TOOLBAR = 'toolbar';
* A popup that displays a description for an element when a user passes over or rests on that element. Supplement
* to the normal tooltip processing of the user agent.