1.2.1 Audio-only and Video-only (Prerecorded) [A]
For prerecorded audio-only or video-only media, an alternative provides equivalent information.
media_audio_transcribed : Audio information should also be available in text form
i
Recommendation —
Provide transcripts for audio files
1.3.1 Info and Relationships [A]
Information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text.
input_checkboxes_grouped : Related sets of radio buttons or checkboxes should be programmatically grouped
Violation —
{0} input found that has the same name, "{2}" as a {1} input
Violation —
{0} input is not in the group with another {0} with the name "{1}"
Violation —
{0} input and others with the name "{1}" are not grouped together
Violation —
{0} input is in a different group than another {0} with the name "{1}"
Needs review —
Verify that this ungrouped checkbox input is not related to other checkboxes
Needs review —
Verify that this un-named, ungrouped checkbox input is not related to other checkboxes
table_headers_ref_valid : The 'headers' attribute should refer to a valid cell in the same table
Violation —
The 'headers' attribute value "{0}" does not reference a valid 'id' in this document
Violation —
The 'headers' attribute value "{0}" refers to itself
Violation —
The 'headers' attribute value "{0}" does not refer to a cell in the same table
Violation —
The 'headers' attribute value "{0}" does not refer to a cell indicated with <th> or a role of "columnheader" or "rowheader"
fieldset_label_valid : Groups with nested inputs must have unique accessible name
Violation —
Group/Fieldset does not have an accessible name
Violation —
Group/Fieldset "{0}" has a duplicate name to another group
table_scope_valid : Value for 'scope' attribute must be "row", "col", "rowgroup", or "colgroup"
Violation —
Value provided is invalid for the 'scope' attribute
Violation —
The 'scope' attribute should only be used on a <th> element
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_parent_required : Each element with an implicit or explicit role must be contained within a valid element
Violation —
Element with "{0}" role is not contained in or owned by an element with one of the following roles: "{1}"
form_label_unique : Form controls should have exactly one label
Violation —
Form control has more than one label
label_ref_valid : The 'for' attribute for a label should reference a non-empty, unique 'id' attribute of a valid element
Violation —
The value "{0}" of the 'for' attribute is not the 'id' of a valid element
table_caption_empty : A <caption> element for a <table> element must contain descriptive text
Violation —
The <table> element has an empty <caption> element
table_caption_nested : The <caption> element must be nested inside the associated <table> element
Violation —
<caption> element is not nested inside a <table> element
table_headers_exists : Data table must identify headers
Violation —
Table has no headers identified
table_headers_related : For a complex data table, all <th> and <td> elements must be related via 'header' or 'scope' attributes
Violation —
Complex table does not have headers for each cell properly defined with 'header' or 'scope'
table_structure_misuse : Table elements with 'role="presentation" or 'role="none" should not have structural elements or attributes
Violation —
The <{0}> element with "presentation" role or "none" role has structural element(s) and/or attribute(s) '{1}'
table_summary_redundant : The table summary must not duplicate the caption
Violation —
The table summary duplicates the caption
blockquote_cite_exists : Use <blockquote> only for quotations, not indentation
Needs review —
Verify that <blockquote> should have a 'cite' attribute and not be used for indentation only
heading_markup_misuse : Heading elements must not be used for presentation
Needs review —
Verify that the heading element is a genuine heading
list_markup_review : Proper HTML elements should be used to create a list
Needs review —
Verify this is a list and if so, modify to use proper HTML elements for the list
text_block_heading : Heading text should use a heading element or role
Needs review —
Confirm this text '{0}' is used as a heading and if so, modify to use a heading element or role
text_quoted_correctly : Quotations should be marked with <q> or <blockquote> elements
Needs review —
If the following text is a quotation, mark it as a <q> or <blockquote> element: {0}
fieldset_legend_valid : <fieldset> elements should have a single, non-empty <legend> as a label
i
Recommendation —
<fieldset> element does not have a <legend>
i
Recommendation —
<fieldset> element has more than one <legend>
i
Recommendation —
<fieldset> element <legend> is empty
aria_child_valid : An element with an ARIA role must own a required child
i
Recommendation —
The element with role "{0}" does not own any child element with any of the following role(s): "{1}"
i
Recommendation —
The element with role "{0}" owns the child element with the role "{1}" that is not one of the allowed role(s): "{2}"
input_fields_grouped : Groups of logically related input elements should be contained within a <fieldset> element
i
Recommendation —
Use the <fieldset> element to group logically related input elements
list_structure_proper : List elements should only be used for lists of related items
i
Recommendation —
List element is missing or improperly structured
select_options_grouped : Groups of related options within a selection list should be grouped with <optgroup>
i
Recommendation —
Group of related options may need <optgroup>
table_layout_linearized : Avoid using tables to format text documents in columns unless the table can be linearized
i
Recommendation —
Verify table is not being used to format text content in columns unless the table can be linearized
1.4.5 Images of Text [AA]
If the technologies being used can achieve the visual presentation, text should not be used to convey information rather than images of text.
2.1.2 No Keyboard Trap [A]
If keyboard focus can be moved to a component using a keyboard interface, then focus can be moved away from that component using only a keyboard interface, and, if it requires more than unmodified arrow or tab keys or other standard exit methods, the user is advised of the method for moving focus away.
download_keyboard_controllable : File download mechanisms should be keyboard-operable and preserve page focus location
i
Recommendation —
Verify that the file download mechanism does not cause a keyboard trap
2.1.4 Character Key Shortcuts [A]
If a keyboard shortcut is implemented using only letter, punctuation, number or symbol characters, then the shortcut can be turned off, remapped or activated only on focus.
2.3.1 Three Flashes or Below Threshold [A]
Content does not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds.
2.4.3 Focus Order [A]
If content can be navigated sequentially and the navigation sequences affect meaning or operation, focusable components receive focus in an order that preserves meaning and operability.
widget_tabbable_single : Components with a widget role must have no more than one tabbable element
Needs review —
Component with "{0}" role has more than one tabbable element
2.4.5 Multiple Ways [AA]
More than one way is available to locate a Web page within a set of Web pages, except where the Web Page is the result of, or a step in, a process.
2.4.6 Headings and Labels [AA]
Headings and labels describe topic or purpose.
heading_content_exists : Heading elements must provide descriptive text
i
Recommendation —
Heading element has no descriptive content
2.5.1 Pointer Gestures [A]
All functionality that uses multipoint or path-based gestures for operation can be operated with a single pointer without a path-based gesture.
2.5.2 Pointer Cancellation [A]
For functionality that can be operated using a single pointer, completion of the function is on the up-event with an ability to abort, undo or reverse the outcome.
2.5.4 Motion Actuation [A]
Functionality that can be operated by motion can also be operated by user interface components, and the motion trigger can be disabled.
3.2.3 Consistent Navigation [AA]
Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user.
3.2.4 Consistent Identification [AA]
Components that have the same functionality within a set of Web pages are identified consistently.
3.2.6 Consistent Help [AA]
Make it easier to find help and support. If a Web page contains help mechanisms they occur in the same order relative to other page content, unless a change is initiated by the user.
3.3.3 Error Suggestion [AA]
If an input error is automatically detected and suggestions for correction are known, then the suggestions are provided to the user, unless it would jeopardize the security or purpose of the content.
3.3.4 Error Prevention (Legal, Financial, Data) [AA]
For content that cause legal commitments or financial transactions for the user to occur, that modify or delete user-controllable data in data storage systems, or that submit user test responses, the user can reverse, correct, or confirm the action.
3.3.7 Redundant Entry [AA]
Make it easier for users to complete multi-step processes. Don't ask for the same information twice in the same session.
3.3.8 Accessible Authentication (Minimum) [AA]
Make logins possible with less mental effort. Don't make people solve, recall, or transcribe something to log in.
4.1.1 Parsing [A]
(Obsolete and removed) This requirement was originally adopted to address problems that assistive technology (AT) had directly parsing HTML. AT no longer has any need to directly parse HTML. Consequently, these problems either no longer exist or are addressed by other requirements.
4.1.2 Name, Role, Value [A]
For all user interface components (including, but not limited to: form elements, links and components generated by scripts), the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to user agents, including assistive technologies.
combobox_popup_reference : The 'aria-controls' (for ARIA 1.2) or the 'aria-owns' (for ARIA 1.0) attribute of the expanded combobox must reference a valid popup 'id' value
Violation —
The 'aria-owns' attribute of the expanded combobox is missing
Violation —
The 'aria-controls' attribute of the expanded combobox is missing
Violation —
The 'aria-owns' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The 'aria-controls' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The combobox 'aria-expanded' attribute is true, but the combobox popup is not visible
Violation —
The combobox 'aria-expanded' attribute is false, but the combobox popup is visible
aria_activedescendant_valid : The 'aria-activedescendant' property must reference the 'id' of a non-empty, non-hidden active child element
Violation —
The 'aria-activedescendant' property is empty
Violation —
The 'aria-activedescendant' property references a hidden node
Violation —
Element is not a combobox, and the referenced active-descendant element is not a valid descendant
combobox_active_descendant : 'aria-activedescendant' must be used to define focus within the combobox popup, except when using a dialog popup
Violation —
The element referenced by 'aria-activedescendant' "{0}" does not exist
Violation —
The 'aria-activedescendant' "{0}" references an element with the roles "{1}", which does not have a valid ARIA role of 'option', 'gridcell', 'row', or 'treeitem'
Violation —
The 'aria-activedescendant' "{0}" references an element that does not have 'aria-selected' set to true
input_haspopup_conflict : <input> element with a 'list' attribute should not use an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with type "{0}" and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with a missing or invalid type and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The list attribute for the <input> element is invalid
Violation —
The list attribute for the <input> element with the type "{0}" is invalid
Violation —
The list attribute for the <input> element does not reference a datalist element
aria_role_valid : ARIA roles must be valid for the element to which they are assigned
Violation —
The ARIA role '{0}' is not valid for the element <{1}>
Violation —
The ARIA role '{0}' is not valid for the element <{1}> and may be ignored by the browser since the element is focusable
combobox_autocomplete_valid : A combobox that supports autocompletion behavior must have the 'aria-autocomplete' attribute only on its text input element with a valid value; a value of '"inline"' is not supported
Violation —
The combobox has the 'aria-autocomplete' attribute incorrectly set on an element within the popup referenced by "{0}"
Violation —
The combobox does not support an 'aria-autocomplete' attribute value set to '"inline"'
combobox_focusable_elements : Tabbable focus for the combobox must be allowed only on the text input, except when using a dialog popup
Violation —
The combobox element does not allow DOM focus as required
Violation —
The popup of the combobox has DOM focus or has 'aria-activedescendant' defined, which is not allowed
combobox_haspopup_valid : The combobox attribute 'aria-haspopup' value must be appropriate for the role of the element referenced by 'aria-controls' (ARIA 1.2) or 'aria-owns' (ARIA 1.0)
Violation —
The 'role' value "{0}" of the popup element "{1}" should be one of "listbox", "grid", "tree" or "dialog"
Violation —
The value of the combobox 'aria-haspopup' attribute "{0}" does not match the 'role' value of the popup element "{1}"
element_tabbable_role_valid : A tabbable element must have a valid widget role
Violation —
The tabbable element's role '{0}' is not a widget role
Violation —
The tabbable element does not have a valid widget role
input_label_exists : Each form control must have an associated label
Violation —
Form control element <{0}> has no associated label
Violation —
Form control with "{0}" role has no associated label
aria_descendant_valid : Browsers ignore the explicit and implicit ARIA roles of the descendants of certain elements
Needs review —
The element with role "{0}" contains descendants with implicit roles "{1}" which are ignored by browsers
Violation —
The element with role "{0}" contains descendants with roles "{1}" which are ignored by browsers
aria_role_allowed : Elements must have a valid 'role' per ARIA specification
Violation —
The role '{0}' defined on the element is not valid per ARIA specification
Needs review —
Some of the roles, '{0}', defined on the element are not valid per ARIA specification
a_text_purpose : Hyperlinks must have an accessible name for their purpose
Violation —
Hyperlink has no link text, label or image with a text alternative
aria_attribute_allowed : ARIA attributes must be valid for the element's role
Violation —
The attribute(s) '{0}' referenced by the element <{1}> is not a valid ARIA state or property
aria_attribute_conflict : An ARIA attribute must not conflict with the corresponding HTML attribute
Violation —
The ARIA attribute "{0}" is in conflict with the corresponding HTML attribute "{1}"
aria_attribute_exists : When specifying a required ARIA attribute, the value must not be empty
Violation —
The element attribute(s): '{0}' value is empty
aria_attribute_required : The required attributes for the element with a role must be defined
Violation —
Element with '{0}' role does not have the required ARIA attribute(s): '{1}'
aria_attribute_value_valid : ARIA property values must be valid
Violation —
The value "{0}" specified for attribute '{1}' on element <{2}> is not valid
aria_eventhandler_role_valid : Elements with event handlers must have a valid ARIA role
Violation —
The <{0}> element with '{1}' does not have a valid ARIA role specified
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_id_unique : The ARIA property must reference a non-empty unique id of an existing element that is visible
Violation —
The 'id' "{0}" specified for the ARIA property '{1}' value is not valid
aria_widget_labelled : Interactive component must have a programmatically associated name
Violation —
Interactive component with ARIA role '{0}' does not have a programmatically associated name
combobox_design_valid : The combobox design pattern must be valid for ARIA 1.2
Violation —
The combobox design pattern is detected as ARIA 1.1, which is not allowed by ARIA 1.2
frame_title_exists : Inline frames must have a unique, non-empty 'title' attribute
Violation —
Inline frame does not have a 'title' attribute
label_content_exists : A <label> element must have non-empty descriptive text that identifies the purpose of the interactive component
Violation —
The <label> element does not have descriptive text that identifies the expected input
list_children_valid : List component with "group" role must limit children to <listitem> elements
Violation —
List component with "group" role has children that are not <listitem> elements
table_aria_descendants : Table structure elements cannot specify an explicit 'role' within table containers
Violation —
An explicit ARIA 'role' is not valid for <{0}> element within an ARIA role '{1}' per the ARIA in HTML specification
aria_accessiblename_exists : Elements with certain roles should have accessible names
i
Recommendation —
Element <{0}> with "{1}" role has no accessible name
aria_attribute_redundant : An ARIA attribute should not be redundant with a corresponding HTML attribute
i
Recommendation —
The ARIA attribute "{0}" is redundant with the HTML attribute "{1}"
canvas_content_described : The <canvas> element may not be accessible
i
Recommendation —
Verify accessibility of the <canvas> element
4.1.3 Status Messages [AA]
In content implemented using markup languages, status messages can be programmatically determined through role or properties such that they can be presented to the user by assistive technologies without receiving focus.
1.2.1 Audio-only and Video-only (Prerecorded) [A]
For prerecorded audio-only or video-only media, an alternative provides equivalent information.
media_audio_transcribed : Audio information should also be available in text form
i
Recommendation —
Provide transcripts for audio files
1.3.1 Info and Relationships [A]
Information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text.
input_checkboxes_grouped : Related sets of radio buttons or checkboxes should be programmatically grouped
Violation —
{0} input found that has the same name, "{2}" as a {1} input
Violation —
{0} input is not in the group with another {0} with the name "{1}"
Violation —
{0} input and others with the name "{1}" are not grouped together
Violation —
{0} input is in a different group than another {0} with the name "{1}"
Needs review —
Verify that this ungrouped checkbox input is not related to other checkboxes
Needs review —
Verify that this un-named, ungrouped checkbox input is not related to other checkboxes
table_headers_ref_valid : The 'headers' attribute should refer to a valid cell in the same table
Violation —
The 'headers' attribute value "{0}" does not reference a valid 'id' in this document
Violation —
The 'headers' attribute value "{0}" refers to itself
Violation —
The 'headers' attribute value "{0}" does not refer to a cell in the same table
Violation —
The 'headers' attribute value "{0}" does not refer to a cell indicated with <th> or a role of "columnheader" or "rowheader"
fieldset_label_valid : Groups with nested inputs must have unique accessible name
Violation —
Group/Fieldset does not have an accessible name
Violation —
Group/Fieldset "{0}" has a duplicate name to another group
table_scope_valid : Value for 'scope' attribute must be "row", "col", "rowgroup", or "colgroup"
Violation —
Value provided is invalid for the 'scope' attribute
Violation —
The 'scope' attribute should only be used on a <th> element
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_parent_required : Each element with an implicit or explicit role must be contained within a valid element
Violation —
Element with "{0}" role is not contained in or owned by an element with one of the following roles: "{1}"
form_label_unique : Form controls should have exactly one label
Violation —
Form control has more than one label
label_ref_valid : The 'for' attribute for a label should reference a non-empty, unique 'id' attribute of a valid element
Violation —
The value "{0}" of the 'for' attribute is not the 'id' of a valid element
table_caption_empty : A <caption> element for a <table> element must contain descriptive text
Violation —
The <table> element has an empty <caption> element
table_caption_nested : The <caption> element must be nested inside the associated <table> element
Violation —
<caption> element is not nested inside a <table> element
table_headers_exists : Data table must identify headers
Violation —
Table has no headers identified
table_headers_related : For a complex data table, all <th> and <td> elements must be related via 'header' or 'scope' attributes
Violation —
Complex table does not have headers for each cell properly defined with 'header' or 'scope'
table_structure_misuse : Table elements with 'role="presentation" or 'role="none" should not have structural elements or attributes
Violation —
The <{0}> element with "presentation" role or "none" role has structural element(s) and/or attribute(s) '{1}'
table_summary_redundant : The table summary must not duplicate the caption
Violation —
The table summary duplicates the caption
blockquote_cite_exists : Use <blockquote> only for quotations, not indentation
Needs review —
Verify that <blockquote> should have a 'cite' attribute and not be used for indentation only
heading_markup_misuse : Heading elements must not be used for presentation
Needs review —
Verify that the heading element is a genuine heading
list_markup_review : Proper HTML elements should be used to create a list
Needs review —
Verify this is a list and if so, modify to use proper HTML elements for the list
text_block_heading : Heading text should use a heading element or role
Needs review —
Confirm this text '{0}' is used as a heading and if so, modify to use a heading element or role
text_quoted_correctly : Quotations should be marked with <q> or <blockquote> elements
Needs review —
If the following text is a quotation, mark it as a <q> or <blockquote> element: {0}
fieldset_legend_valid : <fieldset> elements should have a single, non-empty <legend> as a label
i
Recommendation —
<fieldset> element does not have a <legend>
i
Recommendation —
<fieldset> element has more than one <legend>
i
Recommendation —
<fieldset> element <legend> is empty
aria_child_valid : An element with an ARIA role must own a required child
i
Recommendation —
The element with role "{0}" does not own any child element with any of the following role(s): "{1}"
i
Recommendation —
The element with role "{0}" owns the child element with the role "{1}" that is not one of the allowed role(s): "{2}"
input_fields_grouped : Groups of logically related input elements should be contained within a <fieldset> element
i
Recommendation —
Use the <fieldset> element to group logically related input elements
list_structure_proper : List elements should only be used for lists of related items
i
Recommendation —
List element is missing or improperly structured
select_options_grouped : Groups of related options within a selection list should be grouped with <optgroup>
i
Recommendation —
Group of related options may need <optgroup>
table_layout_linearized : Avoid using tables to format text documents in columns unless the table can be linearized
i
Recommendation —
Verify table is not being used to format text content in columns unless the table can be linearized
1.4.5 Images of Text [AA]
If the technologies being used can achieve the visual presentation, text should not be used to convey information rather than images of text.
2.1.2 No Keyboard Trap [A]
If keyboard focus can be moved to a component using a keyboard interface, then focus can be moved away from that component using only a keyboard interface, and, if it requires more than unmodified arrow or tab keys or other standard exit methods, the user is advised of the method for moving focus away.
download_keyboard_controllable : File download mechanisms should be keyboard-operable and preserve page focus location
i
Recommendation —
Verify that the file download mechanism does not cause a keyboard trap
2.1.4 Character Key Shortcuts [A]
If a keyboard shortcut is implemented using only letter, punctuation, number or symbol characters, then the shortcut can be turned off, remapped or activated only on focus.
2.3.1 Three Flashes or Below Threshold [A]
Content does not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds.
2.4.3 Focus Order [A]
If content can be navigated sequentially and the navigation sequences affect meaning or operation, focusable components receive focus in an order that preserves meaning and operability.
widget_tabbable_single : Components with a widget role must have no more than one tabbable element
Needs review —
Component with "{0}" role has more than one tabbable element
2.4.5 Multiple Ways [AA]
More than one way is available to locate a Web page within a set of Web pages, except where the Web Page is the result of, or a step in, a process.
2.4.6 Headings and Labels [AA]
Headings and labels describe topic or purpose.
heading_content_exists : Heading elements must provide descriptive text
i
Recommendation —
Heading element has no descriptive content
2.5.1 Pointer Gestures [A]
All functionality that uses multipoint or path-based gestures for operation can be operated with a single pointer without a path-based gesture.
2.5.2 Pointer Cancellation [A]
For functionality that can be operated using a single pointer, completion of the function is on the up-event with an ability to abort, undo or reverse the outcome.
2.5.4 Motion Actuation [A]
Functionality that can be operated by motion can also be operated by user interface components, and the motion trigger can be disabled.
3.2.3 Consistent Navigation [AA]
Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user.
3.2.4 Consistent Identification [AA]
Components that have the same functionality within a set of Web pages are identified consistently.
3.2.6 Consistent Help [AA]
Make it easier to find help and support. If a Web page contains help mechanisms they occur in the same order relative to other page content, unless a change is initiated by the user.
3.3.3 Error Suggestion [AA]
If an input error is automatically detected and suggestions for correction are known, then the suggestions are provided to the user, unless it would jeopardize the security or purpose of the content.
3.3.4 Error Prevention (Legal, Financial, Data) [AA]
For content that cause legal commitments or financial transactions for the user to occur, that modify or delete user-controllable data in data storage systems, or that submit user test responses, the user can reverse, correct, or confirm the action.
3.3.7 Redundant Entry [AA]
Make it easier for users to complete multi-step processes. Don't ask for the same information twice in the same session.
3.3.8 Accessible Authentication (Minimum) [AA]
Make logins possible with less mental effort. Don't make people solve, recall, or transcribe something to log in.
4.1.1 Parsing [A]
(Obsolete and removed) This requirement was originally adopted to address problems that assistive technology (AT) had directly parsing HTML. AT no longer has any need to directly parse HTML. Consequently, these problems either no longer exist or are addressed by other requirements.
4.1.2 Name, Role, Value [A]
For all user interface components (including, but not limited to: form elements, links and components generated by scripts), the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to user agents, including assistive technologies.
combobox_popup_reference : The 'aria-controls' (for ARIA 1.2) or the 'aria-owns' (for ARIA 1.0) attribute of the expanded combobox must reference a valid popup 'id' value
Violation —
The 'aria-owns' attribute of the expanded combobox is missing
Violation —
The 'aria-controls' attribute of the expanded combobox is missing
Violation —
The 'aria-owns' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The 'aria-controls' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The combobox 'aria-expanded' attribute is true, but the combobox popup is not visible
Violation —
The combobox 'aria-expanded' attribute is false, but the combobox popup is visible
aria_activedescendant_valid : The 'aria-activedescendant' property must reference the 'id' of a non-empty, non-hidden active child element
Violation —
The 'aria-activedescendant' property is empty
Violation —
The 'aria-activedescendant' property references a hidden node
Violation —
Element is not a combobox, and the referenced active-descendant element is not a valid descendant
combobox_active_descendant : 'aria-activedescendant' must be used to define focus within the combobox popup, except when using a dialog popup
Violation —
The element referenced by 'aria-activedescendant' "{0}" does not exist
Violation —
The 'aria-activedescendant' "{0}" references an element with the roles "{1}", which does not have a valid ARIA role of 'option', 'gridcell', 'row', or 'treeitem'
Violation —
The 'aria-activedescendant' "{0}" references an element that does not have 'aria-selected' set to true
input_haspopup_conflict : <input> element with a 'list' attribute should not use an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with type "{0}" and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with a missing or invalid type and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The list attribute for the <input> element is invalid
Violation —
The list attribute for the <input> element with the type "{0}" is invalid
Violation —
The list attribute for the <input> element does not reference a datalist element
aria_role_valid : ARIA roles must be valid for the element to which they are assigned
Violation —
The ARIA role '{0}' is not valid for the element <{1}>
Violation —
The ARIA role '{0}' is not valid for the element <{1}> and may be ignored by the browser since the element is focusable
combobox_autocomplete_valid : A combobox that supports autocompletion behavior must have the 'aria-autocomplete' attribute only on its text input element with a valid value; a value of '"inline"' is not supported
Violation —
The combobox has the 'aria-autocomplete' attribute incorrectly set on an element within the popup referenced by "{0}"
Violation —
The combobox does not support an 'aria-autocomplete' attribute value set to '"inline"'
combobox_focusable_elements : Tabbable focus for the combobox must be allowed only on the text input, except when using a dialog popup
Violation —
The combobox element does not allow DOM focus as required
Violation —
The popup of the combobox has DOM focus or has 'aria-activedescendant' defined, which is not allowed
combobox_haspopup_valid : The combobox attribute 'aria-haspopup' value must be appropriate for the role of the element referenced by 'aria-controls' (ARIA 1.2) or 'aria-owns' (ARIA 1.0)
Violation —
The 'role' value "{0}" of the popup element "{1}" should be one of "listbox", "grid", "tree" or "dialog"
Violation —
The value of the combobox 'aria-haspopup' attribute "{0}" does not match the 'role' value of the popup element "{1}"
element_tabbable_role_valid : A tabbable element must have a valid widget role
Violation —
The tabbable element's role '{0}' is not a widget role
Violation —
The tabbable element does not have a valid widget role
input_label_exists : Each form control must have an associated label
Violation —
Form control element <{0}> has no associated label
Violation —
Form control with "{0}" role has no associated label
aria_descendant_valid : Browsers ignore the explicit and implicit ARIA roles of the descendants of certain elements
Needs review —
The element with role "{0}" contains descendants with implicit roles "{1}" which are ignored by browsers
Violation —
The element with role "{0}" contains descendants with roles "{1}" which are ignored by browsers
aria_role_allowed : Elements must have a valid 'role' per ARIA specification
Violation —
The role '{0}' defined on the element is not valid per ARIA specification
Needs review —
Some of the roles, '{0}', defined on the element are not valid per ARIA specification
a_text_purpose : Hyperlinks must have an accessible name for their purpose
Violation —
Hyperlink has no link text, label or image with a text alternative
aria_attribute_allowed : ARIA attributes must be valid for the element's role
Violation —
The attribute(s) '{0}' referenced by the element <{1}> is not a valid ARIA state or property
aria_attribute_conflict : An ARIA attribute must not conflict with the corresponding HTML attribute
Violation —
The ARIA attribute "{0}" is in conflict with the corresponding HTML attribute "{1}"
aria_attribute_exists : When specifying a required ARIA attribute, the value must not be empty
Violation —
The element attribute(s): '{0}' value is empty
aria_attribute_required : The required attributes for the element with a role must be defined
Violation —
Element with '{0}' role does not have the required ARIA attribute(s): '{1}'
aria_attribute_value_valid : ARIA property values must be valid
Violation —
The value "{0}" specified for attribute '{1}' on element <{2}> is not valid
aria_eventhandler_role_valid : Elements with event handlers must have a valid ARIA role
Violation —
The <{0}> element with '{1}' does not have a valid ARIA role specified
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_id_unique : The ARIA property must reference a non-empty unique id of an existing element that is visible
Violation —
The 'id' "{0}" specified for the ARIA property '{1}' value is not valid
aria_widget_labelled : Interactive component must have a programmatically associated name
Violation —
Interactive component with ARIA role '{0}' does not have a programmatically associated name
combobox_design_valid : The combobox design pattern must be valid for ARIA 1.2
Violation —
The combobox design pattern is detected as ARIA 1.1, which is not allowed by ARIA 1.2
frame_title_exists : Inline frames must have a unique, non-empty 'title' attribute
Violation —
Inline frame does not have a 'title' attribute
label_content_exists : A <label> element must have non-empty descriptive text that identifies the purpose of the interactive component
Violation —
The <label> element does not have descriptive text that identifies the expected input
list_children_valid : List component with "group" role must limit children to <listitem> elements
Violation —
List component with "group" role has children that are not <listitem> elements
table_aria_descendants : Table structure elements cannot specify an explicit 'role' within table containers
Violation —
An explicit ARIA 'role' is not valid for <{0}> element within an ARIA role '{1}' per the ARIA in HTML specification
aria_accessiblename_exists : Elements with certain roles should have accessible names
i
Recommendation —
Element <{0}> with "{1}" role has no accessible name
aria_attribute_redundant : An ARIA attribute should not be redundant with a corresponding HTML attribute
i
Recommendation —
The ARIA attribute "{0}" is redundant with the HTML attribute "{1}"
canvas_content_described : The <canvas> element may not be accessible
i
Recommendation —
Verify accessibility of the <canvas> element
4.1.3 Status Messages [AA]
In content implemented using markup languages, status messages can be programmatically determined through role or properties such that they can be presented to the user by assistive technologies without receiving focus.
1.2.1 Audio-only and Video-only (Prerecorded) [A]
For prerecorded audio-only or video-only media, an alternative provides equivalent information.
media_audio_transcribed : Audio information should also be available in text form
i
Recommendation —
Provide transcripts for audio files
1.3.1 Info and Relationships [A]
Information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text.
input_checkboxes_grouped : Related sets of radio buttons or checkboxes should be programmatically grouped
Violation —
{0} input found that has the same name, "{2}" as a {1} input
Violation —
{0} input is not in the group with another {0} with the name "{1}"
Violation —
{0} input and others with the name "{1}" are not grouped together
Violation —
{0} input is in a different group than another {0} with the name "{1}"
Needs review —
Verify that this ungrouped checkbox input is not related to other checkboxes
Needs review —
Verify that this un-named, ungrouped checkbox input is not related to other checkboxes
table_headers_ref_valid : The 'headers' attribute should refer to a valid cell in the same table
Violation —
The 'headers' attribute value "{0}" does not reference a valid 'id' in this document
Violation —
The 'headers' attribute value "{0}" refers to itself
Violation —
The 'headers' attribute value "{0}" does not refer to a cell in the same table
Violation —
The 'headers' attribute value "{0}" does not refer to a cell indicated with <th> or a role of "columnheader" or "rowheader"
fieldset_label_valid : Groups with nested inputs must have unique accessible name
Violation —
Group/Fieldset does not have an accessible name
Violation —
Group/Fieldset "{0}" has a duplicate name to another group
table_scope_valid : Value for 'scope' attribute must be "row", "col", "rowgroup", or "colgroup"
Violation —
Value provided is invalid for the 'scope' attribute
Violation —
The 'scope' attribute should only be used on a <th> element
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_parent_required : Each element with an implicit or explicit role must be contained within a valid element
Violation —
Element with "{0}" role is not contained in or owned by an element with one of the following roles: "{1}"
form_label_unique : Form controls should have exactly one label
Violation —
Form control has more than one label
label_ref_valid : The 'for' attribute for a label should reference a non-empty, unique 'id' attribute of a valid element
Violation —
The value "{0}" of the 'for' attribute is not the 'id' of a valid element
table_caption_empty : A <caption> element for a <table> element must contain descriptive text
Violation —
The <table> element has an empty <caption> element
table_caption_nested : The <caption> element must be nested inside the associated <table> element
Violation —
<caption> element is not nested inside a <table> element
table_headers_exists : Data table must identify headers
Violation —
Table has no headers identified
table_headers_related : For a complex data table, all <th> and <td> elements must be related via 'header' or 'scope' attributes
Violation —
Complex table does not have headers for each cell properly defined with 'header' or 'scope'
table_structure_misuse : Table elements with 'role="presentation" or 'role="none" should not have structural elements or attributes
Violation —
The <{0}> element with "presentation" role or "none" role has structural element(s) and/or attribute(s) '{1}'
table_summary_redundant : The table summary must not duplicate the caption
Violation —
The table summary duplicates the caption
blockquote_cite_exists : Use <blockquote> only for quotations, not indentation
Needs review —
Verify that <blockquote> should have a 'cite' attribute and not be used for indentation only
heading_markup_misuse : Heading elements must not be used for presentation
Needs review —
Verify that the heading element is a genuine heading
list_markup_review : Proper HTML elements should be used to create a list
Needs review —
Verify this is a list and if so, modify to use proper HTML elements for the list
text_block_heading : Heading text should use a heading element or role
Needs review —
Confirm this text '{0}' is used as a heading and if so, modify to use a heading element or role
text_quoted_correctly : Quotations should be marked with <q> or <blockquote> elements
Needs review —
If the following text is a quotation, mark it as a <q> or <blockquote> element: {0}
fieldset_legend_valid : <fieldset> elements should have a single, non-empty <legend> as a label
i
Recommendation —
<fieldset> element does not have a <legend>
i
Recommendation —
<fieldset> element has more than one <legend>
i
Recommendation —
<fieldset> element <legend> is empty
aria_child_valid : An element with an ARIA role must own a required child
i
Recommendation —
The element with role "{0}" does not own any child element with any of the following role(s): "{1}"
i
Recommendation —
The element with role "{0}" owns the child element with the role "{1}" that is not one of the allowed role(s): "{2}"
input_fields_grouped : Groups of logically related input elements should be contained within a <fieldset> element
i
Recommendation —
Use the <fieldset> element to group logically related input elements
list_structure_proper : List elements should only be used for lists of related items
i
Recommendation —
List element is missing or improperly structured
select_options_grouped : Groups of related options within a selection list should be grouped with <optgroup>
i
Recommendation —
Group of related options may need <optgroup>
table_layout_linearized : Avoid using tables to format text documents in columns unless the table can be linearized
i
Recommendation —
Verify table is not being used to format text content in columns unless the table can be linearized
1.4.5 Images of Text [AA]
If the technologies being used can achieve the visual presentation, text should not be used to convey information rather than images of text.
2.1.2 No Keyboard Trap [A]
If keyboard focus can be moved to a component using a keyboard interface, then focus can be moved away from that component using only a keyboard interface, and, if it requires more than unmodified arrow or tab keys or other standard exit methods, the user is advised of the method for moving focus away.
download_keyboard_controllable : File download mechanisms should be keyboard-operable and preserve page focus location
i
Recommendation —
Verify that the file download mechanism does not cause a keyboard trap
2.1.4 Character Key Shortcuts [A]
If a keyboard shortcut is implemented using only letter, punctuation, number or symbol characters, then the shortcut can be turned off, remapped or activated only on focus.
2.3.1 Three Flashes or Below Threshold [A]
Content does not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds.
2.4.3 Focus Order [A]
If content can be navigated sequentially and the navigation sequences affect meaning or operation, focusable components receive focus in an order that preserves meaning and operability.
widget_tabbable_single : Components with a widget role must have no more than one tabbable element
Needs review —
Component with "{0}" role has more than one tabbable element
2.4.5 Multiple Ways [AA]
More than one way is available to locate a Web page within a set of Web pages, except where the Web Page is the result of, or a step in, a process.
2.4.6 Headings and Labels [AA]
Headings and labels describe topic or purpose.
heading_content_exists : Heading elements must provide descriptive text
i
Recommendation —
Heading element has no descriptive content
2.5.1 Pointer Gestures [A]
All functionality that uses multipoint or path-based gestures for operation can be operated with a single pointer without a path-based gesture.
2.5.2 Pointer Cancellation [A]
For functionality that can be operated using a single pointer, completion of the function is on the up-event with an ability to abort, undo or reverse the outcome.
2.5.4 Motion Actuation [A]
Functionality that can be operated by motion can also be operated by user interface components, and the motion trigger can be disabled.
3.2.3 Consistent Navigation [AA]
Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user.
3.2.4 Consistent Identification [AA]
Components that have the same functionality within a set of Web pages are identified consistently.
3.2.6 Consistent Help [AA]
Make it easier to find help and support. If a Web page contains help mechanisms they occur in the same order relative to other page content, unless a change is initiated by the user.
3.3.3 Error Suggestion [AA]
If an input error is automatically detected and suggestions for correction are known, then the suggestions are provided to the user, unless it would jeopardize the security or purpose of the content.
3.3.4 Error Prevention (Legal, Financial, Data) [AA]
For content that cause legal commitments or financial transactions for the user to occur, that modify or delete user-controllable data in data storage systems, or that submit user test responses, the user can reverse, correct, or confirm the action.
3.3.7 Redundant Entry [AA]
Make it easier for users to complete multi-step processes. Don't ask for the same information twice in the same session.
3.3.8 Accessible Authentication (Minimum) [AA]
Make logins possible with less mental effort. Don't make people solve, recall, or transcribe something to log in.
4.1.1 Parsing [A]
(Obsolete and removed) This requirement was originally adopted to address problems that assistive technology (AT) had directly parsing HTML. AT no longer has any need to directly parse HTML. Consequently, these problems either no longer exist or are addressed by other requirements.
4.1.2 Name, Role, Value [A]
For all user interface components (including, but not limited to: form elements, links and components generated by scripts), the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to user agents, including assistive technologies.
combobox_popup_reference : The 'aria-controls' (for ARIA 1.2) or the 'aria-owns' (for ARIA 1.0) attribute of the expanded combobox must reference a valid popup 'id' value
Violation —
The 'aria-owns' attribute of the expanded combobox is missing
Violation —
The 'aria-controls' attribute of the expanded combobox is missing
Violation —
The 'aria-owns' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The 'aria-controls' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The combobox 'aria-expanded' attribute is true, but the combobox popup is not visible
Violation —
The combobox 'aria-expanded' attribute is false, but the combobox popup is visible
aria_activedescendant_valid : The 'aria-activedescendant' property must reference the 'id' of a non-empty, non-hidden active child element
Violation —
The 'aria-activedescendant' property is empty
Violation —
The 'aria-activedescendant' property references a hidden node
Violation —
Element is not a combobox, and the referenced active-descendant element is not a valid descendant
combobox_active_descendant : 'aria-activedescendant' must be used to define focus within the combobox popup, except when using a dialog popup
Violation —
The element referenced by 'aria-activedescendant' "{0}" does not exist
Violation —
The 'aria-activedescendant' "{0}" references an element with the roles "{1}", which does not have a valid ARIA role of 'option', 'gridcell', 'row', or 'treeitem'
Violation —
The 'aria-activedescendant' "{0}" references an element that does not have 'aria-selected' set to true
input_haspopup_conflict : <input> element with a 'list' attribute should not use an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with type "{0}" and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with a missing or invalid type and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The list attribute for the <input> element is invalid
Violation —
The list attribute for the <input> element with the type "{0}" is invalid
Violation —
The list attribute for the <input> element does not reference a datalist element
aria_role_valid : ARIA roles must be valid for the element to which they are assigned
Violation —
The ARIA role '{0}' is not valid for the element <{1}>
Violation —
The ARIA role '{0}' is not valid for the element <{1}> and may be ignored by the browser since the element is focusable
combobox_autocomplete_valid : A combobox that supports autocompletion behavior must have the 'aria-autocomplete' attribute only on its text input element with a valid value; a value of '"inline"' is not supported
Violation —
The combobox has the 'aria-autocomplete' attribute incorrectly set on an element within the popup referenced by "{0}"
Violation —
The combobox does not support an 'aria-autocomplete' attribute value set to '"inline"'
combobox_focusable_elements : Tabbable focus for the combobox must be allowed only on the text input, except when using a dialog popup
Violation —
The combobox element does not allow DOM focus as required
Violation —
The popup of the combobox has DOM focus or has 'aria-activedescendant' defined, which is not allowed
combobox_haspopup_valid : The combobox attribute 'aria-haspopup' value must be appropriate for the role of the element referenced by 'aria-controls' (ARIA 1.2) or 'aria-owns' (ARIA 1.0)
Violation —
The 'role' value "{0}" of the popup element "{1}" should be one of "listbox", "grid", "tree" or "dialog"
Violation —
The value of the combobox 'aria-haspopup' attribute "{0}" does not match the 'role' value of the popup element "{1}"
input_label_exists : Each form control must have an associated label
Violation —
Form control element <{0}> has no associated label
Violation —
Form control with "{0}" role has no associated label
aria_descendant_valid : Browsers ignore the explicit and implicit ARIA roles of the descendants of certain elements
Needs review —
The element with role "{0}" contains descendants with implicit roles "{1}" which are ignored by browsers
Violation —
The element with role "{0}" contains descendants with roles "{1}" which are ignored by browsers
aria_role_allowed : Elements must have a valid 'role' per ARIA specification
Violation —
The role '{0}' defined on the element is not valid per ARIA specification
Needs review —
Some of the roles, '{0}', defined on the element are not valid per ARIA specification
a_text_purpose : Hyperlinks must have an accessible name for their purpose
Violation —
Hyperlink has no link text, label or image with a text alternative
aria_attribute_allowed : ARIA attributes must be valid for the element's role
Violation —
The attribute(s) '{0}' referenced by the element <{1}> is not a valid ARIA state or property
aria_attribute_conflict : An ARIA attribute must not conflict with the corresponding HTML attribute
Violation —
The ARIA attribute "{0}" is in conflict with the corresponding HTML attribute "{1}"
aria_attribute_exists : When specifying a required ARIA attribute, the value must not be empty
Violation —
The element attribute(s): '{0}' value is empty
aria_attribute_required : The required attributes for the element with a role must be defined
Violation —
Element with '{0}' role does not have the required ARIA attribute(s): '{1}'
aria_attribute_value_valid : ARIA property values must be valid
Violation —
The value "{0}" specified for attribute '{1}' on element <{2}> is not valid
aria_eventhandler_role_valid : Elements with event handlers must have a valid ARIA role
Violation —
The <{0}> element with '{1}' does not have a valid ARIA role specified
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_id_unique : The ARIA property must reference a non-empty unique id of an existing element that is visible
Violation —
The 'id' "{0}" specified for the ARIA property '{1}' value is not valid
aria_widget_labelled : Interactive component must have a programmatically associated name
Violation —
Interactive component with ARIA role '{0}' does not have a programmatically associated name
combobox_design_valid : The combobox design pattern must be valid for ARIA 1.2
Violation —
The combobox design pattern is detected as ARIA 1.1, which is not allowed by ARIA 1.2
frame_title_exists : Inline frames must have a unique, non-empty 'title' attribute
Violation —
Inline frame does not have a 'title' attribute
label_content_exists : A <label> element must have non-empty descriptive text that identifies the purpose of the interactive component
Violation —
The <label> element does not have descriptive text that identifies the expected input
list_children_valid : List component with "group" role must limit children to <listitem> elements
Violation —
List component with "group" role has children that are not <listitem> elements
table_aria_descendants : Table structure elements cannot specify an explicit 'role' within table containers
Violation —
An explicit ARIA 'role' is not valid for <{0}> element within an ARIA role '{1}' per the ARIA in HTML specification
element_tabbable_role_valid : A tabbable element must have a valid widget role
i
Recommendation —
The tabbable element's role '{0}' is not a widget role
i
Recommendation —
The tabbable element does not have a valid widget role
aria_accessiblename_exists : Elements with certain roles should have accessible names
i
Recommendation —
Element <{0}> with "{1}" role has no accessible name
aria_attribute_redundant : An ARIA attribute should not be redundant with a corresponding HTML attribute
i
Recommendation —
The ARIA attribute "{0}" is redundant with the HTML attribute "{1}"
canvas_content_described : The <canvas> element may not be accessible
i
Recommendation —
Verify accessibility of the <canvas> element
4.1.3 Status Messages [AA]
In content implemented using markup languages, status messages can be programmatically determined through role or properties such that they can be presented to the user by assistive technologies without receiving focus.
1.2.1 Audio-only and Video-only (Prerecorded) [A]
For prerecorded audio-only or video-only media, an alternative provides equivalent information.
media_audio_transcribed : Audio information should also be available in text form
i
Recommendation —
Provide transcripts for audio files
1.3.1 Info and Relationships [A]
Information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text.
input_checkboxes_grouped : Related sets of radio buttons or checkboxes should be programmatically grouped
Violation —
{0} input found that has the same name, "{2}" as a {1} input
Violation —
{0} input is not in the group with another {0} with the name "{1}"
Violation —
{0} input and others with the name "{1}" are not grouped together
Violation —
{0} input is in a different group than another {0} with the name "{1}"
Needs review —
Verify that this ungrouped checkbox input is not related to other checkboxes
Needs review —
Verify that this un-named, ungrouped checkbox input is not related to other checkboxes
table_headers_ref_valid : The 'headers' attribute should refer to a valid cell in the same table
Violation —
The 'headers' attribute value "{0}" does not reference a valid 'id' in this document
Violation —
The 'headers' attribute value "{0}" refers to itself
Violation —
The 'headers' attribute value "{0}" does not refer to a cell in the same table
Violation —
The 'headers' attribute value "{0}" does not refer to a cell indicated with <th> or a role of "columnheader" or "rowheader"
fieldset_label_valid : Groups with nested inputs must have unique accessible name
Violation —
Group/Fieldset does not have an accessible name
Violation —
Group/Fieldset "{0}" has a duplicate name to another group
table_scope_valid : Value for 'scope' attribute must be "row", "col", "rowgroup", or "colgroup"
Violation —
Value provided is invalid for the 'scope' attribute
Violation —
The 'scope' attribute should only be used on a <th> element
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_parent_required : Each element with an implicit or explicit role must be contained within a valid element
Violation —
Element with "{0}" role is not contained in or owned by an element with one of the following roles: "{1}"
form_label_unique : Form controls should have exactly one label
Violation —
Form control has more than one label
label_ref_valid : The 'for' attribute for a label should reference a non-empty, unique 'id' attribute of a valid element
Violation —
The value "{0}" of the 'for' attribute is not the 'id' of a valid element
table_caption_empty : A <caption> element for a <table> element must contain descriptive text
Violation —
The <table> element has an empty <caption> element
table_caption_nested : The <caption> element must be nested inside the associated <table> element
Violation —
<caption> element is not nested inside a <table> element
table_headers_exists : Data table must identify headers
Violation —
Table has no headers identified
table_headers_related : For a complex data table, all <th> and <td> elements must be related via 'header' or 'scope' attributes
Violation —
Complex table does not have headers for each cell properly defined with 'header' or 'scope'
table_structure_misuse : Table elements with 'role="presentation" or 'role="none" should not have structural elements or attributes
Violation —
The <{0}> element with "presentation" role or "none" role has structural element(s) and/or attribute(s) '{1}'
table_summary_redundant : The table summary must not duplicate the caption
Violation —
The table summary duplicates the caption
blockquote_cite_exists : Use <blockquote> only for quotations, not indentation
Needs review —
Verify that <blockquote> should have a 'cite' attribute and not be used for indentation only
heading_markup_misuse : Heading elements must not be used for presentation
Needs review —
Verify that the heading element is a genuine heading
list_markup_review : Proper HTML elements should be used to create a list
Needs review —
Verify this is a list and if so, modify to use proper HTML elements for the list
text_block_heading : Heading text should use a heading element or role
Needs review —
Confirm this text '{0}' is used as a heading and if so, modify to use a heading element or role
text_quoted_correctly : Quotations should be marked with <q> or <blockquote> elements
Needs review —
If the following text is a quotation, mark it as a <q> or <blockquote> element: {0}
fieldset_legend_valid : <fieldset> elements should have a single, non-empty <legend> as a label
i
Recommendation —
<fieldset> element does not have a <legend>
i
Recommendation —
<fieldset> element has more than one <legend>
i
Recommendation —
<fieldset> element <legend> is empty
aria_child_valid : An element with an ARIA role must own a required child
i
Recommendation —
The element with role "{0}" does not own any child element with any of the following role(s): "{1}"
i
Recommendation —
The element with role "{0}" owns the child element with the role "{1}" that is not one of the allowed role(s): "{2}"
input_fields_grouped : Groups of logically related input elements should be contained within a <fieldset> element
i
Recommendation —
Use the <fieldset> element to group logically related input elements
list_structure_proper : List elements should only be used for lists of related items
i
Recommendation —
List element is missing or improperly structured
select_options_grouped : Groups of related options within a selection list should be grouped with <optgroup>
i
Recommendation —
Group of related options may need <optgroup>
table_layout_linearized : Avoid using tables to format text documents in columns unless the table can be linearized
i
Recommendation —
Verify table is not being used to format text content in columns unless the table can be linearized
1.4.5 Images of Text [AA]
If the technologies being used can achieve the visual presentation, text should not be used to convey information rather than images of text.
2.1.2 No Keyboard Trap [A]
If keyboard focus can be moved to a component using a keyboard interface, then focus can be moved away from that component using only a keyboard interface, and, if it requires more than unmodified arrow or tab keys or other standard exit methods, the user is advised of the method for moving focus away.
download_keyboard_controllable : File download mechanisms should be keyboard-operable and preserve page focus location
i
Recommendation —
Verify that the file download mechanism does not cause a keyboard trap
2.1.4 Character Key Shortcuts [A]
If a keyboard shortcut is implemented using only letter, punctuation, number or symbol characters, then the shortcut can be turned off, remapped or activated only on focus.
2.3.1 Three Flashes or Below Threshold [A]
Content does not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds.
2.4.3 Focus Order [A]
If content can be navigated sequentially and the navigation sequences affect meaning or operation, focusable components receive focus in an order that preserves meaning and operability.
widget_tabbable_single : Components with a widget role must have no more than one tabbable element
Needs review —
Component with "{0}" role has more than one tabbable element
2.4.5 Multiple Ways [AA]
More than one way is available to locate a Web page within a set of Web pages, except where the Web Page is the result of, or a step in, a process.
2.4.6 Headings and Labels [AA]
Headings and labels describe topic or purpose.
heading_content_exists : Heading elements must provide descriptive text
i
Recommendation —
Heading element has no descriptive content
2.5.1 Pointer Gestures [A]
All functionality that uses multipoint or path-based gestures for operation can be operated with a single pointer without a path-based gesture.
2.5.2 Pointer Cancellation [A]
For functionality that can be operated using a single pointer, completion of the function is on the up-event with an ability to abort, undo or reverse the outcome.
2.5.4 Motion Actuation [A]
Functionality that can be operated by motion can also be operated by user interface components, and the motion trigger can be disabled.
3.2.3 Consistent Navigation [AA]
Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user.
3.2.4 Consistent Identification [AA]
Components that have the same functionality within a set of Web pages are identified consistently.
3.3.3 Error Suggestion [AA]
If an input error is automatically detected and suggestions for correction are known, then the suggestions are provided to the user, unless it would jeopardize the security or purpose of the content.
3.3.4 Error Prevention (Legal, Financial, Data) [AA]
For content that cause legal commitments or financial transactions for the user to occur, that modify or delete user-controllable data in data storage systems, or that submit user test responses, the user can reverse, correct, or confirm the action.
4.1.1 Parsing [A]
(Obsolete and removed) This requirement was originally adopted to address problems that assistive technology (AT) had directly parsing HTML. AT no longer has any need to directly parse HTML. Consequently, these problems either no longer exist or are addressed by other requirements.
4.1.2 Name, Role, Value [A]
For all user interface components (including, but not limited to: form elements, links and components generated by scripts), the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to user agents, including assistive technologies.
combobox_popup_reference : The 'aria-controls' (for ARIA 1.2) or the 'aria-owns' (for ARIA 1.0) attribute of the expanded combobox must reference a valid popup 'id' value
Violation —
The 'aria-owns' attribute of the expanded combobox is missing
Violation —
The 'aria-controls' attribute of the expanded combobox is missing
Violation —
The 'aria-owns' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The 'aria-controls' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The combobox 'aria-expanded' attribute is true, but the combobox popup is not visible
Violation —
The combobox 'aria-expanded' attribute is false, but the combobox popup is visible
aria_activedescendant_valid : The 'aria-activedescendant' property must reference the 'id' of a non-empty, non-hidden active child element
Violation —
The 'aria-activedescendant' property is empty
Violation —
The 'aria-activedescendant' property references a hidden node
Violation —
Element is not a combobox, and the referenced active-descendant element is not a valid descendant
combobox_active_descendant : 'aria-activedescendant' must be used to define focus within the combobox popup, except when using a dialog popup
Violation —
The element referenced by 'aria-activedescendant' "{0}" does not exist
Violation —
The 'aria-activedescendant' "{0}" references an element with the roles "{1}", which does not have a valid ARIA role of 'option', 'gridcell', 'row', or 'treeitem'
Violation —
The 'aria-activedescendant' "{0}" references an element that does not have 'aria-selected' set to true
input_haspopup_conflict : <input> element with a 'list' attribute should not use an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with type "{0}" and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with a missing or invalid type and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The list attribute for the <input> element is invalid
Violation —
The list attribute for the <input> element with the type "{0}" is invalid
Violation —
The list attribute for the <input> element does not reference a datalist element
aria_role_valid : ARIA roles must be valid for the element to which they are assigned
Violation —
The ARIA role '{0}' is not valid for the element <{1}>
Violation —
The ARIA role '{0}' is not valid for the element <{1}> and may be ignored by the browser since the element is focusable
combobox_autocomplete_valid : A combobox that supports autocompletion behavior must have the 'aria-autocomplete' attribute only on its text input element with a valid value; a value of '"inline"' is not supported
Violation —
The combobox has the 'aria-autocomplete' attribute incorrectly set on an element within the popup referenced by "{0}"
Violation —
The combobox does not support an 'aria-autocomplete' attribute value set to '"inline"'
combobox_focusable_elements : Tabbable focus for the combobox must be allowed only on the text input, except when using a dialog popup
Violation —
The combobox element does not allow DOM focus as required
Violation —
The popup of the combobox has DOM focus or has 'aria-activedescendant' defined, which is not allowed
combobox_haspopup_valid : The combobox attribute 'aria-haspopup' value must be appropriate for the role of the element referenced by 'aria-controls' (ARIA 1.2) or 'aria-owns' (ARIA 1.0)
Violation —
The 'role' value "{0}" of the popup element "{1}" should be one of "listbox", "grid", "tree" or "dialog"
Violation —
The value of the combobox 'aria-haspopup' attribute "{0}" does not match the 'role' value of the popup element "{1}"
input_label_exists : Each form control must have an associated label
Violation —
Form control element <{0}> has no associated label
Violation —
Form control with "{0}" role has no associated label
aria_descendant_valid : Browsers ignore the explicit and implicit ARIA roles of the descendants of certain elements
Needs review —
The element with role "{0}" contains descendants with implicit roles "{1}" which are ignored by browsers
Violation —
The element with role "{0}" contains descendants with roles "{1}" which are ignored by browsers
aria_role_allowed : Elements must have a valid 'role' per ARIA specification
Violation —
The role '{0}' defined on the element is not valid per ARIA specification
Needs review —
Some of the roles, '{0}', defined on the element are not valid per ARIA specification
a_text_purpose : Hyperlinks must have an accessible name for their purpose
Violation —
Hyperlink has no link text, label or image with a text alternative
aria_attribute_allowed : ARIA attributes must be valid for the element's role
Violation —
The attribute(s) '{0}' referenced by the element <{1}> is not a valid ARIA state or property
aria_attribute_conflict : An ARIA attribute must not conflict with the corresponding HTML attribute
Violation —
The ARIA attribute "{0}" is in conflict with the corresponding HTML attribute "{1}"
aria_attribute_exists : When specifying a required ARIA attribute, the value must not be empty
Violation —
The element attribute(s): '{0}' value is empty
aria_attribute_required : The required attributes for the element with a role must be defined
Violation —
Element with '{0}' role does not have the required ARIA attribute(s): '{1}'
aria_attribute_value_valid : ARIA property values must be valid
Violation —
The value "{0}" specified for attribute '{1}' on element <{2}> is not valid
aria_eventhandler_role_valid : Elements with event handlers must have a valid ARIA role
Violation —
The <{0}> element with '{1}' does not have a valid ARIA role specified
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_id_unique : The ARIA property must reference a non-empty unique id of an existing element that is visible
Violation —
The 'id' "{0}" specified for the ARIA property '{1}' value is not valid
aria_widget_labelled : Interactive component must have a programmatically associated name
Violation —
Interactive component with ARIA role '{0}' does not have a programmatically associated name
combobox_design_valid : The combobox design pattern must be valid for ARIA 1.2
Violation —
The combobox design pattern is detected as ARIA 1.1, which is not allowed by ARIA 1.2
frame_title_exists : Inline frames must have a unique, non-empty 'title' attribute
Violation —
Inline frame does not have a 'title' attribute
label_content_exists : A <label> element must have non-empty descriptive text that identifies the purpose of the interactive component
Violation —
The <label> element does not have descriptive text that identifies the expected input
list_children_valid : List component with "group" role must limit children to <listitem> elements
Violation —
List component with "group" role has children that are not <listitem> elements
table_aria_descendants : Table structure elements cannot specify an explicit 'role' within table containers
Violation —
An explicit ARIA 'role' is not valid for <{0}> element within an ARIA role '{1}' per the ARIA in HTML specification
element_tabbable_role_valid : A tabbable element must have a valid widget role
i
Recommendation —
The tabbable element's role '{0}' is not a widget role
i
Recommendation —
The tabbable element does not have a valid widget role
aria_accessiblename_exists : Elements with certain roles should have accessible names
i
Recommendation —
Element <{0}> with "{1}" role has no accessible name
aria_attribute_redundant : An ARIA attribute should not be redundant with a corresponding HTML attribute
i
Recommendation —
The ARIA attribute "{0}" is redundant with the HTML attribute "{1}"
canvas_content_described : The <canvas> element may not be accessible
i
Recommendation —
Verify accessibility of the <canvas> element
4.1.3 Status Messages [AA]
In content implemented using markup languages, status messages can be programmatically determined through role or properties such that they can be presented to the user by assistive technologies without receiving focus.
1.2.1 Audio-only and Video-only (Prerecorded) [A]
For prerecorded audio-only or video-only media, an alternative provides equivalent information.
media_audio_transcribed : Audio information should also be available in text form
i
Recommendation —
Provide transcripts for audio files
1.3.1 Info and Relationships [A]
Information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text.
input_checkboxes_grouped : Related sets of radio buttons or checkboxes should be programmatically grouped
Violation —
{0} input found that has the same name, "{2}" as a {1} input
Violation —
{0} input is not in the group with another {0} with the name "{1}"
Violation —
{0} input and others with the name "{1}" are not grouped together
Violation —
{0} input is in a different group than another {0} with the name "{1}"
Needs review —
Verify that this ungrouped checkbox input is not related to other checkboxes
Needs review —
Verify that this un-named, ungrouped checkbox input is not related to other checkboxes
table_headers_ref_valid : The 'headers' attribute should refer to a valid cell in the same table
Violation —
The 'headers' attribute value "{0}" does not reference a valid 'id' in this document
Violation —
The 'headers' attribute value "{0}" refers to itself
Violation —
The 'headers' attribute value "{0}" does not refer to a cell in the same table
Violation —
The 'headers' attribute value "{0}" does not refer to a cell indicated with <th> or a role of "columnheader" or "rowheader"
fieldset_label_valid : Groups with nested inputs must have unique accessible name
Violation —
Group/Fieldset does not have an accessible name
Violation —
Group/Fieldset "{0}" has a duplicate name to another group
table_scope_valid : Value for 'scope' attribute must be "row", "col", "rowgroup", or "colgroup"
Violation —
Value provided is invalid for the 'scope' attribute
Violation —
The 'scope' attribute should only be used on a <th> element
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_parent_required : Each element with an implicit or explicit role must be contained within a valid element
Violation —
Element with "{0}" role is not contained in or owned by an element with one of the following roles: "{1}"
form_label_unique : Form controls should have exactly one label
Violation —
Form control has more than one label
label_ref_valid : The 'for' attribute for a label should reference a non-empty, unique 'id' attribute of a valid element
Violation —
The value "{0}" of the 'for' attribute is not the 'id' of a valid element
table_caption_empty : A <caption> element for a <table> element must contain descriptive text
Violation —
The <table> element has an empty <caption> element
table_caption_nested : The <caption> element must be nested inside the associated <table> element
Violation —
<caption> element is not nested inside a <table> element
table_headers_exists : Data table must identify headers
Violation —
Table has no headers identified
table_headers_related : For a complex data table, all <th> and <td> elements must be related via 'header' or 'scope' attributes
Violation —
Complex table does not have headers for each cell properly defined with 'header' or 'scope'
table_structure_misuse : Table elements with 'role="presentation" or 'role="none" should not have structural elements or attributes
Violation —
The <{0}> element with "presentation" role or "none" role has structural element(s) and/or attribute(s) '{1}'
table_summary_redundant : The table summary must not duplicate the caption
Violation —
The table summary duplicates the caption
blockquote_cite_exists : Use <blockquote> only for quotations, not indentation
Needs review —
Verify that <blockquote> should have a 'cite' attribute and not be used for indentation only
heading_markup_misuse : Heading elements must not be used for presentation
Needs review —
Verify that the heading element is a genuine heading
list_markup_review : Proper HTML elements should be used to create a list
Needs review —
Verify this is a list and if so, modify to use proper HTML elements for the list
text_block_heading : Heading text should use a heading element or role
Needs review —
Confirm this text '{0}' is used as a heading and if so, modify to use a heading element or role
text_quoted_correctly : Quotations should be marked with <q> or <blockquote> elements
Needs review —
If the following text is a quotation, mark it as a <q> or <blockquote> element: {0}
fieldset_legend_valid : <fieldset> elements should have a single, non-empty <legend> as a label
i
Recommendation —
<fieldset> element does not have a <legend>
i
Recommendation —
<fieldset> element has more than one <legend>
i
Recommendation —
<fieldset> element <legend> is empty
aria_child_valid : An element with an ARIA role must own a required child
i
Recommendation —
The element with role "{0}" does not own any child element with any of the following role(s): "{1}"
i
Recommendation —
The element with role "{0}" owns the child element with the role "{1}" that is not one of the allowed role(s): "{2}"
input_fields_grouped : Groups of logically related input elements should be contained within a <fieldset> element
i
Recommendation —
Use the <fieldset> element to group logically related input elements
list_structure_proper : List elements should only be used for lists of related items
i
Recommendation —
List element is missing or improperly structured
select_options_grouped : Groups of related options within a selection list should be grouped with <optgroup>
i
Recommendation —
Group of related options may need <optgroup>
table_layout_linearized : Avoid using tables to format text documents in columns unless the table can be linearized
i
Recommendation —
Verify table is not being used to format text content in columns unless the table can be linearized
1.4.5 Images of Text [AA]
If the technologies being used can achieve the visual presentation, text should not be used to convey information rather than images of text.
2.1.2 No Keyboard Trap [A]
If keyboard focus can be moved to a component using a keyboard interface, then focus can be moved away from that component using only a keyboard interface, and, if it requires more than unmodified arrow or tab keys or other standard exit methods, the user is advised of the method for moving focus away.
download_keyboard_controllable : File download mechanisms should be keyboard-operable and preserve page focus location
i
Recommendation —
Verify that the file download mechanism does not cause a keyboard trap
2.3.1 Three Flashes or Below Threshold [A]
Content does not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds.
2.4.3 Focus Order [A]
If content can be navigated sequentially and the navigation sequences affect meaning or operation, focusable components receive focus in an order that preserves meaning and operability.
widget_tabbable_single : Components with a widget role must have no more than one tabbable element
Needs review —
Component with "{0}" role has more than one tabbable element
2.4.5 Multiple Ways [AA]
More than one way is available to locate a Web page within a set of Web pages, except where the Web Page is the result of, or a step in, a process.
2.4.6 Headings and Labels [AA]
Headings and labels describe topic or purpose.
heading_content_exists : Heading elements must provide descriptive text
i
Recommendation —
Heading element has no descriptive content
3.2.3 Consistent Navigation [AA]
Navigational mechanisms that are repeated on multiple Web pages within a set of Web pages occur in the same relative order each time they are repeated, unless a change is initiated by the user.
3.2.4 Consistent Identification [AA]
Components that have the same functionality within a set of Web pages are identified consistently.
3.3.3 Error Suggestion [AA]
If an input error is automatically detected and suggestions for correction are known, then the suggestions are provided to the user, unless it would jeopardize the security or purpose of the content.
3.3.4 Error Prevention (Legal, Financial, Data) [AA]
For content that cause legal commitments or financial transactions for the user to occur, that modify or delete user-controllable data in data storage systems, or that submit user test responses, the user can reverse, correct, or confirm the action.
4.1.1 Parsing [A]
(Obsolete and removed) This requirement was originally adopted to address problems that assistive technology (AT) had directly parsing HTML. AT no longer has any need to directly parse HTML. Consequently, these problems either no longer exist or are addressed by other requirements.
4.1.2 Name, Role, Value [A]
For all user interface components (including, but not limited to: form elements, links and components generated by scripts), the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to user agents, including assistive technologies.
combobox_popup_reference : The 'aria-controls' (for ARIA 1.2) or the 'aria-owns' (for ARIA 1.0) attribute of the expanded combobox must reference a valid popup 'id' value
Violation —
The 'aria-owns' attribute of the expanded combobox is missing
Violation —
The 'aria-controls' attribute of the expanded combobox is missing
Violation —
The 'aria-owns' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The 'aria-controls' attribute "{0}" of the expanded combobox does not reference a valid popup 'id' value
Violation —
The combobox 'aria-expanded' attribute is true, but the combobox popup is not visible
Violation —
The combobox 'aria-expanded' attribute is false, but the combobox popup is visible
aria_activedescendant_valid : The 'aria-activedescendant' property must reference the 'id' of a non-empty, non-hidden active child element
Violation —
The 'aria-activedescendant' property is empty
Violation —
The 'aria-activedescendant' property references a hidden node
Violation —
Element is not a combobox, and the referenced active-descendant element is not a valid descendant
combobox_active_descendant : 'aria-activedescendant' must be used to define focus within the combobox popup, except when using a dialog popup
Violation —
The element referenced by 'aria-activedescendant' "{0}" does not exist
Violation —
The 'aria-activedescendant' "{0}" references an element with the roles "{1}", which does not have a valid ARIA role of 'option', 'gridcell', 'row', or 'treeitem'
Violation —
The 'aria-activedescendant' "{0}" references an element that does not have 'aria-selected' set to true
input_haspopup_conflict : <input> element with a 'list' attribute should not use an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with type "{0}" and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The <input> element with a missing or invalid type and 'list' attribute uses an explicit 'aria-haspopup' attribute
Needs review —
The list attribute for the <input> element is invalid
Violation —
The list attribute for the <input> element with the type "{0}" is invalid
Violation —
The list attribute for the <input> element does not reference a datalist element
aria_role_valid : ARIA roles must be valid for the element to which they are assigned
Violation —
The ARIA role '{0}' is not valid for the element <{1}>
Violation —
The ARIA role '{0}' is not valid for the element <{1}> and may be ignored by the browser since the element is focusable
combobox_autocomplete_valid : A combobox that supports autocompletion behavior must have the 'aria-autocomplete' attribute only on its text input element with a valid value; a value of '"inline"' is not supported
Violation —
The combobox has the 'aria-autocomplete' attribute incorrectly set on an element within the popup referenced by "{0}"
Violation —
The combobox does not support an 'aria-autocomplete' attribute value set to '"inline"'
combobox_focusable_elements : Tabbable focus for the combobox must be allowed only on the text input, except when using a dialog popup
Violation —
The combobox element does not allow DOM focus as required
Violation —
The popup of the combobox has DOM focus or has 'aria-activedescendant' defined, which is not allowed
combobox_haspopup_valid : The combobox attribute 'aria-haspopup' value must be appropriate for the role of the element referenced by 'aria-controls' (ARIA 1.2) or 'aria-owns' (ARIA 1.0)
Violation —
The 'role' value "{0}" of the popup element "{1}" should be one of "listbox", "grid", "tree" or "dialog"
Violation —
The value of the combobox 'aria-haspopup' attribute "{0}" does not match the 'role' value of the popup element "{1}"
input_label_exists : Each form control must have an associated label
Violation —
Form control element <{0}> has no associated label
Violation —
Form control with "{0}" role has no associated label
aria_descendant_valid : Browsers ignore the explicit and implicit ARIA roles of the descendants of certain elements
Needs review —
The element with role "{0}" contains descendants with implicit roles "{1}" which are ignored by browsers
Violation —
The element with role "{0}" contains descendants with roles "{1}" which are ignored by browsers
aria_role_allowed : Elements must have a valid 'role' per ARIA specification
Violation —
The role '{0}' defined on the element is not valid per ARIA specification
Needs review —
Some of the roles, '{0}', defined on the element are not valid per ARIA specification
a_text_purpose : Hyperlinks must have an accessible name for their purpose
Violation —
Hyperlink has no link text, label or image with a text alternative
aria_attribute_allowed : ARIA attributes must be valid for the element's role
Violation —
The attribute(s) '{0}' referenced by the element <{1}> is not a valid ARIA state or property
aria_attribute_conflict : An ARIA attribute must not conflict with the corresponding HTML attribute
Violation —
The ARIA attribute "{0}" is in conflict with the corresponding HTML attribute "{1}"
aria_attribute_exists : When specifying a required ARIA attribute, the value must not be empty
Violation —
The element attribute(s): '{0}' value is empty
aria_attribute_required : The required attributes for the element with a role must be defined
Violation —
Element with '{0}' role does not have the required ARIA attribute(s): '{1}'
aria_attribute_value_valid : ARIA property values must be valid
Violation —
The value "{0}" specified for attribute '{1}' on element <{2}> is not valid
aria_eventhandler_role_valid : Elements with event handlers must have a valid ARIA role
Violation —
The <{0}> element with '{1}' does not have a valid ARIA role specified
aria_hidden_nontabbable : A hidden element should not contain any tabbable elements
Violation —
Element "{0}" should not be focusable within the subtree of an element with an 'aria-hidden' attribute with value 'true'
aria_id_unique : The ARIA property must reference a non-empty unique id of an existing element that is visible
Violation —
The 'id' "{0}" specified for the ARIA property '{1}' value is not valid
aria_widget_labelled : Interactive component must have a programmatically associated name
Violation —
Interactive component with ARIA role '{0}' does not have a programmatically associated name
combobox_design_valid : The combobox design pattern must be valid for ARIA 1.2
Violation —
The combobox design pattern is detected as ARIA 1.1, which is not allowed by ARIA 1.2
frame_title_exists : Inline frames must have a unique, non-empty 'title' attribute
Violation —
Inline frame does not have a 'title' attribute
label_content_exists : A <label> element must have non-empty descriptive text that identifies the purpose of the interactive component
Violation —
The <label> element does not have descriptive text that identifies the expected input
list_children_valid : List component with "group" role must limit children to <listitem> elements
Violation —
List component with "group" role has children that are not <listitem> elements
table_aria_descendants : Table structure elements cannot specify an explicit 'role' within table containers
Violation —
An explicit ARIA 'role' is not valid for <{0}> element within an ARIA role '{1}' per the ARIA in HTML specification
element_tabbable_role_valid : A tabbable element must have a valid widget role
i
Recommendation —
The tabbable element's role '{0}' is not a widget role
i
Recommendation —
The tabbable element does not have a valid widget role
aria_accessiblename_exists : Elements with certain roles should have accessible names
i
Recommendation —
Element <{0}> with "{1}" role has no accessible name
aria_attribute_redundant : An ARIA attribute should not be redundant with a corresponding HTML attribute
i
Recommendation —
The ARIA attribute "{0}" is redundant with the HTML attribute "{1}"
canvas_content_described : The <canvas> element may not be accessible
i
Recommendation —
Verify accessibility of the <canvas> element