WAI: Strategies, guidelines, resources to make the Web accessible to people with disabilities
Site Navigation: W3C > WAI > PF > Public Comments
Find comment by ID:
Search for comments using the fields below. Any fields left blank will search for all values of the field.
Document: Accessible Rich Internet Applications (WAI-ARIA) 1.0 (LC 2009-02-24)Accessible Rich Internet Applications (WAI-ARIA) 1.0 (WD 2009-12-15)Accessible Rich Internet Applications (WAI-ARIA) 1.0 (LC 2010-09-16)Accessible Rich Internet Applications (WAI-ARIA) 1.0 (CR 2011-01-18)Media Accessibility User Requirements (FPWD 2012-01-03)Role Attribute (FPWD 2010-09-16)Role Attribute (LC 2011-01-13)Role Attribute (CR 2012-01-10)WAI-ARIA 1.0 Authoring Practices (WD 2009-02-24)WAI-ARIA 1.0 Authoring Practices (WD 2009-12-15)WAI-ARIA 1.0 Authoring Practices (WD 2010-09-16)WAI-ARIA 1.0 Primer (FPWD 2008-02-04)WAI-ARIA 1.0 Primer (WD 2010-09-16)WAI-ARIA 1.0 Roadmap (WD 2008-02-04)WAI-ARIA 1.0 User Agent Implementation Guide (FPWD 2009-02-24)WAI-ARIA 1.0 User Agent Implementation Guide (WD 2009-12-15)WAI-ARIA 1.0 User Agent Implementation Guide (FPWD 2010-09-16)WAI-ARIA 1.0 User Agent Implementation Guide (LC 2012-01-10)
Section of document: 1. Introduction1.1. Scope1.2. Use Cases2. Using WAI-ARIA2.1. WAI-ARIA Roles2.2. WAI-ARIA States and Properties2.3. Managing Focus2.4. Building Accessible Applications with WAI-ARIA2.5. Example: Building a Tree Widget3. Normative Requirements for ARIA4. The Roles Model4.1. Relationships Between Concepts4.1.1. Parent Roles4.1.2. Child Roles4.1.3. Related Concepts4.1.4. Base Concept4.2. Characteristics of Roles4.2.1. Abstract Roles4.2.2. Required States and Properties4.2.3. Supported States and Properties4.2.4. Inherited States and Properties4.2.5. Required Child Elements4.2.6. Parent Element4.2.7. Accessible Name Calculation4.2.7.1. Name Computation4.2.7.2. Description Computation4.2.7.3. Text Equivalent Computation4.2.8. Presentational Children4.3. Categorization of Roles4.3.1. Base Types4.3.2. User Input Widgets4.3.3. User Interface Elements4.3.4. Document Structure4.3.5. Application Structure4.3.6. Landmark Roles4.4. Definition of Rolesalert (role)alertdialog (role)application (role)article (role)banner (role)button (role)checkbox (role)columnheader (role)combobox (role)complementary (role)composite (abstract role)contentinfo (role)definition (role)dialog (role)directory (role)document (role)grid (role)gridcell (role)group (role)heading (role)img (role)input (abstract role)landmark (abstract role)link (role)list (role)listbox (role)listitem (role)log (role)main (role)marquee (role)math (role)menu (role)menubar (role)menuitem (role)menuitemcheckbox (role)menuitemradio (role)navigation (role)note (role)option (role)presentation (role)progressbar (role)radio (role)radiogroup (role)range (abstract role)region (role)roletype (abstract role)row (role)rowheader (role)search (role)section (abstract role)sectionhead (abstract role)select (abstract role)separator (role)slider (role)spinbutton (role)status (role)structure (abstract role)tab (role)tabpanel (role)tablist (role)textbox (role)timer (role)toolbar (role)tooltip (role)tree (role)treegrid (role)treeitem (role)widget (abstract role)window (abstract role)5. Supported States and Properties5.1. Clarification of States versus Properties5.2. Characteristics of States and Properties5.2.1. Related Concepts5.2.2. Used in Roles5.2.3. Inherits into Roles5.2.4. Value5.3. Values for States and Properties5.4. Global States and Properties5.5. Taxonomy of ARIA States and Properties5.5.1. Widget Attributes5.5.2. Live Region Attributes5.5.3. Drag-and-Drop Attributes5.5.4. Relationship Attributes5.6. Definitions of States and Properties (all aria-* attributes)aria-activedescendant (property)aria-atomic (property)aria-autocomplete (property)aria-busy (state)aria-checked (state)aria-controls (property)aria-describedby (property)aria-disabled (state)aria-dropeffect (state)aria-expanded (state)aria-flowto (property)aria-grabbed (state)aria-haspopup (property)aria-hidden (state)aria-invalid (state)aria-label (property)aria-labelledby (property)aria-level (property)aria-live (property)aria-multiline (property)aria-multiselectable (property)aria-owns (property)aria-posinset (property)aria-pressed (state)aria-readonly (property)aria-relevant (property)aria-required (property)aria-selected (state)aria-setsize (property)aria-sort (property)aria-valuemax (property)aria-valuemin (property)aria-valuenow (property)aria-valuetext (property)6. Implementation in Host Languages6.1. General Requirements for Implementation in Host Languages6.1.1. Role Attribute6.1.2. State and Property Attributes6.1.3. Focus Navigation6.1.4. Resolving Conflicts with Host Languages6.2. Implementation Using the Modularization Recommendation7. Conformance7.1. Non-interference with the Host Language7.2. All WAI-ARIA in DOM7.3. Web Application Notification of DOM Changes8. Quality Assurance8.1. Applicable WAI-ARIA Role8.1.1. Requirement is Functional8.1.2. Overview8.1.3. Step-by-Step8.1.4. Explicit WAI-ARIA Role Rules8.2. Accessibility API Mapping8.3. Authoring Practices8.3.1. Authoring Tools8.3.2. Testing Practices and Tools8.4. Assistive Technology9. Appendices9.1. Implementations9.1.1. Roles Implementation9.1.2. ARIA Attributes Module9.1.3. Sample XHTML plus ARIA DTD9.1.4. SGML Open Catalog Entry for XHTML+ARIA9.1.5. ARIA Attributes XML Schema Module9.2. Glossary1. Introduction2. General Steps for Building an Accessible Widget with ARIA3. Keyboard and Structural Navigation3.1. Providing Keyboard Navigation for Widgets3.1.1. ARIA Keyboard Bindings and Behaviors3.1.2. Keyboard Navigation between Widgets3.1.3. Keyboard Navigation within Widgets3.1.4. Example Keyboard Operation: Radio Group/Radio 3.1.5. Other Widget Best Practices3.1.5.1. Maintain a valid format for aria-valuenow3.2. Providing Keyboard Focus3.2.1. Using Tabindex to Manage Focus among Widgets3.2.2. Using activedescendant to Manage Focus for Widget Children3.2.3. Managing Visual Focus with tabindex Alone 3.2.4. Managing Focus with Scroll 3.2.5. Author-Defined Keyboard Short-Cuts or Mnemonics 3.2.5.1. Supporting Tooltips with the Keyboard3.2.5.2. When Keyboard Handlers Shortcuts Steal the Keys3.2.6. Providing Navigable Structure within Web Pages3.2.6.1. Steps for Defining a Logical Navigational Structure3.2.6.2. Structural Roles that Facilitate Navigation with Assistive Technologies3.2.6.3. Implicit Nesting and Headings 3.2.6.3.1. Header Levels Versus Nesting Levels 3.2.6.3.2. Owns Repairs Nesting3.2.6.4. Directories, Groups, and Regions3.2.6.4.1. Directories and Their Applicability 3.2.6.4.1.1. Use of the Presentation Role versus CSS3.2.6.4.2. Groups and Their Applicability 3.2.6.4.3. Regions and Their Use 3.2.6.5. Remaining Structural Roles3.2.6.5.1. Tabular Structure-Related Roles Supporting Tabular Widgets3.2.6.5.2. Marking Descriptive Sections3.2.6.6. Miscellaneous XHTML Section Roles3.3. Making a Dialog Modal3.3.1. Trapping Focus4. Relationships4.1. Labeling and Describing4.1.1. Labeling4.1.2. Describing4.2. Owning and Controlling4.2.1. The Owns Relationship4.2.2.  Using Owns with Reusable Content4.2.3. The Controls Relationship4.3. Changing the Reading Flow5. Managing Dynamic Changes5.1. Managing Content and Presentational Changes 5.2. Implementing Live Regions 5.2.1. Live Region Properties and How to Use Them5.3. Choosing Between Special Case Live Regions6. Form Properties7. Drag-and-Drop Support 8. States and Properties Modified by an External Assistive Technology9. Design PatternsAccordion (widget)Alert (widget)Auto Complete (widget)Button (widget)Check Box (widget)Combo Box (widget)Date Picker (widget) Dialog (Modal) (widget) Dialog (Non-Modal) (widget) Dialog (Tooltip) (widget) Drag & Drop (widget)Grid (Simple Data Tables) (widget) Landmark Navigation (widget)Link (widget)Listbox (widget)Media Player (widget)Menu (widget)Menu Button (widget)Popup Menu (widget)Popup Help (aka Bubble Help) (widget)Radio Button (widget)Rich Text Editor (widget)Slider (widget)Slider (Multi-Thumb) (widget)Spinbutton (widget)Tab Panel (widget)Tree View (widget)Tool Bar (widget)Tooltip Widget (widget)Tree Grid (widget)Tree View (widget)Window Splitter (widget)Wizard (widget)10. Reusable Component Libraries 11. Appendices1. Introduction2. The Problem3. Executive Summary4. The Roadmap for filling the Gaps in Desktop Browsers4.1. Roadmap Deliverable Timeline4.2. Implementations5. The Roadmap for Middleware - A look ahead at filling the Gaps in Emerging Declarative Application Middleware5.1. External Deliverable Timeline1. Introduction1.1. The Problem1.2. Requirements1.3. Solution1.4. HTML Accessibility API Support Analysis2. Filling the Gaps for Content Delivered to Desktop Browsers2.1. Use of New Provisions for Keyboard Focus and Semantics to Support Platform Accessibility APIs2.1.1. Provision of the Role Attribute: "What is the Object?"2.1.2. Provision of the Accessibility State Information: "What meaningful properties does this object have at this time?"2.1.3. Provision of the Keyboard or Input Focus: "What object am I working on?"2.1.4. Supporting ARIA in XHTML and HTML 4.012.2. Use of XHTML Role Landmarks to Improve Document Navigation2.3. WAI-ARIA Role Taxonomy - Extensible Semantic Role Model, using RDF/OWL2.3.1. Interoperability Example: Grid Role 2.4. Accessibility Events and Event Handling2.5. HTML 5 - A Look Ahead3. Reasons for Adopting WAI-ARIA 3.1. Technical Benefits 3.2. Business Benefits 4. Conclusions5. Appendices5.1. Gap Analysis - Filling the Gaps for (X)HTML in Support of Accessibility API5.2. Long Descriptions of Figures5.2.1. Long Description of Figure 1.0 Accessibility Interoperability at a DOM Node without JavaScript5.2.2. Long Description of Figure 2.0 Accessibility Interoperability at a DOM Node with JavaScript1. Introduction1.1. Accessibility APIs 1.2. Accessible tree vs. DOM tree - what's the relation?2. Supporting Keyboard Navigation2.1. Controlling focus with tabindex2.2. Controlling focus with ARIA2.3. Handling focus changes from the AT3. Mapping ARIA to APIs3.1. General rules for exposing ARIA semantics3.2. Conflicts between native markup semantics and ARIA3.3. Exposing attributes that don’t directly map to accessibility API properties3.4. Role mapping3.5. State and Property Mapping3.6. Special Processing Requiring Additional Computation3.6.1. Name and Description3.6.1.1. Text Equivalent Computation3.6.1.2. Name Computation3.6.1.3. Description Computation3.6.2. Widget Values3.6.3. Relations3.6.4. Group Position4. Managed States4.1. Exposing Supplemental Interfaces4.2. Actions4.3. Changes to document content or node visibility4.4. Selection4.5. Menus in MSAA/IAccessible25. Special Document Handling Procedures5.1. Documents, Handling frame and iframe elements5.2. CSS Selectors6. Error Handling6.1. Definitions6.2. Value type: IDREF and IDREFS6.3. Value type: decimal6.4. UA Validation6.5. Roles6.6. States and Properties 6.7. Propagating errors to ATs7. Appendices1. Introduction1.1. Rich Internet Application Accessibility1.2. Target Audience1.3. User Agent Support1.4. Co-Evolution of WAI-ARIA and Host Languages1.5. Authoring Practices1.5.1. Authoring Tools1.5.2. Testing Practices and Tools1.6. Assistive Technologies2. Using WAI-ARIA2.1. WAI-ARIA Roles2.2. WAI-ARIA States and Properties2.3. Managing Focus3. Normative Requirements for WAI-ARIA4. Important Terms5. The Roles Model5.1. Relationships Between Concepts5.1.1. Superclass Role5.1.2. Subclass Roles5.1.3. Related Concepts5.1.4. Base Concept5.2. Characteristics of Roles5.2.1. Abstract Roles5.2.2. Required States and Properties5.2.3. Supported States and Properties5.2.4. Inherited States and Properties5.2.5. Required Owned Elements5.2.6. Required Context Role5.2.7. Accessible Name Calculation5.2.7.1. Name Computation5.2.7.2. Description Computation5.2.7.3. Text Alternative Computation5.2.7.4. Text Alternative Computation Example #15.2.7.5. Text Alternative Computation Example #25.2.8. Presentational Children5.3. Categorization of Roles5.3.1. Abstract Roles5.3.2. Widget Roles5.3.3. Document Structure5.3.4. Landmark Roles5.4. Definition of Rolesalert (role)alertdialog (role)application (role)article (role)banner (role)button (role)checkbox (role)columnheader (role)combobox (role)complementary (role)composite (abstract role)contentinfo (role)definition (role)dialog (role)directory (role)document (role)form (role)grid (role)gridcell (role)group (role)heading (role)img (role)input (abstract role)landmark (abstract role)link (role)list (role)listbox (role)listitem (role)log (role)main (role)marquee (role)math (role)menu (role)menubar (role)menuitem (role)menuitemcheckbox (role)menuitemradio (role)navigation (role)note (role)option (role)presentation (role)progressbar (role)radio (role)radiogroup (role)range (abstract role)region (role)roletype (abstract role)row (role)rowgroup (role)rowheader (role)search (role)section (abstract role)sectionhead (abstract role)select (abstract role)separator (role)scrollbar (role)slider (role)spinbutton (role)status (role)structure (abstract role)tab (role)tablist (role)tabpanel (role)textbox (role)timer (role)toolbar (role)tooltip (role)tree (role)treegrid (role)treeitem (role)widget (abstract role)window (abstract role)6. Supported States and Properties6.1. Clarification of States versus Properties6.2. Characteristics of States and Properties6.2.1. Related Concepts6.2.2. Used in Roles6.2.3. Inherits into Roles6.2.4. Value6.3. Values for States and Properties6.4. Global States and Properties6.5. Taxonomy of WAI-ARIA States and Properties6.5.1. Widget Attributes6.5.2. Live Region Attributes6.5.3. Drag-and-Drop Attributes6.5.4. Relationship Attributes6.6. Definitions of States and Properties (all aria-* attributes)aria-activedescendant (property)aria-atomic (property)aria-autocomplete (property)aria-busy (state)aria-checked (state)aria-controls (property)aria-describedby (property)aria-disabled (state)aria-dropeffect (property)aria-expanded (state)aria-flowto (property)aria-grabbed (state)aria-haspopup (property)aria-hidden (state)aria-invalid (state)aria-label (property)aria-labelledby (property)aria-level (property)aria-live (property)aria-multiline (property)aria-multiselectable (property)aria-orientation (property)aria-owns (property)aria-posinset (property)aria-pressed (state)aria-readonly (property)aria-relevant (property)aria-required (property)aria-selected (state)aria-setsize (property)aria-sort (property)aria-valuemax (property)aria-valuemin (property)aria-valuenow (property)aria-valuetext (property)7. Implementation in Host Languages7.1. Role Attribute7.2. State and Property Attributes7.3. Focus Navigation7.4. Implicit WAI-ARIA Semantics7.5. Conflicts with Host Language Semantics7.6. State and Property Attribute Processing8. Conformance8.1. Non-interference with the Host Language8.2. All WAI-ARIA in DOM8.3. Web Application Notification of DOM Changes8.4. Conformance Checkers9. References9.1. Normative References9.2. Informative References10. Appendices10.1. Schemata10.1.1. Roles Implementation10.1.2. WAI-ARIA Attributes Module10.1.3. XHTML plus WAI-ARIA DTD10.1.4. SGML Open Catalog Entry for XHTML+ARIA10.1.5. WAI-ARIA Attributes XML Schema Module10.1.6. HTML 4.01 plus WAI-ARIA DTD10.2. Mapping ARIA Value types to languages10.3. WAI-ARIA Role, State, and Property Quick Reference10.4. Acknowledgments10.4.1. Participants in the PFWG at the time of publication10.4.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification10.4.3. Enabling funders1. Introduction2. General Steps for Building an Accessible Widget with WAI-ARIA3. Keyboard and Structural Navigation3.1. Providing Keyboard Navigation for Widgets3.1.1. WAI-ARIA Keyboard Bindings and Behaviors3.1.2. Keyboard Navigation between Widgets3.1.3. Keyboard Navigation within Widgets3.1.4. Keyboard Shortcuts for Widgets3.1.5. Example Keyboard Operation: Radio Group/Radio 3.1.6. Other Widget Authoring Practices3.1.6.1. Maintain a valid format for aria-valuenow3.2. Providing Keyboard Focus3.2.1. Using Tabindex to Manage Focus among Widgets3.2.2. Using activedescendant to Manage Focus for Widget Children3.2.3. Managing Visual Focus with tabindex Alone 3.2.4. Managing Focus with Scroll3.2.5. Managing the Perception of a Dual Focus3.2.6. Author-Defined Keyboard Short-Cuts or Mnemonics 3.2.6.1. Supporting Tooltips with the Keyboard3.2.6.2. When Keyboard Handlers Shortcuts Steal the Keys3.2.7. Providing Navigable Structure within Web Pages3.2.7.1. Steps for Defining a Logical Navigational Structure3.2.7.2. Structural Roles that Facilitate Navigation with Assistive Technologies3.2.7.3. Implicit Nesting and Headings 3.2.7.3.1. Header Levels Versus Nesting Levels 3.2.7.3.2. Owns Repairs Nesting3.2.7.4. Directories, Groups, and Regions3.2.7.4.1. Directories and Their Applicability 3.2.7.4.2. Groups and Their Applicability 3.2.7.4.3. Regions and Their Use 3.2.7.5. Remaining Structural Roles3.2.7.5.1. Tabular Structure-Related Roles Supporting Tabular Widgets3.2.7.5.2. Marking Descriptive Sections3.2.7.6. Miscellaneous XHTML Section Roles3.3. Making a Dialog Modal3.3.1. Trapping Focus4. Relationships4.1. Labeling and Describing4.1.1. Labeling4.1.2. Describing4.2. Owning and Controlling4.2.1. The Owns Relationship4.2.2. Using Owns with Reusable Content4.2.3. The Controls Relationship4.3. Changing the Reading Flow4.4. Popups and drop-downs5. Managing Dynamic Changes5.1. Managing Content and Presentational Changes 5.2. Implementing Live Regions 5.2.1. Live Region Properties and How to Use Them5.3. Choosing Between Special Case Live Regions6. Form Properties7. Drag-and-Drop Support 8. States and Properties Modified by an External Assistive Technology9. Design PatternsAccordion (widget)Alert (widget)Auto Complete (widget)Button (widget)Check Box (widget)Combo Box (widget)Date Picker (widget) Dialog (Modal) (widget) Dialog (Non-Modal) (widget) Dialog (Tooltip) (widget) Drag & Drop (widget)Grid (Simple Data Tables) (widget) Landmark Navigation (widget)Link (widget)Listbox (widget)Media Player (widget)Menu (widget)Menu Button (widget)Popup Menu (widget)Popup Help (aka Bubble Help) (widget)Radio Button (widget)Rich Text Editor (widget)Slider (widget)Slider (Multi-Thumb) (widget)Spinbutton (widget)Tab Panel (widget)Tree View (widget)Tool Bar (widget)Tooltip Widget (widget)Tree Grid (widget)Tree View (widget)Window Splitter (widget)Wizard (widget)10. Reusable Component Libraries 11. Appendices11.1. References11.1.1. Informative References11.2. Acknowledgments11.2.1. Participants in the PFWG at the time of publication11.2.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification11.2.3. Enabling funders1. Introduction1.1. Accessibility APIs 1.2. The Accessible Tree and the DOM Tree2. Normative User Agent Implementation Requirements for WAI-ARIA3. Supporting Keyboard Navigation3.1. Controlling focus with tabindex3.2. Controlling focus with aria-activedescendant3.3. Handling focus changes from the Assistive Technology4. Mapping WAI-ARIA to Accessibility APIs4.1. General rules for exposing WAI-ARIA semantics4.2. Conflicts between native markup semantics and WAI-ARIA4.3. Exposing attributes that do not directly map to accessibility API properties4.4. Role mapping4.5. State and Property Mapping4.6. Special Processing Requiring Additional Computation4.6.1. Name and Description4.6.1.1. Text Alternative Computation4.6.1.2. Name Computation4.6.1.3. Description Computation4.6.2. Widget Values4.6.3. Relations4.6.3.1. Additional implied reverse relations for IAccessible2 and ATK4.6.3.2. ID Reference Error Processing4.6.4. Group Position4.7. Actions4.8. Events4.8.1. State and Property Change Events4.8.2. Changes to document content or node visibility4.8.3. Selection4.8.4. Menus in MSAA/IAccessible2/UIA5. Special Document Handling Procedures5.1. Documents, Handling frame and iframe elements5.2. CSS Selectors5.3. Author Errors6. Appendices6.1. Glossary6.2. References6.2.1. Informative References6.3. Acknowledgments6.3.1. Participants in the PFWG at the time of publication6.3.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification6.3.3. Enabling funders1. Introduction1.1. Rich Internet Application Accessibility1.2. Target Audience1.3. User Agent Support1.4. Co-Evolution of WAI-ARIA and Host Languages1.5. Authoring Practices1.5.1. Authoring Tools1.5.2. Testing Practices and Tools1.6. Assistive Technologies2. Using WAI-ARIA2.1. WAI-ARIA Roles2.2. WAI-ARIA States and Properties2.3. Managing Focus3. Normative Requirements for WAI-ARIA4. Important Terms5. The Roles Model5.1. Relationships Between Concepts5.1.1. Superclass Role5.1.2. Subclass Roles5.1.3. Related Concepts5.1.4. Base Concept5.2. Characteristics of Roles5.2.1. Abstract Roles5.2.2. Required States and Properties5.2.3. Supported States and Properties5.2.4. Inherited States and Properties5.2.5. Required Owned Elements5.2.6. Required Context Role5.2.7. Accessible Name Calculation5.2.7.1. Name Computation5.2.7.2. Description Computation5.2.7.3. Text Alternative Computation5.2.7.4. Text Alternative Computation Example #15.2.7.5. Text Alternative Computation Example #25.2.8. Presentational Children5.3. Categorization of Roles5.3.1. Abstract Roles5.3.2. Widget Roles5.3.3. Document Structure5.3.4. Landmark Roles5.4. Definition of Rolesalert (role)alertdialog (role)application (role)article (role)banner (role)button (role)checkbox (role)columnheader (role)combobox (role)command (abstract role)complementary (role)composite (abstract role)contentinfo (role)definition (role)dialog (role)directory (role)document (role)form (role)grid (role)gridcell (role)group (role)heading (role)img (role)input (abstract role)landmark (abstract role)link (role)list (role)listbox (role)listitem (role)log (role)main (role)marquee (role)math (role)menu (role)menubar (role)menuitem (role)menuitemcheckbox (role)menuitemradio (role)navigation (role)note (role)option (role)presentation (role)progressbar (role)radio (role)radiogroup (role)range (abstract role)region (role)roletype (abstract role)row (role)rowgroup (role)rowheader (role)search (role)section (abstract role)sectionhead (abstract role)select (abstract role)separator (role)scrollbar (role)slider (role)spinbutton (role)status (role)structure (abstract role)tab (role)tablist (role)tabpanel (role)textbox (role)timer (role)toolbar (role)tooltip (role)tree (role)treegrid (role)treeitem (role)widget (abstract role)window (abstract role)6. Supported States and Properties6.1. Clarification of States versus Properties6.2. Characteristics of States and Properties6.2.1. Related Concepts6.2.2. Used in Roles6.2.3. Inherits into Roles6.2.4. Value6.3. Values for States and Properties6.4. Global States and Properties6.5. Taxonomy of WAI-ARIA States and Properties6.5.1. Widget Attributes6.5.2. Live Region Attributes6.5.3. Drag-and-Drop Attributes6.5.4. Relationship Attributes6.6. Definitions of States and Properties (all aria-* attributes)aria-activedescendant (property)aria-atomic (property)aria-autocomplete (property)aria-busy (state)aria-checked (state)aria-controls (property)aria-describedby (property)aria-disabled (state)aria-dropeffect (property)aria-expanded (state)aria-flowto (property)aria-grabbed (state)aria-haspopup (property)aria-hidden (state)aria-invalid (state)aria-label (property)aria-labelledby (property)aria-level (property)aria-live (property)aria-multiline (property)aria-multiselectable (property)aria-orientation (property)aria-owns (property)aria-posinset (property)aria-pressed (state)aria-readonly (property)aria-relevant (property)aria-required (property)aria-selected (state)aria-setsize (property)aria-sort (property)aria-valuemax (property)aria-valuemin (property)aria-valuenow (property)aria-valuetext (property)7. Implementation in Host Languages7.1. Role Attribute7.2. State and Property Attributes7.3. Focus Navigation7.4. Implicit WAI-ARIA Semantics7.5. Conflicts with Host Language Semantics7.6. State and Property Attribute Processing8. Conformance8.1. Non-interference with the Host Language8.2. All WAI-ARIA in DOM8.3. Web Application Notification of DOM Changes8.4. Conformance Checkers9. References9.1. Normative References9.2. Informative References10. Appendices10.1. Schemata10.1.1. Roles Implementation10.1.2. WAI-ARIA Attributes Module10.1.3. XHTML plus WAI-ARIA DTD10.1.4. SGML Open Catalog Entry for XHTML+ARIA10.1.5. WAI-ARIA Attributes XML Schema Module10.1.6. HTML 4.01 plus WAI-ARIA DTD10.2. Mapping WAI-ARIA Value types to languages10.3. WAI-ARIA Role, State, and Property Quick Reference10.4. Acknowledgments10.4.1. Participants in the PFWG at the time of publication10.4.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification10.4.3. Enabling funders1. Introduction2. General Steps for Building an Accessible Widget with WAI-ARIA3. Keyboard and Structural Navigation3.1. Providing Keyboard Navigation for Widgets3.1.1. WAI-ARIA Keyboard Bindings and Behaviors3.1.2. Keyboard Navigation between Widgets3.1.3. Keyboard Navigation within Widgets3.1.4. Keyboard Shortcuts for Widgets3.1.5. Example Keyboard Operation: Radio Group/Radio 3.1.6. Other Widget Authoring Practices3.1.6.1. Maintain a valid format for aria-valuenow3.2. Providing Keyboard Focus3.2.1. Using Tabindex to Manage Focus among Widgets3.2.2. Using activedescendant to Manage Focus for Widget Children3.2.3. Managing Visual Focus with tabindex Alone 3.2.4. Managing Focus with Scroll3.2.5. Managing the Perception of a Dual Focus3.2.6. Author-Defined Keyboard Short-Cuts or Mnemonics 3.2.6.1. Supporting Tooltips with the Keyboard3.2.6.2. When Keyboard Handlers Shortcuts Steal the Keys3.2.7. Providing Navigable Structure within Web Pages3.2.7.1. Steps for Defining a Logical Navigational Structure3.2.7.2. Structural Roles that Facilitate Navigation with Assistive Technologies3.2.7.3. Implicit Nesting and Headings 3.2.7.3.1. Header Levels Versus Nesting Levels 3.2.7.3.2. Owns Repairs Nesting3.2.7.4. Directories, Groups, and Regions3.2.7.4.1. Directories and Their Applicability 3.2.7.4.2. Groups and Their Applicability 3.2.7.4.3. Regions and Their Use 3.2.7.5. Remaining Structural Roles3.2.7.5.1. Tabular Structure-Related Roles Supporting Tabular Widgets3.2.7.5.2. Marking Descriptive Sections3.2.7.6. Miscellaneous XHTML Section Roles3.3. Making a Dialog Modal3.3.1. Trapping Focus4. Relationships4.1. Labeling and Describing4.1.1. Labeling4.1.2. Describing4.1.2.1. Using aria-describedby4.1.2.2. Using a tooltip as a description4.1.2.3. Descriptions on external pages4.2. Owning and Controlling4.2.1. The Owns Relationship4.2.2. Using Owns with Reusable Content4.2.3. The Controls Relationship4.3. Changing the Reading Flow4.4. Popups and drop-downs5. Managing Dynamic Changes5.1. Managing Content and Presentational Changes 5.2. Implementing Live Regions 5.2.1. Live Region Properties and How to Use Them5.3. Choosing Between Special Case Live Regions6. Form Properties7. Math8. Drag-and-Drop Support 9. States and Properties Modified by an External Assistive Technology10. Design PatternsAccordion (widget)Alert (widget)Auto Complete (widget)Button (widget)Check Box (widget)Combo Box (widget)Date Picker (widget) Dialog (Modal) (widget) Dialog (Non-Modal) (widget) Dialog (Tooltip) (widget) Drag & Drop (widget)Grid (Simple Data Tables) (widget) Landmark Navigation (widget)Link (widget)Listbox (widget)Media Player (widget)Menu (widget)Menu Button (widget)Popup Menu (widget)Popup Help (aka Bubble Help) (widget)Radio Button (widget)Rich Text Editor (widget)Slider (widget)Slider (Multi-Thumb) (widget)Spinbutton (widget)Tab Panel (widget)Tool Bar (widget)Tooltip Widget (widget)Tree Grid (widget)Tree View (widget)Window Splitter (widget)Wizard (widget)11. Reusable Component Libraries 12. Appendices12.1. References12.1.1. Informative References12.2. Acknowledgments12.2.1. Participants in the PFWG at the time of publication12.2.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification12.2.3. Enabling funders1. Introduction1.1. The Problem1.2. Requirements1.3. Solution1.4. HTML Accessibility API Support Analysis2. Filling the Gaps for Content Delivered to Desktop Browsers2.1. Use of New Provisions for Keyboard Focus and Semantics to Support Platform Accessibility APIs2.1.1. Provision of the Role Attribute: "What is the Object?"2.1.2. Provision of the Accessibility State Information: "What meaningful properties does this object have at this time?"2.1.3. Provision of the Keyboard or Input Focus: "What object am I working on?"2.1.4. Supporting WAI-ARIA in XHTML and HTML 4.012.2. Use of XHTML Role Landmarks to Improve Document Navigation2.3. WAI-ARIA Role Taxonomy - Extensible Semantic Role Model, using RDF/OWL2.3.1. Interoperability Example: Grid Role 2.4. Accessibility Events and Event Handling2.5. HTML 5 - A Look Ahead3. Building Accessible Applications with WAI-ARIA3.1. Example: Building a Tree Widget4. Reasons for Adopting WAI-ARIA 4.1. Technical Benefits 4.2. Business Benefits 5. Conclusions6. Appendices6.1. Gap Analysis - Filling the Gaps for (X)HTML in Support of Accessibility API6.2. Long Descriptions of Figures6.2.1. Long Description of Figure 1.0 Accessibility Interoperability at a DOM Node without JavaScript6.2.2. Long Description of Figure 2.0 Accessibility Interoperability at a DOM Node with JavaScript6.3. References6.3.1. Informative References6.4. Acknowledgments6.4.1. Participants in the PFWG at the time of publication6.4.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification6.4.3. Enabling funders1. Introduction1.1. Accessibility APIs 1.2. The Accessible Tree and the DOM Tree2. Normative User Agent Implementation Requirements for WAI-ARIA3. Supporting Keyboard Navigation3.1. Controlling focus with tabindex3.2. Controlling focus with aria-activedescendant3.3. Handling focus changes from the Assistive Technology4. Mapping WAI-ARIA to Accessibility APIs4.1. General rules for exposing WAI-ARIA semantics4.2. Conflicts between native markup semantics and WAI-ARIA4.3. Exposing attributes that do not directly map to accessibility API properties4.4. Role mapping4.5. State and Property Mapping4.6. Special Processing Requiring Additional Computation4.6.1. Name and Description4.6.1.1. Text Alternative Computation4.6.1.2. Name Computation4.6.1.3. Description Computation4.6.2. Widget Values4.6.3. Relations4.6.3.1. Additional implied reverse relations for IAccessible2 and ATK4.6.3.2. ID Reference Error Processing4.6.4. Group Position4.7. Actions4.8. Events4.8.1. State and Property Change Events4.8.2. Changes to document content or node visibility4.8.3. Selection4.8.4. Special Events for Menus5. Special Document Handling Procedures5.1. Documents, Handling frame and iframe elements5.2. CSS Selectors5.3. Author Errors6. Appendices6.1. Glossary6.2. References6.2.1. Informative References6.3. Acknowledgments6.3.1. Participants in the PFWG at the time of publication6.3.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification6.3.3. Enabling funders1. Introduction2. Conformance2.1 Document Conformance2.2 Host Language Conformance3. The Role Attribute3.1 Extending the collection of rolesA. Using Role in conjunction with RDFaB. XHTML Role Attribute ModuleB.1 DTD ImplementationB.1.1 Qualified Names ModuleB.2 Schema ImplementationB.2.1 Attributes ModuleC. AcknowledgmentsD. ReferencesD.1 Normative referencesD.2 Informative references1. Introduction1.1. Rich Internet Application Accessibility1.2. Target Audience1.3. User Agent Support1.4. Co-Evolution of WAI-ARIA and Host Languages1.5. Authoring Practices1.5.1. Authoring Tools1.5.2. Testing Practices and Tools1.6. Assistive Technologies2. Using WAI-ARIA2.1. WAI-ARIA Roles2.2. WAI-ARIA States and Properties2.3. Managing Focus3. Normative Requirements for WAI-ARIA4. Important Terms5. The Roles Model5.1. Relationships Between Concepts5.1.1. Superclass Role5.1.2. Subclass Roles5.1.3. Related Concepts5.1.4. Base Concept5.2. Characteristics of Roles5.2.1. Abstract Roles5.2.2. Required States and Properties5.2.3. Supported States and Properties5.2.4. Inherited States and Properties5.2.5. Required Owned Elements5.2.6. Required Context Role5.2.7. Accessible Name Calculation5.2.7.1. Name Computation5.2.7.2. Description Computation5.2.7.3. Text Alternative Computation5.2.7.4. Text Alternative Computation Example #15.2.7.5. Text Alternative Computation Example #25.2.8. Presentational Children5.3. Categorization of Roles5.3.1. Abstract Roles5.3.2. Widget Roles5.3.3. Document Structure5.3.4. Landmark Roles5.4. Definition of Rolesalert (role)alertdialog (role)application (role)article (role)banner (role)button (role)checkbox (role)columnheader (role)combobox (role)command (abstract role)complementary (role)composite (abstract role)contentinfo (role)definition (role)dialog (role)directory (role)document (role)form (role)grid (role)gridcell (role)group (role)heading (role)img (role)input (abstract role)landmark (abstract role)link (role)list (role)listbox (role)listitem (role)log (role)main (role)marquee (role)math (role)menu (role)menubar (role)menuitem (role)menuitemcheckbox (role)menuitemradio (role)navigation (role)note (role)option (role)presentation (role)progressbar (role)radio (role)radiogroup (role)range (abstract role)region (role)roletype (abstract role)row (role)rowgroup (role)rowheader (role)search (role)section (abstract role)sectionhead (abstract role)select (abstract role)separator (role)scrollbar (role)slider (role)spinbutton (role)status (role)structure (abstract role)tab (role)tablist (role)tabpanel (role)textbox (role)timer (role)toolbar (role)tooltip (role)tree (role)treegrid (role)treeitem (role)widget (abstract role)window (abstract role)6. Supported States and Properties6.1. Clarification of States versus Properties6.2. Characteristics of States and Properties6.2.1. Related Concepts6.2.2. Used in Roles6.2.3. Inherits into Roles6.2.4. Value6.3. Values for States and Properties6.4. Global States and Properties6.5. Taxonomy of WAI-ARIA States and Properties6.5.1. Widget Attributes6.5.2. Live Region Attributes6.5.3. Drag-and-Drop Attributes6.5.4. Relationship Attributes6.6. Definitions of States and Properties (all aria-* attributes)aria-activedescendant (property)aria-atomic (property)aria-autocomplete (property)aria-busy (state)aria-checked (state)aria-controls (property)aria-describedby (property)aria-disabled (state)aria-dropeffect (property)aria-expanded (state)aria-flowto (property)aria-grabbed (state)aria-haspopup (property)aria-hidden (state)aria-invalid (state)aria-label (property)aria-labelledby (property)aria-level (property)aria-live (property)aria-multiline (property)aria-multiselectable (property)aria-orientation (property)aria-owns (property)aria-posinset (property)aria-pressed (state)aria-readonly (property)aria-relevant (property)aria-required (property)aria-selected (state)aria-setsize (property)aria-sort (property)aria-valuemax (property)aria-valuemin (property)aria-valuenow (property)aria-valuetext (property)7. Implementation in Host Languages7.1. Role Attribute7.2. State and Property Attributes7.3. Focus Navigation7.4. Implicit WAI-ARIA Semantics7.5. Conflicts with Host Language Semantics7.6. State and Property Attribute Processing8. Conformance8.1. Non-interference with the Host Language8.2. All WAI-ARIA in DOM8.3. Assistive Technology Notifications Communicated to Web Applications8.4. Conformance Checkers9. References9.1. Normative References9.2. Informative References10. Appendices10.1. Schemata10.1.1. Roles Implementation10.1.2. WAI-ARIA Attributes Module10.1.3. XHTML plus WAI-ARIA DTD10.1.4. SGML Open Catalog Entry for XHTML+ARIA10.1.5. WAI-ARIA Attributes XML Schema Module10.1.6. HTML 4.01 plus WAI-ARIA DTD10.2. Mapping WAI-ARIA Value types to languages10.3. WAI-ARIA Role, State, and Property Quick Reference10.4. Acknowledgments10.4.1. Participants in the PFWG at the time of publication10.4.2. Other previously active PFWG participants and other contributors to the Accessible Rich Internet Applications specification10.4.3. Enabling funders1. Introduction2. Conformance2.1 Document Conformance2.2 Host Language Conformance3. The Role Attribute3.1 Extending the collection of rolesA. Using Role in conjunction with RDFaB. XHTML Role Attribute ModuleB.1 DTD ImplementationB.1.1 Qualified Names ModuleB.2 Schema ImplementationB.2.1 Attributes ModuleC. AcknowledgmentsD. ReferencesD.1 Normative referencesD.2 Informative references1. Introduction1.1. Accessibility APIs 1.2. The Accessibility Tree and the DOM Tree2. Normative User Agent Implementation Requirements for WAI-ARIA3. Important Terms4. Supporting Keyboard Navigation4.1. Focus States and Events Table4.2. Controlling focus with tabindex4.3. Controlling focus with aria-activedescendant4.4. Handling focus changes from the Assistive Technology5. Mapping WAI-ARIA to Accessibility APIs5.1. General rules for exposing WAI-ARIA semantics5.1.1. Including Elements in the Accessibility Tree5.1.2. Excluding Elements from the Accessibility Tree5.1.3. Notification of State Changes5.2. Conflicts between native markup semantics and WAI-ARIA5.3. Exposing attributes that do not directly map to accessibility API properties5.4. Role mapping5.4.1. Role Mapping Table5.5. State and Property Mapping5.5.1. State and Property Mapping Table5.6. Special Processing Requiring Additional Computation5.6.1. Name and Description5.6.1.1. Name Computation5.6.1.2. Description Computation5.6.1.3. Text Alternative Computation5.6.2. Widget Values5.6.3. Relations5.6.3.1. ID Reference Error Processing5.6.3.2. Reverse Relations5.6.3.3. Implied reverse relations5.6.4. Group Position5.7. Actions5.8. Events5.8.1. State and Property Change Events5.8.2. Changes to document content or node visibility5.8.3. Selection5.8.4. Special Events for Menus6. Special Document Handling Procedures6.1. CSS Selectors6.2. Author Errors7. Appendices7.1. References7.1.1. Normative References7.1.2. Informative References
Commenter: Shadi Abou-ZahraDavid BaronArt BarstowJudy BrewerLaura CarlsonSofia Celic-LiCharles ChenMichael CooperDeborah DahlErik DahlströmMandana EibeggerSteve FaulknerIan FeltonKelly FordGuido GelosoAli GhassemiBecky GibsonScott GonzálezJames GrahamLoretta Guarino ReidBenjamin Hawkes-LewisJan HeckShawn HenryIan HicksonHans HillenTina HolmboeTakahiro InadaJim JewittJosé KahanMarjolein KatsmaMarjolein KatsmaKazuhito KidachiMatthew KingTodd KlootsJohannes KochSam KuperPhilippe Le HegaretChris LilleyCarolyn MacLeodKrzysztof MaczyĹ„skiMark MagennisShane McCarronCharles McCathieNevileSHIGETOYO NOMURAKiyochika NakamuraKoichi NakamuraSailesh PanchangSimon PietersIan PounceyShelley PowersJan RichardsGregory RosmaitaDoug SchepersJoseph ScheuhammerLeif Halvard SilliHenri SivonenVille SkyttäMichael[tm] SmithNeil SoifferMaciej StachowiakChristophe StrobbeSuzanne TaylorTerrill ThompsonDavid ToddCarlos A. VelascoEvangelos VlachogiannisAnne van Kesteren
Organization: AUWGApTestEOWGGoogleIBMMMI WGNCBI CFITOperaPFWGRDFA WGSVG WGUAAG WGWCAG WGXHTML WG
Include closed comments