Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

Embed Size (px)

Citation preview

  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    1/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 1 ttp://www.w3.org/TR/wai-aria/

    Accessible Rich Internet Applications (WAI-ARIA)Version 1.0

    W3C Working Draft 4 February 2008

    This version:http://www.w3.org/TR/2008/WD-wai-aria-20080204/

    Latest version:http://www.w3.org/TR/wai-aria/

    Editors:Lisa Seeman, UB AccessMichael Cooper, W3CRich Schwerdtfeger,IBMLisa Pappas, SAS

    Copyright 2008 W3C(MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademarkand documentuserules apply.

    Abstract

    Accessibility of Web content to people with disabilities requires semantic informationabout widgets, structures, and behaviors, in order to allow Assistive Technologies tomake appropriate transformations. This specification provides an ontology of roles,states, and properties that set out an abstract model for accessible interfaces and can beused to improve the accessibility and interoperability of Web Content and Applications.This information can be mapped to accessibility frameworks that use this information toprovide alternative access solutions. Similarly, this information can be used to change therendering of content dynamically using different style sheet properties. The result is aninteroperable method for associating behaviors with document-level markup. Thisdocument is part of the WAI-ARIA suite described in the WAI-ARIA Overview.

    Status of This Document

    This section describes the status of this document at the time of its publication. Otherdocuments may supersede this document. A list of current W3C publications and the

    latest revision of this technical report can be found in the W3C technical reports indexathttp://www.w3.org/TR/.

    This document is a First Public Working Draft by the Protocols & Formats Working Groupof the Web Accessibility Initiative. This is a single specification that combines the twopreviously-published ARIA draft specifications, Roles for Accessible Rich InternetApplications (WAI-ARIA Roles)and the States and Properties Module for AccessibleRich Internet Applications (WAI-ARIA States and Properties) . The interdependenciesbetween those two documents required familiarity with both to understand either, andcombining them eliminates the redundancies that were necessary to support them asstandalone specifications.

    The Working Group believes that development of this specification is mostly complete.This draft is being published to allow for public review prior to entering finalization stagesand to support ongoing discussion with other Working Groups about the impact of thisspecification on other W3C technologies. Refer to the history of changes to WAI-ARIARolesand to the history of changes to WAI-ARIA States and Propertiesfor more details.

    The content of the WAI-ARIA specification depends on specialized knowledge ofassistive technology and accessibility APIs. To facilitate understanding andimplementation, there are two companion documents: WAI-ARIA Primer[ARIA-PRIMER], and WAI-ARIA Best Practices[ARIA-PRACTICES]. The WAI-ARIA Primerprovides a basic introduction to the concepts behind and reason for ARIA, and the WAI-ARIA Best Practices describe recommended usage patterns for Web content developers.Please consider these documents as one of the potential places of clarification wheretopics appear to be unclear. Note, however, that only this specification is intended tobecome a W3C Recommendation and therefore is the only one that is normative forimplementations.

    Feedback on the model set out here is important to the success of the Web community increating accessible Rich Internet Applications. The PFWG would like to know, in

    http://www.w3.org/TR/wai-aria/#ref_ARIA-PRIMERhttp://www.w3.org/WAI/PF/GUI/change-historyhttp://www.w3.org/WAI/PF/adaptable/change-historyhttp://www.w3.org/TR/2007/WD-aria-state-20071019/http://www.w3.org/TR/2007/WD-aria-role-20071019/http://www.w3.org/WAI/intro/aria.phphttp://www.w3.org/Consortium/Legal/copyright-documentsmailto:[email protected]://www.ubaccess.com/http://www.w3.org/TR/wai-aria/http://www.w3.org/TR/2008/WD-wai-aria-20080204/http://www.w3.org/http://www.w3.org/TR/wai-aria/#ref_ARIA-PRACTICEShttp://www.w3.org/TR/wai-aria/#ref_ARIA-PRIMERhttp://www.w3.org/TR/2008/WD-wai-aria-practices-20080204/http://www.w3.org/TR/2008/WD-wai-aria-primer-20080204/http://www.w3.org/WAI/PF/adaptable/change-historyhttp://www.w3.org/WAI/PF/GUI/change-historyhttp://www.w3.org/WAI/http://www.w3.org/TR/2007/WD-aria-state-20071019/http://www.w3.org/WAI/PF/http://www.w3.org/TR/2007/WD-aria-role-20071019/http://www.w3.org/TR/http://www.w3.org/WAI/intro/aria.phphttp://www.ercim.org/http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarkshttp://www.csail.mit.edu/http://www.w3.org/Consortium/Legal/copyright-documentshttp://www.w3.org/http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimerhttp://www.w3.org/Consortium/Legal/ipr-notice#Copyrighthttp://www.keio.ac.jp/http://www.ubaccess.com/mailto:[email protected]://www.w3.org/TR/wai-aria/http://www.w3.org/TR/2008/WD-wai-aria-20080204/http://www.w3.org/
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    2/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 2 ttp://www.w3.org/TR/wai-aria/

    particular:

    Does the role ontology provide the information and operations that people withdisabilities need in order to access and operate richly interactive Web applications?Is the usage of roles clear?Is the usage of states and properties clear?Is it clear how to create Rich Internet Applications with this added capability?Will WAI-ARIA features combine well with host languages?What information should be enhanced in the Best Practices or Primer, and whatneeds clarification within this specification?

    When addressing these questions, please consider them in the context of the companion

    documents. Comments on this document may be sent to [email protected](Archive). Comments should be made by 3 March 2008. If possible, the Working Grouprequests that comments be made by 20 February 2008 to facilitate handling of commentsat a scheduled meeting. However, comments arriving after that date will still beconsidered.

    Publication as a Working Draft does not imply endorsement by the W3C Membership.This is a draft document and may be updated, replaced or obsoleted by other documentsat any time. It is inappropriate to cite this document as other than work in progress.

    This document was produced by a group operating under the 5 February 2004 W3CPatent Policy. W3C maintains a public list of any patent disclosuresmade in connectionwith the deliverables of the group; that page also includes instructions for disclosing apatent. An individual who has actual knowledge of a patent which the individual believescontains Essential Claim(s)must disclose the information in accordance with section 6 ofthe W3C Patent Policy.

    The disclosure obligations of the Participants of this group are described in the charter.

    Table of Contents

    1 Introduction1.1 About This Draft1.2 Use Cases1.3 Design Aims

    2 Using WAI-ARIA2.1 WAI-ARIA Roles2.2 WAI-ARIA States and Properties2.3 Building Accessible Applications with WAI-ARIA2.4 Example: building a tree widget

    3 The RDF Roles Model3.1 Relationships between concepts3.2 Role Characteristics3.3 Global States and Properties

    3.4 Roles3.4.1 Base Types3.4.2 User Input Controls3.4.3 User Interface Elements3.4.4 Document Structure3.4.5 Specialized Regions3.4.6 Landmark Roles Inherited from the XHTML Role Attribute Module

    4 Supported States and Properties4.1 Characteristics of States and Properties4.2 Definitions for States and Properties

    4.2.1 Widget states and properties4.2.2 Live Regions4.2.3 Drag and Drop4.2.4 Focus4.2.5 Relationships4.2.6 User interface properties

    5 Implementation in Host Languages

    5.1 Implementation in HTML and other markup languages without requiringnamespace support5.2 Implementation using namespaces

    5.2.1 The States and Properties Module5.2.2 Using ARIA in other Namespace-aware XML Languages

    6 Conformance Requirements6.1 Document Conformance6.2 User Agent Conformance

    7 Appendices7.1 Implementations

    7.1.1 Roles Implementation7.1.2 Qualified Names Module7.1.3 ELEMENTS XHTML 1.1 For Accessible Adaptable Applications

    http://www.w3.org/TR/wai-aria/#xhtml_elements_dtdhttp://www.w3.org/TR/wai-aria/#qnameshttp://www.w3.org/TR/wai-aria/#a_impl_roleshttp://www.w3.org/TR/wai-aria/#a_implementationhttp://www.w3.org/TR/wai-aria/#appendiceshttp://www.w3.org/TR/wai-aria/#uaconfhttp://www.w3.org/TR/wai-aria/#docconfhttp://www.w3.org/TR/wai-aria/#s_event_module_conformancehttp://www.w3.org/TR/wai-aria/#impl_namespace_generalhttp://www.w3.org/TR/wai-aria/#modulehttp://www.w3.org/TR/wai-aria/#impl_namespacehttp://www.w3.org/TR/wai-aria/#impl_nonamespacehttp://www.w3.org/TR/wai-aria/#implementationhttp://www.w3.org/TR/wai-aria/#uipropshttp://www.w3.org/TR/wai-aria/#relationshipshttp://www.w3.org/TR/wai-aria/#focushttp://www.w3.org/TR/wai-aria/#dragdrophttp://www.w3.org/TR/wai-aria/#liveregionshttp://www.w3.org/TR/wai-aria/#widgetshttp://www.w3.org/TR/wai-aria/#state_prop_defhttp://www.w3.org/TR/wai-aria/#state_prop_atthttp://www.w3.org/TR/wai-aria/#supportedhttp://www.w3.org/TR/wai-aria/#roleattribute_inheritshttp://www.w3.org/TR/wai-aria/#regionshttp://www.w3.org/TR/wai-aria/#structuralhttp://www.w3.org/TR/wai-aria/#uihttp://www.w3.org/TR/wai-aria/#userinputhttp://www.w3.org/TR/wai-aria/#taxonomichttp://www.w3.org/TR/wai-aria/#roleshttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#Propertieshttp://www.w3.org/TR/wai-aria/#relationshipsconceptshttp://www.w3.org/TR/wai-aria/#role_modelhttp://www.w3.org/TR/wai-aria/#Exampletreehttp://www.w3.org/TR/wai-aria/#buildingaccessibleapplicationshttp://www.w3.org/TR/wai-aria/#introstateshttp://www.w3.org/TR/wai-aria/#Using_introhttp://www.w3.org/TR/wai-aria/#Usinghttp://www.w3.org/TR/wai-aria/#designhttp://www.w3.org/TR/wai-aria/#usecaseshttp://www.w3.org/TR/wai-aria/#Abouthttp://www.w3.org/TR/wai-aria/#introhttp://www.w3.org/WAI/PF/charter200612#Patentshttp://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosurehttp://www.w3.org/Consortium/Patent-Policy-20040205/http://www.w3.org/2004/01/pp-impl/32212/statushttp://www.w3.org/Consortium/Patent-Policy-20040205/#def-essentialhttp://lists.w3.org/Archives/Public/public-pfwg-comments/mailto:[email protected]?Subject=Comment%20on%20WAI-ARIA%20Role
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    3/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 3 ttp://www.w3.org/TR/wai-aria/

    DTD7.1.4 XHTML 1.1 For Accessible Adaptable Applications DTD

    7.2 Glossary7.3 References7.4 Acknowledgments

    7.4.1 Participants active in the PFWG at the time of publication7.4.2 Other previously active PFWG participants and other contributorsto the Accessible Rich Internet Applications specification7.4.3 Enabling funders

    1 Introduction

    This section is informative.

    The domain of Web accessibility defines how to make Web content usable by peoplewith disabilities. People with some types of disabilities use Assistive Technology (AT) tointeract with content. AT can transform the presentation of content into a format moresuitable to the user, and can allow the user to interact in different ways than the authordesigned. In order to accomplish this, AT must understand the semantics of the content.Semantics are knowledge of roles, states, and properties, as a person would understandthem, that apply to elements within the content. For instance, if a paragraph issemantically identified as such, AT can interact with it as a unit separable from the rest ofthe content, knowing the exact boundaries of that paragraph. A slider or tree control is amore complex example, in which various parts of a widget each have semantics thatmust be properly identified for the computer to support effective interaction.

    Established content technologies define semantics for elements commonly used in thosetechnologies. However, new technologies can overlook some of the semantics requiredfor accessibility. Furthermore, new authoring practices evolve which override theintended semanticselements that have one defined semantic meaning in thetechnology are used with a different semantic meaning intended to be understood by theuser.

    For example, Rich Internet Applications developers can create a tree control in HTMLusing CSS and JavaScript even though HTML lacks a semantic element for that. Adifferent element must be used, possibly a list element with display instructions to make itlook and behave like a tree control. Assistive technology, however, must re-present theelement in a different modality and the display instructions may not be applicable. The ATwill present it as a list, which has very different display and interaction from a tree control,and the user may be unsuccessful at understanding and operating the control.

    The incorporation of Roles for Accessible Rich Internet Applications is a way for anauthor to provide proper type semantics on custom widgets (elements with repurposedsemantics) to make these widgets accessible, usable and interoperable with assistivetechnologies. This specification identifies the types of widgets and structures that arerecognized by accessibility products, by providing an ontology of corresponding roles that

    can be attached to content. This allows elements with a given role to be understood as aparticular widget or structural type regardless of any semantic inherited from theimplementing technology. Roles are a common property of platform Accessibility APIswhich applications use to support assistive technologies. Assistive technology can thenuse the role information to provide effective presentation and interaction with theseelements.

    This role taxonomy currently includes interaction widget (user interface controls) andstructural document (content organization) objects. The role taxonomy describesinheritance (widgets that are types of other widgets) and details what states andproperties each role supports. When possible, information is provided about mapping ofroles to accessibility APIs.

    Roles are element types and should not change with time or user actions. Changing therole on an element from its initial value will confuse an assistive technology. Platformaccessibility APIs, to which the roles are mapped by the browser, do not provide avehicle to notify the assistive technology of a role type changing. If the old element type

    is be replaced by a new one, the corresponding element and its subtree should beremoved from the document and a new one inserted containing the new role type.

    Changeable states and properties of elements are also defined in this specification.States and Properties are used to declare important properties of an element that affectand describe interaction. These properties enable the user agent or operating system toproperly handle the element even when these properties are altered dynamically byscripts. For example, alternative input and output technology such as screen readers,speech dictation software and on-screen keyboards must recognize the state of anelement (such as: if an object is disabled, checked, focused, collapsed, hidden, etc.).

    While it is possible for assistive technologies to access these properties through theDocument Object Model [DOM], the preferred mechanism is for the user agent to map

    http://www.w3.org/TR/wai-aria/#ack_fundershttp://www.w3.org/TR/wai-aria/#ack_othershttp://www.w3.org/TR/wai-aria/#ack_grouphttp://www.w3.org/TR/wai-aria/#acknowledgmentshttp://www.w3.org/TR/wai-aria/#referenceshttp://www.w3.org/TR/wai-aria/#Termshttp://www.w3.org/TR/wai-aria/#xhtml_dtdhttp://www.w3.org/TR/wai-aria/#xhtml_elements_dtd
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    4/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 4 ttp://www.w3.org/TR/wai-aria/

    the States and Properties to the accessibility API of the operating system.

    Figure 1.0 illustrates a typical Document Object Model (DOM)[DOM] node. Placed withinthe DOM node and the assistive technology is a box containing the contract provided bythe user agent to the assistive technology. This data includes typical accessibilityinformation found in the accessibility API for many of our accessible platforms for GUIs(role, state, caret, selection, event notification, parent/child information, relationship, anddescriptions).

    Figure 1: The contract model with accessibility APIs

    For more information see the Roadmap for Accessible Rich Internet Applicationsfor theuse of roles in making interactive content accessible.

    In addition to the prose documentation, the role taxonomy is provided in Web OntologyLanguage (OWL)[OWL], which is an implementation of Resource DescriptionFramework (RDF)[RDF]. Tools can use these to validate the implementation of roles in a

    given content document.

    Note: the use of RDF/OWL as a formal representation of roles is intended tosupport future extensibility. Standard RDF/OWL mechanisms can be used todefine new roles that inherit from the roles defined in this specification. Themechanism to define and use role extensions in an interoperable manner,however, is not defined by this specification. A future version of ARIA Roles isexpected to define how to extend roles.

    1.1 About This Draft

    This section is informative.

    This draft currently handles two aspects of roles: GUI functionality and structuralrelationships of the element. For more information see the Roadmap for Accessible RichInternet Applications[ARIA-ROADMAP] for the use of roles in making interactive contentaccessible.

    This taxonomy is designed in-part to support the common roles found in platformaccessibility APIs. Reference to roles found in this taxonomy by dynamic Web contentmay be used to support interoperability with assistive technologies.

    The schema to support this standard has been designed to be extended so that customroles can be created by extending base roles. This allows user agents to support at leastthe base role, and user agents that support the custom role can provide enhancedaccess. Note that much of this could be formalized in XML Schema[XSD]. However,being able to define similarities between roles, such as baseConceptsand moredescriptive definitions would not be available in XSD. While this extensibility is possible,this version of the specification does not define how this extension is to be achieved.

    http://www.w3.org/TR/wai-aria/#ref_XSDhttp://www.w3.org/TR/wai-aria/#baseConcepthttp://www.w3.org/TR/2004/REC-xmlschema-0-20041028/http://www.w3.org/TR/2008/WD-wai-aria-roadmap-20080204/http://www.w3.org/TR/wai-aria/#ref_ARIA-ROADMAPhttp://www.w3.org/TR/2004/REC-owl-features-20040210/http://www.w3.org/TR/wai-aria/#ref_OWLhttp://www.w3.org/TR/wai-aria/#ref_RDFhttp://www.w3.org/TR/2004/REC-rdf-concepts-20040210/http://www.w3.org/TR/aria-roadmap/http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/http://www.w3.org/TR/wai-aria/#ref_DOM
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    5/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 5 ttp://www.w3.org/TR/wai-aria/

    WAI-ARIA is supported by a set of informative resources. In addition to the WAI-ARIARoadmap, the WAI-ARIA Primer[ARIA-PRIMER] provides a basic introduction to theconcepts behind and reason for ARIA, and the WAI-ARIA Best Practices[ARIA-PRACTICES] describe recommended usage patterns for Web content developers. Thesedocuments serve as important places of clarification where topics appear to be unclear.

    1.2 Use Cases

    This section is informative.

    Alternate input devices are helped when all content is keyboard accessible. The tabindexchanges achieve this. The new semantics when combined by our style guide work willallow alternate input solutions to facilitate command and control on via an alternate inputsolution.

    Low vision solutions benefit from ARIA markup in that the improved keyboard navigationhelps people with extremely low vision. Low vision solutions offer a degree of screenreading functionality (like AI Squared's Zoom text). Furthermore, ARIA introducesnavigation landmarks both through our taxonomy and the XHTML role landmarks whichdramatically improves keyboard navigation productivity. This is a huge benefit foralternate input solutions as well.

    ARIA will also be used to assist people with cognitive impairments. The additionalsemantics will allow us to restructure and substitute alternative content in adaptive Web2.0 solutions. We are doing this on the FLUID project. In FLUID we will be incorporatingARIA technology into uPortal and Sakai. Support for cognitive impairment is absolutelycritical.

    1.3 Design Aims

    This section is informative.

    The design aims of creating this specification include:

    Define what state information may be controlled by the author.Support device independence - new devices coming on line, such as telephones,PDA's, tablets, televisions, etc. mean that it is imperative to have a design thatallows you to author once and render in different ways on different devices, ratherthan authoring new versions of the document for each type of device.Improve the accessibility of dynamic content such as that generated by script.Provide for interoperability with Assistive Technologies.

    2 Using WAI-ARIA

    This section is informative.

    Complex web applications become inaccessible when assistive technologies cannotdetermine the semantics behind portions of a document or when the user is unable toeffectively navigate to all parts of it in a usable way (see the Roadmap for AccessibleRich Internet Applications[ARIA-ROADMAP]). ARIA divides the semantics into roles (thetype defining a user interface element) and states and properties supported by the roles.

    Authors must associate elements in the document to an ARIA role and the appropriateattributes (states and properties) during its lifecycle.

    2.1 WAI-ARIA Roles

    An ARIA role is set on an element using the a role attribute similar to the one defined inthe XHTML Role Attribute Module[XHTML-ROLES].

    The roles defined in this specification include a collection of document landmarksand theARIA role taxonomy.

    The Roles in this taxonomy were modeled using RDF/OWL to build rich descriptions ofthe expected behaviors of each role. For example:

    The roles taxonomy describes the context of a role. For example a listitemshouldbe inside a list.The role taxonomy defines a hierarchy of roles with related properties. For examplea directoryis a type of list.The role taxonomy makes use of OWL to provide a type hierarchy allowing forsemantic inheritance similar to a class hierarchy.The role taxonomy makes references to related concepts in other specifications.

    http://www.w3.org/TR/wai-aria/#directoryhttp://www.w3.org/TR/wai-aria/#listhttp://www.w3.org/TR/wai-aria/#listitemhttp://www.w3.org/TR/wai-aria/#listhttp://www.w3.org/TR/wai-aria/#roleattribute_inheritshttp://www.w3.org/TR/wai-aria/#roleshttp://www.w3.org/TR/2007/WD-xhtml-role-20071004/http://www.w3.org/TR/wai-aria/#ref_XHTML-ROLEShttp://www.w3.org/TR/2008/WD-wai-aria-roadmap-20080204/http://www.w3.org/TR/wai-aria/#ref_ARIA-ROADMAPhttp://www.w3.org/TR/wai-aria/#ref_ARIA-PRACTICEShttp://www.w3.org/TR/2008/WD-wai-aria-practices-20080204/http://www.w3.org/TR/wai-aria/#ref_ARIA-PRIMERhttp://www.w3.org/TR/2008/WD-wai-aria-primer-20080204/
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    6/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 6 ttp://www.w3.org/TR/wai-aria/

    The role taxonomy provides descriptions for each role.The roles taxonomy describes what states are supported for each role. Forexample, a checkboxsupports being checked.

    Attaching a role from the role taxonomy to an element in the document gives assistivetechnology the information it needs to handle an element correctly.

    2.2 WAI-ARIA States and Properties

    ARIA provides a collection of accessibility states and properties which are used tosupport platform accessibility APIs on the various operating system platforms. Yourassistive technology may access this information through an exposed user agent DOM orthrough a mapping to the platform accessibility API. When combined with roles your useragent can supply the assistive technology with information to render the information tothe user at any instance in time. Changes in states or properties will result in anotification to an assistive technology to let them know that a change in behavior hasoccurred.

    In the following example, a spanhas been used to create a checkbox which in this casehas three possible states. A role is used to make the behavior of this simple widgetknown to the user agent. Properties that may change with user actions (such as checked)are defined in the States and Properties.

    A checkbox label

    It should be noted that some accessibility state information is managed and controlled by

    the user agent. These are called managed states. Often these states have correspondingCSS pseudo classes to reflect necessary style changes. The states in this specificationare typically controlled by the author and are called unmanaged states. Both managedand unmanaged states are mapped to the platform accessibility APIs by the user agent.An example of a managed state is focus.

    Finally, an added value for ARIA is that user agents that support CSS attribute selectors([CSS], Section 5.8) can allow the author to create UI changes based on the ARIA stateinformation, dramatically reducing the amount of script used to create the equivalentfunctionality, as shown in this example:

    *[aria-checked=true]:before {content: url('checked.gif')}*[aria-checked=false]:before {content: url('unchecked.gif')}

    *[aria-checked=false]:before {content: url('unchecked.gif')}

    2.3 Building Accessible Applications with WAI-ARIA

    This section provides a brief introduction to the process of making applicationsaccessible using ARIA. The choice and usage of roles can be complex and contextdependent. It is beyond the scope of this document to explain implementations for all thepossible ARIA use cases. ARIA Best Practices[ARIA-PRACTICES] will provide detailedguidance on ARIA implementation methodology as well as references to sample code.

    An application becomes accessible when:

    1. Each element or widget has full and correct semantics that fully describes itsbehavior (using element names or roles).

    2. The relationships between elements and groups are known3. States, properties, and container relationships are valid for each element's behavior

    and are accessible via the Document Object Model[DOM] and the platformaccessibility API.

    4. There is an element having the correct input focus.

    ARIA provides authors with the means to makes the different elements in a Webapplication semantically rich. User agents use the role semantics to understand how tohandle each element. Roles conveys missing information that the assistive technologyneeds to anticipate the behavior of the elements inside the application such as how topresent the corresponding ARIA states and properties to the user. The user agent willuse the accessibility semantics from the host language and ARIA accessibility semanticswhich may override those of the host language and present them to an assistivetechnology through the Document Object Model or the platform accessibility API. Whensupporting the platform accessibility API the user agent will create accessible objectscontaining the accessibility semantics for each visual element on your page. It will usethe chosen API to notify the assistive of changes to the semantics as well.

    The following list of

    http://www.w3.org/TR/wai-aria/#ref_DOMhttp://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/http://www.w3.org/TR/2008/WD-wai-aria-practices-20080204/http://www.w3.org/TR/wai-aria/#ref_ARIA-PRACTICEShttp://www.w3.org/TR/REC-CSS2/selector.html#attribute-selectorshttp://www.w3.org/TR/wai-aria/#ref_CSShttp://www.w3.org/TR/wai-aria/#def_managedstatehttp://www.w3.org/TR/wai-aria/#supportedhttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/wai-aria/#checkboxhttp://www.w3.org/TR/wai-aria/#checked
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    7/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 7 ttp://www.w3.org/TR/wai-aria/

    1. Use native mark up when possible

    Use the semantic elements that are defined in the host markup language. Forexample, with XHTML it is better to use the native checkbox than to use a divelement with role checkboxas these should already be accessible through yourbrowser. There may also be cases where ARIA can augment an existing element inthe host language. For example, a gridand gridcells can reuse the functionalityof a table when overlaying it. ARIA roles, states, and properties are best used whenthe markup language does not support all the semantics required. When a roleattribute is added to an element, the semantics and behavior of the element areoverridden by the role behavior.

    2. Apply the appropriate roles from ARIA

    Set roles to make sure elements behave predictably and correctly describe thebehavior of each element within the application (unless elements behaviors are fullydescribed by the native markup language). Roles for interactive elements shouldsupport all the states that the element could use. Once a role attribute is set itshould not be changed as this will confuse an assistive technology. This does notpreclude a document element being removed which has the role attribute set. Onlystates and properties may be changed for a given document element.

    3. Preserve semantic structure

    Structural information is critical to providing context to people with disabilities. Thisis achieved through preserving DOM hierarchy within structural elements andwidgets; forming logical groups within within user interface widgets such astreeitems in a group. Look for groups within a page, and mark them using the mostappropriate role that best describes their usage. For example: a region of the page

    that contains a group of elements that are likely to change through an Ajaxapplication could be tagged as a region. The preservation of semantic webstructure involves your entire web page such as through the use of documentlandmarks to facilitate keyboard navigation for screen reader and mobility impairedusers as well as page restructuring and simplification for users with cognitive andlearning impairments.

    4. Build relationships

    Look for relationships between elements, and mark them using the mostappropriate property or attribute. For example: If container A contains searchresults, and container B contains the search controls, then mark each container asa regionand set the controlsproperty in region B to reference region A. Seerelationships in WAI-ARIA.

    Some relationships are determined automatically from the host language, such asby using the labeltag in HTML.

    5. Set states and properties in response to events

    Once the role for an element has been set, select the appropriate states andproperties for that role during the element's life cycle. This is often done in responseto user input events. States are special properties for widgets that may changefrequently during a widget's life cycle due to user interaction, while properties aremore stable attributes of objects. User agents should notify assistive technology ofstate changes. Conversely, assistive technology notification of property changesdepends on the method by which an assistive technology communicates with theuser agent. For example, the multilineproperty is not something that changesfrequently, whereas the checkedstate changes frequently in response to user input.

    When setting states and properties, set them until the behavior of the element isfully defined. Only use those supported for the chosen role or document element asdefined in this specification.

    6. Support full, usable keyboard navigation

    Usable keyboard navigation in a rich internet application is different from the tabbingparadigm in a static document. Rich internet applications behave more like desktopapplications where the user tabs to significant widgets and uses the arrow keys tonavigate within the widget, such as a spreadsheet or menu. The changes that ARIAintroduces in keyboard navigation makes this enhanced accessibility possible. For amore in-depth understanding of keyboard navigation in ARIA, see the ARIA BestPractices[ARIA-PRACTICES]

    7. Synchronize the visual UI with accessibility states and properties forsupporting user agents

    This will allow the state of your UI to be perceivable to the user as well as the

    http://www.w3.org/TR/2008/WD-wai-aria-practices-20080204/http://www.w3.org/TR/wai-aria/#ref_ARIA-PRACTICEShttp://www.w3.org/TR/wai-aria/#multilinehttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/2008/WD-wai-aria-20080204/#relationshipshttp://www.w3.org/TR/wai-aria/#regionhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#grouphttp://www.w3.org/TR/wai-aria/#regionhttp://www.w3.org/TR/wai-aria/#treeitemhttp://www.w3.org/TR/wai-aria/#gridhttp://www.w3.org/TR/wai-aria/#checkboxhttp://www.w3.org/TR/wai-aria/#gridcell
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    8/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 8 ttp://www.w3.org/TR/wai-aria/

    assistive technology. There are many ways to do this using script or by using CSSattribute selectors(in conforming user agents) For example, the author should havean associated selector that responds to a form element being requiredor a gridcellbeing selected. Refer to the ARIA Best Practices[ARIA-PRACTICES] fortechniques for proper UI synchronization with the accessible state of the document.

    2.4 Example: building a tree widget

    A basic tree view allows the user to select different list itemsand expand and collapse embedded lists. Arrow keys areused to navigate through a tree, including left/right tocollapse/expand sub trees. Double clicking with the mousealso toggles expansion.

    Building this user interface element with script could leaveassistive technology guessing about the role of eachelement. To make this feature accessible we need to:

    Inform assistive technology about the role of eachelement, so they know how to handle it;Inform assistive technology about the relationshipsbetween tree items;Give a clear keyboard focus that will not confuse userswith disabilities;Expose the changing states (e.g., open and closed) ofthe the tree items.

    We can do that by following the steps below:

    1. Look at the native mark up language

    There is no tree element in HTML that supports ourbehavior including expansion. If such an element existed, we should use that totake advantage of existing support. Since it does not, we will need to use roles.

    2. Finding the right roles

    As we did not find a tree element in the native mark up we need to add roles that dothis by referencing roles from this taxonomy that support states that we need.

    Our tree will need roles that support embedded list behavior andexpandable/collapsible embedded lists. The roles that support tree behavior for atree are:

    tree: A tree is the main container element for our tree. It is a form of a selectwhere subtrees can be collapsed and expanded.

    treeitem: A treeitem is an option item of a tree. This is an element within atree which may be expanded or collapsed.3. Look for groups and build relationships

    Tree relationships can be made simply via the DOM and logical structure of thepage. A tree element will be the main container encompassing all other elements inthe tree. Each selectable item in the tree will be a treeitem.

    When a treeitem contains an embedded list of treeitems they will be all embeddedin a group. A group should be contained inside the tree item that is the parent item.

    Tree relationships are like list relationships in HTML. Group and tree elements actlike list containers (OL and UL). A tree item acts like a list item (li) in HTML.

    Because treeitems and groups commonly both use div elements it is recommendedto add a comment next to closing treeitems that contain embedded tree groups.

    Veggies Green Asparagus Kale Leafy Lettuce Kale Spinach Chard ---close leafy Green beans

    http://www.w3.org/TR/wai-aria/#treeitemhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#treehttp://www.w3.org/TR/wai-aria/#selectedhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/2008/WD-wai-aria-practices-20080204/http://www.w3.org/TR/wai-aria/#ref_ARIA-PRACTICEShttp://www.w3.org/TR/1998/REC-CSS2-19980512/selector.html#attribute-selectors
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    9/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 9 ttp://www.w3.org/TR/wai-aria/

    ---close green Legumes Yellow Bell peppers Squash ---close yellow ---close veggies ---close tree

    Sometimes a tree structure is not explicit via the DOM and logical structure of apage. In such cases the relationships must still be made explicit using the Statesand Properties Module.

    Example:

    YellowBell peppersSquash

    4. Use States, Properties in response to events

    Control the behavior of the element in response to user in put events such as fromthe keyboard and the mouse as shown here:

    Yellow

    And use device independent events with supporting JavaScript to handle userinteraction.

    Then create JavaScript support to control the event driven behavior of the

    application.

    3 The RDF Roles Model

    This section is normative.This specification defines a Taxonomy called Roles. Theremainder of this section describes the properties of roles in this taxonomy, anddescribes the characteristics of all roles. A formal RDF representation of all theinformation presented here is available in Appendix 6.1: Implementation.

    3.1 Relationships between concepts

    This section is normative.

    The role taxonomy uses the following relationships to relate ARIA roles to each other andto concepts from other specifications, such as HTML and XForms.

    Relationships Supported by Role Taxonomy

    Relationship RDF Property Description

    Parent Role rdfs:subClassOfThe role that this role extends in the taxonomy. Thisextension causes all the properties and constraints ofthe parent role to propagate to the child role. Otherthan well known stable specifications, inheritancemay be restricted to items defined inside thisspecification so that items can not be changed andaffect inherited classes.

    For example: buttonundois a subclass or type of abutton. If we change the properties and expected

    http://www.w3.org/TR/wai-aria/#buttonhttp://www.w3.org/TR/wai-aria/#a_implementation
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    10/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 10 ttp://www.w3.org/TR/wai-aria/

    behavior of a button then the properties and behaviorof buttonundo will also change.

    Inheritance is expressed in RDF using the RDFSchema subClassOf([RDFS], section 3.4) property.

    Child Roles Informative list of roles for which this role is theparent. This is provided to facilitate reading of thespecification but adds no new information as the listof child roles is the list of roles for which the currentrole is the parent.

    RelatedConcepts

    role:relatedConceptA relatedConcept is a similar or related idea fromother specifications. Concepts that are related are notnecessarily identical. relatedConcepts do not inheritproperties from each other. Hence if the definition of atype changes, the properties, behavior and definitionof a relatedConcept is not affected.

    For example: A grid is like a table. Therefore, a gridhas a relatedConcept of a tableas defined athttp://www.w3.org/TR/html4/struct/tables.html#edef-TABLE. However if the definition of table is modifiedour definition of a grid will not be affected.

    BaseConcept

    role:baseConceptA baseConcept is like a "borrowed" concept.BaseConcept is similar to type, but withoutinheritance of limitations and properties.

    baseConceptsare designed as a substitute forinheritance for external concepts. A baseConcept islike a relatedConcept except that baseConcepts arealmost identical to each other.

    For example: the checkbox defined in this documenthas the same functionality and anticipated behavioras a checkbox defined inhttp://www.w3.org/MarkUp/HTML#checkbox.

    Therefore, a checkbox has a baseConcept of acheckbox as defined athttp://www.w3.org/MarkUp/HTML#checkbox.However, ifhttp://www.w3.org/MarkUp/HTML#checkbox ismodified, the definition of a checkbox in thisdocument will not be not affected.

    3.2 Role Characteristics

    This section is normative.

    Roles are defined and described by their characteristics. Characteristics define thestructural function of a role, such as what a role is, concepts behind it, what instances ofthe role can or must contain. In the case of widgets this also includes how it interacts withthe user agent based on mapping to HTML forms and XForms. States and propertiesfrom WAI-ARIAthat are supported by the role are also indicated.

    The Roles Taxonomy defines the following characteristics. These characteristics areimplemented in RDF as properties of the OWL classes that describe the roles.

    Characteristics Supported by Role Taxonomy

    Characteristic RDF Property Description Values

    Is Abstract N/A This role is abstract andcannot be used byauthors directly. It is usedto create a relationshipamongst descendantroles.

    Boolean

    SupportedStates andProperties

    role:supportedState A supportedState mustbe supported by this role.Typically refers to statesfrom the aaanamespace.

    Supported states and

    Any valid RDFobject reference,such as a URI orRDF IDreference.

    http://www.w3.org/2005/07/aaa/http://www.w3.org/TR/2008/WD-wai-aria-20080204/http://www.w3.org/TR/wai-aria/#baseConcepthttp://www.w3.org/TR/html4/struct/tables.html#edef-TABLEhttp://www.w3.org/TR/wai-aria/#ref_RDFShttp://www.w3.org/TR/2004/REC-rdf-schema-20040210/#ch_subclassof
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    11/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 11 ttp://www.w3.org/TR/wai-aria/

    properties are inheritedfrom ancestor roles andare shown informativelyas Inherited States in thisspecification. States andproperties are inheritedfrom ancestor roles in therole taxonomy, not fromancestor elements in theDOM tree.

    Inherited

    States andProperties

    Informative list of

    properties that areinherited onto a role fromancestor roles. Theseproperties are notexplicitly defined on therole as the inheritance ofproperties is automatic.This information isprovided to facilitatereading of thespecification. The set ofsupported states andproperties combined withinherited states andproperties forms the fullset of states andproperties supported bythe role.

    Required ChildElements role:mustContain A child element that must

    be contained by this role.For example a list mustcontain a listitem.

    When multiple requiredchildren are indicated,either of them arepermitted.

    Any valid RDFobject reference,such as a URI orRDF IDreference.

    ParentElement role:scope Context, where this role

    is allowed. For example alist item is allowed insidea list.

    Any valid RDFobject reference,such as a URI orRDF IDreference.

    Name Fromrole:nameFrom Computational

    mechanism to determinethe accessible name ofthe object to which therole applies. This may becomputed from thechildren of the object orthe title attribute.

    Computing theaccessible name:

    Collect the name fromthe content subtreespointed to by labelledby

    which contains the IDsfor the label content. Usethe labelledby IDs inorder. For each ID use adepth-first computationof the name, appendingto the currently computedname.

    If labelledby isunspecified:

    1. For container

    One of thefollowing values:

    "author":namecomesfromvaluesprovidedby theauthor inexplicitmarkupfeaturessuch as

    thelabelledby

    property orthe HTML"title"attribute."subtree":namecomesfrom thetext valueof theelement

    http://www.w3.org/TR/wai-aria/#labelledbyhttp://www.w3.org/TR/wai-aria/#labelledby
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    12/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 12 ttp://www.w3.org/TR/wai-aria/

    elements whichallow name fromdescendants, use adepth-firstcomputation of thename.

    1. If a text node,append thetext contents;

    2. If a control,append thecurrent value

    for thecontrol;

    3. If an image orobject with atextequivalent,append thetextequivalent;

    4. If there is aforced linebreak (e.g. ifthe currentobject isstyled withdisplay:block),append a

    spacecharacter.

    2. If not such acontainer, or thedescendantcomputationgenerated anempty name, usethe contents of thetitleattribute, ifspecified.

    node.Althoughthis maybe allowedin additionto "author"in someroles, thisis used incontentonly if"author"featuresare notprovided.

    ChildrenPresentational

    role:childrenArePresentational The children arepresentational. Assistivetechnologies may chooseto hide the children fromthe user, in order toavoid confusing thirdparty APIs usingaccessibility APIs. Ifassistive technologies donot hide the children,user agents may readsome information twice.

    Boolean (true |false)

    3.3 Global States and Properties

    This section is normative.

    Some states and properties are applicable to all roles, and most are applicable to allelements regardless of role. In addition to explicitly expressed supported states andproperties, the following global states and properties are supported by all roles as well.These include:

    datatype

    describedby

    dropeffect

    flowto

    grab

    haspopup

    hidden

    labelledby

    owns

    tabindex

    Global states and properties are applied to the role roletype, which is the base role, and

    http://www.w3.org/TR/wai-aria/#roletypehttp://www.w3.org/TR/wai-aria/#tabindexhttp://www.w3.org/TR/wai-aria/#ownshttp://www.w3.org/TR/wai-aria/#labelledbyhttp://www.w3.org/TR/wai-aria/#hiddenhttp://www.w3.org/TR/wai-aria/#haspopuphttp://www.w3.org/TR/wai-aria/#grabhttp://www.w3.org/TR/wai-aria/#flowtohttp://www.w3.org/TR/wai-aria/#dropeffecthttp://www.w3.org/TR/wai-aria/#describedbyhttp://www.w3.org/TR/wai-aria/#datatype
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    13/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 13 ttp://www.w3.org/TR/wai-aria/

    therefore inherit into all roles. To facilitate reading, they are not explicitly identified aseither supported or inherited states and properties in the specification. Instead, theinheritance is indicated by a link to this section.

    3.4 Roles

    This section is normative.

    To support the current user scenario, this specification defines roles that A, help defineWidgets (For example, a tristate Checkbox) and B, help define page structure (forexample, a section header).

    Class diagram of the relationships described in the role data model

    View larger version of class diagram

    Roles are categorized as follows:

    1. Taxonomy Roles2. User Input Controls3. User Interface Elements4. Document Structure5. Specialized Regions

    Below is an alphabetical list of ARIA roles to be used by rich internet application authors(excluding abstract roles which are not used directly). A detailed definition of thetaxonomy supporting these ARIA roles follows.

    Role Definition

    alert A message with an alert or error information.

    alertdialog A separate window with an alert or error information.

    application A software unit executing a set of tasks for its users.

    banner A banner is usually defined as the advertisement at the top of a webpage. The banner content typically contains the site or company logoand other key advertisements for the site.

    button Allows for user-triggered actions.

    checkbox A control that has three possible values, (true, false, mixed).

    columnheader A table cell containing header information for a column.

    combobox Combobox is a presentation of a select, where users can type tolocate a selected item.

    contentinfo This is information about the content on the page. For example,footnotes, copyrights, links to privacy statements, etc. would belonghere.

    definition The contents of the associated element represent a definition (e.g., ofa term or concept). If there is a dfn element within the contents, thenthat represents the term being defined. Todo: not sure this is clear

    description Descriptive content for a page element which references this element

    via describedby.dialog A dialog is a small application window that sits above the application

    and is designed to interrupt the current processing of an application inorder to prompt the user to enter information or require a response.

    directory A list of references to members of a single group.

    document Content that contains related information, such as a book.

    grid A grid contains cells of tabular data arranged in rows and columns(e.g., a table).

    gridcell A gridcell is a table cell in a grid. Gridcells may be active, editable,and selectable. Cells may have relationships such as controls toaddress the application of functional relationships.

    group A group is a section of user interface objects which would not be

    http://www.w3.org/TR/wai-aria/#grouphttp://www.w3.org/TR/wai-aria/#gridcellhttp://www.w3.org/TR/wai-aria/#gridhttp://www.w3.org/TR/wai-aria/#documenthttp://www.w3.org/TR/wai-aria/#directoryhttp://www.w3.org/TR/wai-aria/#dialoghttp://www.w3.org/TR/wai-aria/#descriptionhttp://www.w3.org/TR/wai-aria/#definitionhttp://www.w3.org/TR/wai-aria/#contentinfohttp://www.w3.org/TR/wai-aria/#comboboxhttp://www.w3.org/TR/wai-aria/#columnheaderhttp://www.w3.org/TR/wai-aria/#checkboxhttp://www.w3.org/TR/wai-aria/#buttonhttp://www.w3.org/TR/wai-aria/#bannerhttp://www.w3.org/TR/wai-aria/#applicationhttp://www.w3.org/TR/wai-aria/#alertdialoghttp://www.w3.org/TR/wai-aria/#alerthttp://www.w3.org/TR/wai-aria/#regionshttp://www.w3.org/TR/wai-aria/#structuralhttp://www.w3.org/TR/wai-aria/#uihttp://www.w3.org/TR/wai-aria/#userinputhttp://www.w3.org/TR/wai-aria/#taxonomichttp://www.w3.org/TR/wai-aria/rdf_model.pnghttp://www.w3.org/TR/wai-aria/rdf_model.png
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    14/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 14 ttp://www.w3.org/TR/wai-aria/

    included in a page summary or table of contents by an assistivetechnology. See region for sections of user interface objects thatshould be included in a page summary or table of contents.

    heading A heading for a section of the page.

    img An img is a container for a collection elements that form an image.

    link Interactive reference to a resource (note, that in XHTML 2.0 anyelement can have an href attribute and thus be a link)

    list Group of non-interactive list items. Lists contain children whose roleis listitem.

    listbox A list box is a widget that allows the user to select one or more itemsfrom a list. Items within the list are static and may contain images.

    List boxes contain children whose role is option.listitem A single item in a list.

    log A region where new information is added and old information maydisappear such as chat logs, messaging, game log or an error log. Incontrast to other regions, in this role there is a relationship betweenthe arrival of new items in the log and the reading order. The logcontains a meaningful sequence and new information is added onlyto the end of the log, not at arbitrary points.

    main This defines the main content of a document.

    marquee A marquee is used to scroll text across the page.

    menu Offers a list of choices to the user.

    menubar A menubar is a container of menu items. Each menu item mayactivate a new sub-menu. Navigation behavior should be similar tothe typical menu bar graphical user interface.

    menuitem A link in a menu. This is an option in a group of choices contained in

    a menu.menuitemcheckbox Defines a menuitem which is checkable (tri-state).

    menuitemradio Indicates a menu item which is part of a group of menuitemradioroles.

    navigation This is a collection of links suitable for use when navigating thedocument or related documents.

    note The content is parenthetic or ancillary to the main content of theresource.

    option A selectable item in a list represented by a select.

    presentation An element whose role is presentational does not need to be mappedto the accessibility API.

    progressbar Used by applications for tasks that take a long time to execute, toshow the execution progress.

    radio A radio is an option in single-select list. Only one radio control in aradiogroup can be selected at the same time.

    radiogroup A group of radio controls.region Region is a large perceivable section on the web page.

    row A row of table cells.

    rowheader A table cell containing header information for a row.

    search This is the search section of a web document. This is typically a formused to submit search requests about the site or a more generalInternet wide search service.

    secondary This is any unique section of the document. In the case of a portal,this may include but not be limited to: show times; current weather; orstocks to watch.

    seealso Indicates that the element contains content that is related to the maincontent of the page.

    separator A line or bar that separates and distinguishes sections of content.

    slider A user input where the user selects an input in a given range. Thisform of range expects an analog keyboard interface.

    spinbutton A form of Range that expects a user selecting from discrete choices.status This is a container for process advisory information to give feedback

    to the user.

    tab A header for a tabpanel.

    tablist A list of tabs, which are references to tabpanels.

    tabpanel Tabpanel is a container for the resources associated with a tab.

    textbox Inputs that allow free-form text as their value.

    timer A numerical counter which indicates an amount of elapsed time froma start point, or the time remaining until an end point.

    toolbar A toolbar is a collection of commonly used functions represented incompact visual form.

    http://www.w3.org/TR/wai-aria/#toolbarhttp://www.w3.org/TR/wai-aria/#timerhttp://www.w3.org/TR/wai-aria/#textboxhttp://www.w3.org/TR/wai-aria/#tabpanelhttp://www.w3.org/TR/wai-aria/#tablisthttp://www.w3.org/TR/wai-aria/#tabhttp://www.w3.org/TR/wai-aria/#statushttp://www.w3.org/TR/wai-aria/#spinbuttonhttp://www.w3.org/TR/wai-aria/#sliderhttp://www.w3.org/TR/wai-aria/#separatorhttp://www.w3.org/TR/wai-aria/#seealsohttp://www.w3.org/TR/wai-aria/#secondaryhttp://www.w3.org/TR/wai-aria/#searchhttp://www.w3.org/TR/wai-aria/#rowheaderhttp://www.w3.org/TR/wai-aria/#rowhttp://www.w3.org/TR/wai-aria/#regionhttp://www.w3.org/TR/wai-aria/#radiogrouphttp://www.w3.org/TR/wai-aria/#radiohttp://www.w3.org/TR/wai-aria/#progressbarhttp://www.w3.org/TR/wai-aria/#presentationhttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/wai-aria/#notehttp://www.w3.org/TR/wai-aria/#navigationhttp://www.w3.org/TR/wai-aria/#menuitemradiohttp://www.w3.org/TR/wai-aria/#menuitemcheckboxhttp://www.w3.org/TR/wai-aria/#menuitemhttp://www.w3.org/TR/wai-aria/#menubarhttp://www.w3.org/TR/wai-aria/#menuhttp://www.w3.org/TR/wai-aria/#marqueehttp://www.w3.org/TR/wai-aria/#mainhttp://www.w3.org/TR/wai-aria/#loghttp://www.w3.org/TR/wai-aria/#listitemhttp://www.w3.org/TR/wai-aria/#listboxhttp://www.w3.org/TR/wai-aria/#listhttp://www.w3.org/TR/wai-aria/#linkhttp://www.w3.org/TR/wai-aria/#imghttp://www.w3.org/TR/wai-aria/#heading
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    15/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 15 ttp://www.w3.org/TR/wai-aria/

    tooltip A popup that displays a description for an element when a userpasses over or rests on that element. Supplement to the normaltooltip processing of the user agent.

    tree A form of a list having groups inside groups, where sub trees can becollapsed and expanded.

    treegrid A grid whose rows can be expanded and collapsed in the samemanner as for a tree.

    treeitem An option item of a tree. This is an element within a tree that may beexpanded or collapsed

    3.4.1 Base Types

    The following roles are used as base types for applied roles. Base classes are used tobuild a picture of the role taxonomy class hierarchy within the taxonomy. Note that whileall roles in this section are abstract, not all abstract roles are in this section. This sectionincludes only the most high-level abstractions in the taxonomy.

    Roles in this section include:

    roletype

    widget

    structure

    composite

    window

    Role: roletype

    Base role from which all other roles in this taxonomy inherit.

    Properties of this role describe the structural and functional purpose of objects thatare assigned this role (known in RDF terms as "instances"). A Role is a concept thatcan be used to understand and operate instances.

    Characteristics:

    Is Abstract: True

    Child Roles: widgetstructure

    window

    Related Concepts: XHTML roleHTML link(rel & rev)Dublin Core type

    Supported States and Properties: datatypedescribedbydropeffect

    flowtograbhaspopuphiddenlabelledbyownstabindex

    Role: widget

    A component of a GUI (graphical user interface).

    Widget Roles all map to accessibility APIs. Widgets are ... , see @@

    Characteristics:

    Is Abstract:TrueParent Role: roletype

    Child Roles: compositeinputbuttonlinktabgridcell

    Supported States and Properties: controlsdisabled

    Inherited States and Properties: Global States

    http://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#gridcellhttp://www.w3.org/TR/wai-aria/#tabhttp://www.w3.org/TR/wai-aria/#linkhttp://www.w3.org/TR/wai-aria/#buttonhttp://www.w3.org/TR/wai-aria/#inputhttp://www.w3.org/TR/wai-aria/#compositehttp://www.w3.org/TR/wai-aria/#roletypehttp://en.wikipedia.org/wiki/GUI_widgethttp://www.w3.org/TR/wai-aria/#tabindexhttp://www.w3.org/TR/wai-aria/#ownshttp://www.w3.org/TR/wai-aria/#labelledbyhttp://www.w3.org/TR/wai-aria/#hiddenhttp://www.w3.org/TR/wai-aria/#haspopuphttp://www.w3.org/TR/wai-aria/#grabhttp://www.w3.org/TR/wai-aria/#flowtohttp://www.w3.org/TR/wai-aria/#dropeffecthttp://www.w3.org/TR/wai-aria/#describedbyhttp://www.w3.org/TR/wai-aria/#datatypehttp://purl.org/dc/elements/1.1/typehttp://www.w3.org/TR/html401/struct/links.html#edef-LINKhttp://www.w3.org/TR/xhtml-role/#s_role_module_attributeshttp://www.w3.org/TR/wai-aria/#windowhttp://www.w3.org/TR/wai-aria/#structurehttp://www.w3.org/TR/wai-aria/#widgethttp://www.w3.org/TR/wai-aria/#windowhttp://www.w3.org/TR/wai-aria/#compositehttp://www.w3.org/TR/wai-aria/#structurehttp://www.w3.org/TR/wai-aria/#widgethttp://www.w3.org/TR/wai-aria/#roletypehttp://www.w3.org/TR/wai-aria/#treeitemhttp://www.w3.org/TR/wai-aria/#treegridhttp://www.w3.org/TR/wai-aria/#treehttp://www.w3.org/TR/wai-aria/#tooltip
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    16/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 16 ttp://www.w3.org/TR/wai-aria/

    Role: structure

    A document structural element.

    Roles for document structure are also required to support the accessibility ofdynamic Web content to assist assistive technology in determining active content vs.static document content. Structural Roles, by themselves do not all map toaccessibility APIs, but are used to create widget roles or assist content adaptation.

    This schema is likely to evolve as new use cases are added to the scope of thisspecification.

    Characteristics:

    Is Abstract: True

    Parent Role: roletype

    Child Roles: sectionsectionheaddocumentpresentationseparator

    Supported States and Properties: atomicbusychannelliverelevant

    Inherited States and Properties: Global States

    Role: composite

    A widget that may contain navigable descendants.

    Descendants of this role may not have the "nameFrom" value of "subtree" set.

    Characteristics:

    Is Abstract: True

    Parent Role: widget

    Child Roles: selectspinbuttongridstatus

    Supported States and Properties: activedescendant

    Inherited States and Properties: controlsdisabled

    Global StatesName From: author

    Role: window

    Browser or application window

    Characteristics:

    Is Abstract: True

    Parent Role: roletype

    Child Roles: dialog

    Inherited States and Properties: Global States

    Name From: subtree

    author

    3.4.2 User Input Controls

    Roles in this section include:

    input

    select

    listbox

    combobox

    option

    checkbox

    http://www.w3.org/TR/wai-aria/#checkboxhttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/wai-aria/#comboboxhttp://www.w3.org/TR/wai-aria/#listboxhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#inputhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#dialoghttp://www.w3.org/TR/wai-aria/#roletypehttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#statushttp://www.w3.org/TR/wai-aria/#gridhttp://www.w3.org/TR/wai-aria/#spinbuttonhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#widgethttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#separatorhttp://www.w3.org/TR/wai-aria/#presentationhttp://www.w3.org/TR/wai-aria/#documenthttp://www.w3.org/TR/wai-aria/#sectionheadhttp://www.w3.org/TR/wai-aria/#sectionhttp://www.w3.org/TR/wai-aria/#roletype
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    17/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 17 ttp://www.w3.org/TR/wai-aria/

    radio

    radiogroup

    textbox

    range

    spinbutton

    Role: input

    Generic type for widgets that can have a value.

    Characteristics:

    Is Abstract: TrueParent Role: widget

    Child Roles: selectoptiontextboxrange

    Related Concepts: XForms input

    Supported States and Properties: invalidrequired

    Inherited States and Properties: controlsdisabled

    Global States

    Name From: author

    Role: select

    A form control that allows the user to make selections from a set of choices. A selectmust contain an option.

    Characteristics:

    Is Abstract: True

    Parent Role: compositegroupinput

    Child Roles: listboxcomboboxradiogroupmenutree

    Inherited States and Properties: activedescendantatomicbusy

    channelcontrolsdisabledexpandedinvalidliverelevantrequiredtemplateid

    Global States

    Name From: author

    Role: listbox

    A list box is a widget that allows the user to select one or more

    items from a list. Items within the list are static and maycontain images. List boxes contain children whose role isoption.

    Characteristics:

    Parent Role: listselect

    Related Concepts: HTML selectXForms select

    Required Child Elements: option

    Supported States and Properties: multiselectable

    Inherited States and Properties: activedescendantatomic

    http://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#multiselectablehttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/2007/REC-xforms-20071029/#ui-selectManyhttp://www.w3.org/TR/html401/interact/forms.html#edef-SELECThttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#listhttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#expandedhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#treehttp://www.w3.org/TR/wai-aria/#menuhttp://www.w3.org/TR/wai-aria/#radiogrouphttp://www.w3.org/TR/wai-aria/#comboboxhttp://www.w3.org/TR/wai-aria/#listboxhttp://www.w3.org/TR/wai-aria/#inputhttp://www.w3.org/TR/wai-aria/#grouphttp://www.w3.org/TR/wai-aria/#compositehttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/2007/REC-xforms-20071029/#ui-inputhttp://www.w3.org/TR/wai-aria/#rangehttp://www.w3.org/TR/wai-aria/#textboxhttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#widgethttp://www.w3.org/TR/wai-aria/#spinbuttonhttp://www.w3.org/TR/wai-aria/#rangehttp://www.w3.org/TR/wai-aria/#textboxhttp://www.w3.org/TR/wai-aria/#radiogrouphttp://www.w3.org/TR/wai-aria/#radio
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    18/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 18 ttp://www.w3.org/TR/wai-aria/

    busychannelcontrolsdisabledexpandedinvalidlevelliverelevantrequiredtemplateid

    Global States

    Name From: author

    Accessible Name Required: True

    Role: combobox

    Combobox is a presentation of a select, where users can type to locate a selecteditem.

    Combobox is the combined presentation of a single line textbox with a drop downselect widget. The combobox may be open or closed. An "open" combobox allowsusers to type freeform text into the textbox whereas a "closed" combobox only showstext in the textbox which can be retrieved from the select. Typically a "closed" textfield will use the text entered to quickly search and fill the textfield with text from theselect.

    NOTE: In XForms[XFORMS] the same select can have one of 3 appearances:combo-box, drop-down box or group of radio-buttons. Besides, many browsers (ifnot all of them) allow users to type in a drop-down select as well.

    Characteristics:

    Parent Role: select

    Related Concepts: HTML selectXForms select

    Required Child Elements: option

    Supported States and Properties: autocomplete

    Inherited States and Properties: activedescendantatomicbusychannelcontrolsdisabledexpandedinvalid

    liverelevantrequiredtemplateid

    Global States

    Name From: author

    Accessible Name Required: True

    Role: option

    A selectable item in a list represented by a select.

    An option must appear inside an element with selectrole.

    Characteristics:Parent Role: input

    Child Roles: checkboxmenuitemtreeitem

    Base Concept: HTML option

    Related Concepts: listitemXForms item

    Parent Element: select

    Supported States and Properties: checkedselected

    Inherited States and Properties: controlsdisabled

    http://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#selectedhttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/2007/REC-xforms-20071029/#ui-common-elements-itemhttp://www.w3.org/TR/wai-aria/#listitemhttp://www.w3.org/TR/html4/interact/forms.html#edef-OPTIONhttp://www.w3.org/TR/wai-aria/#treeitemhttp://www.w3.org/TR/wai-aria/#menuitemhttp://www.w3.org/TR/wai-aria/#checkboxhttp://www.w3.org/TR/wai-aria/#inputhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#expandedhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#autocompletehttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/2007/REC-xforms-20071029/#ui-selectManyhttp://www.w3.org/TR/html401/interact/forms.html#edef-SELECThttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#ref_XFORMShttp://www.w3.org/TR/2007/REC-xforms-20071029/http://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#levelhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#expandedhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busy
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    19/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 19 ttp://www.w3.org/TR/wai-aria/

    invalidrequired

    Global States

    Name From: subtreeauthor

    Accessible Name Required: True

    Role: checkbox

    A control that has three possible values, (true, false, mixed).

    Many checkboxes do not use the mixed value, and thus are effectively booleancheckboxes. However, the checkedstate supports the "mixed" value to supportcases such as installers where an option has been partially installed.

    Characteristics:

    Parent Role: option

    Child Roles: radiomenuitemcheckbox

    Related Concepts: HTML input(type : checkbox)

    Inherited States and Properties: checkedcontrolsdisabledinvalidrequiredselected

    Global StatesName From: subtree

    author

    Accessible Name Required: True

    Role: radio

    A radio is an option in single-select list. Only one radio control in a radiogroup can beselected at the same time.

    Characteristics:

    Parent Role: checkbox

    Child Roles: menuitemradio

    Related Concepts: HTML input(type : radio)Inherited States and Properties: checkedcontrolsdisabledinvalidrequiredselected

    Global States

    Name From: subtreeauthor

    Accessible Name Required: True

    Role: radiogroup

    A group of radio controls.

    Characteristics:

    Parent Role: select

    Related Concepts: list

    Required Child Elements: radio

    Inherited States and Properties: activedescendantatomicbusychannelcontrolsdisabledexpandedinvalidlive

    http://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#expandedhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#radiohttp://www.w3.org/TR/wai-aria/#listhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#selectedhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/html401/interact/forms.html#edef-INPUThttp://www.w3.org/TR/wai-aria/#menuitemradiohttp://www.w3.org/TR/wai-aria/#checkboxhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#selectedhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/html401/interact/forms.html#edef-INPUThttp://www.w3.org/TR/wai-aria/#menuitemcheckboxhttp://www.w3.org/TR/wai-aria/#radiohttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#invalid
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    20/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 20 ttp://www.w3.org/TR/wai-aria/

    relevantrequiredtemplateid

    Global States

    Name From: author

    Accessible Name Required: True

    Role: textbox

    Inputs that allow free-form text as their value.

    If the multilineproperty is true, the control accepts line breaks within the input, asin a HTML textarea. Otherwise this is a simple text box.

    Intended use is in languages that do not have a text input object (such as SVG), orcases in which an element with dif ferent semantics is repurposed as an input box.The user would use this role when additional states or properties are applied to astandard text input control. This is to indicate to the user agent that it must processadditional states and properties such as invalidand required.

    Characteristics:

    Parent Role: input

    Related Concepts: XForms inputHTML textarea

    Supported States and Properties: autocompletemultiline

    readonlysecret

    Inherited States and Properties: controlsdisabledinvalidrequired

    Global States

    Name From: author

    Accessible Name Required: True

    Role: range

    Represents a range of values that can be set by the user.

    Characteristics:Is Abstract: True

    Parent Role: input

    Child Roles: spinbuttonslider

    Supported States and Properties: valuemaxrequiredvalueminrequiredvaluenowrequired

    Inherited States and Properties: controlsdisabledinvalidrequired

    Global States

    Name From: author

    Role: spinbutton

    A form of Range that expects a user selecting from discrete choices.

    A spinbutton allows the user to select from the given range through the use of an upand down button. Visibly, the current value is incremented or decremented until amaximum or minimum value is reached. This functionality should be accomplishedprogrammatically through the use of up and down arrows on the keyboard.

    Characteristics:

    Parent Role: compositerange

    http://www.w3.org/TR/wai-aria/#rangehttp://www.w3.org/TR/wai-aria/#compositehttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#valuenowhttp://www.w3.org/TR/wai-aria/#valueminhttp://www.w3.org/TR/wai-aria/#valuemaxhttp://www.w3.org/TR/wai-aria/#sliderhttp://www.w3.org/TR/wai-aria/#spinbuttonhttp://www.w3.org/TR/wai-aria/#inputhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#secrethttp://www.w3.org/TR/wai-aria/#readonlyhttp://www.w3.org/TR/wai-aria/#multilinehttp://www.w3.org/TR/wai-aria/#autocompletehttp://www.w3.org/TR/html4/interact/forms.html#edef-TEXTAREAhttp://www.w3.org/TR/2007/REC-xforms-20071029/#ui-inputhttp://www.w3.org/TR/wai-aria/#inputhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#multilinehttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#relevant
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    21/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 21 ttp://www.w3.org/TR/wai-aria/

    Inherited States and Properties: activedescendantcontrolsdisabledinvalidrequiredvaluemaxvalueminvaluenow

    Global States

    Name From: author

    Accessible Name Required: True

    3.4.3 User Interface Elements

    Roles in this section include:

    button

    link

    menu

    menubar

    toolbar

    menuitem

    menuitemcheckbox

    menuitemradio

    slider

    tooltip

    tabpanel

    tablist

    tab

    tree

    treeitem

    Role: button

    Allows for user-triggered actions.

    Buttons are mostly used for discrete, atomic actions. Its value is cognitive; the ideathat this is a user action opportunity is made very clear by making it look like a front-panel button on a device. The animation of the button in response to indirect (bymouse) manipulation fosters the illusion of direct manipulation and keeps usercognition in sync with the user interface perception of user action events.Standardizing the appearance of buttons enhances recognition as buttons andarraying them compactly in toolbars, for example.

    Buttons support the optional state pressed. Buttons with this state present are toggle

    buttons. When pressedis "true" the button is depressed, when pressedis "false" it isnot depressed.

    Characteristics:

    Parent Role: widget

    Base Concept: HTML button

    Related Concepts: linkXForms trigger

    Supported States and Properties: pressed

    Inherited States and Properties: controlsdisabled

    Global States

    Name From: subtreeauthor

    Accessible Name Required: True

    Children Presentational: True

    Role: link

    Interactive reference to a resource (note, that in XHTML 2.0 any element can havean href attribute and thus be a link)

    Characteristics:

    Parent Role: widget

    Related Concepts: HTML link

    http://www.w3.org/TR/html401/struct/links.html#edef-LINKhttp://www.w3.org/TR/wai-aria/#widgethttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#pressedhttp://www.w3.org/TR/2007/REC-xforms-20071029/#ui-buttonhttp://www.w3.org/TR/wai-aria/#linkhttp://www.w3.org/TR/html4/interact/forms.html#edef-BUTTONhttp://www.w3.org/TR/wai-aria/#widgethttp://www.w3.org/TR/wai-aria/#pressedhttp://www.w3.org/TR/wai-aria/#pressedhttp://www.w3.org/TR/wai-aria/#pressedhttp://www.w3.org/TR/wai-aria/#treeitemhttp://www.w3.org/TR/wai-aria/#treehttp://www.w3.org/TR/wai-aria/#tabhttp://www.w3.org/TR/wai-aria/#tablisthttp://www.w3.org/TR/wai-aria/#tabpanelhttp://www.w3.org/TR/wai-aria/#tooltiphttp://www.w3.org/TR/wai-aria/#sliderhttp://www.w3.org/TR/wai-aria/#menuitemradiohttp://www.w3.org/TR/wai-aria/#menuitemcheckboxhttp://www.w3.org/TR/wai-aria/#menuitemhttp://www.w3.org/TR/wai-aria/#toolbarhttp://www.w3.org/TR/wai-aria/#menubarhttp://www.w3.org/TR/wai-aria/#menuhttp://www.w3.org/TR/wai-aria/#linkhttp://www.w3.org/TR/wai-aria/#buttonhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#valuenowhttp://www.w3.org/TR/wai-aria/#valueminhttp://www.w3.org/TR/wai-aria/#valuemaxhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#activedescendant
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    22/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 22 ttp://www.w3.org/TR/wai-aria/

    Inherited States and Properties: controlsdisabled

    Global States

    Name From: subtreeauthor

    Accessible Name Required: True

    Role: menu

    Offers a list of choices to the user.

    A menu is often a list of links to important sections of a document or a site. Themenu role is appropriate when the list of links is presented in a manner similar to amenu on a desktop application.

    Characteristics:

    Parent Role: listselect

    Related Concepts: DTB sidebarXForms selectJAPI MENU

    Required Child Elements: menuitem

    Inherited States and Properties: activedescendantatomicbusychannel

    controlsdisabledexpandedinvalidlevelliverelevantrequiredtemplateid

    Global States

    Name From: author

    Accessible Name Required: True

    Role: menubar

    A menubar is a container of menu items. Each menu item may activate a new sub-menu. Navigation behavior should be similar to the typical menu bar graphical userinterface.

    Menubar is used to create a menubar similar to those found in Windows, the Mac,and Gnome desktops. A menubar is used to create a consistent climate of frequentlyused commands.

    Characteristics:

    Parent Role: group

    Related Concepts: toolbar

    Inherited States and Properties: activedescendantatomicbusychannelcontrolsexpandedlive

    relevanttemplateid

    Global States

    Name From: author

    Role: toolbar

    A toolbar is a collection of commonly used functions represented in compact visualform.

    http://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#expandedhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#toolbarhttp://www.w3.org/TR/wai-aria/#grouphttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#levelhttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#expandedhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#menuitemhttp://java.sun.com/j2se/1.3/docs/api/javax/accessibility/AccessibleRole.html#MENUhttp://www.w3.org/TR/2007/REC-xforms-20071029/#ui-selectManyhttp://www.loc.gov/nls/z3986/v100/dtbook110doc.htm#sidebarhttp://www.w3.org/TR/wai-aria/#selecthttp://www.w3.org/TR/wai-aria/#listhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controls
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    23/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 23 ttp://www.w3.org/TR/wai-aria/

    The toolbar is often a subset of functions found in a menubar designed to reduceduser effort in using these functions.

    If this is not keyboard accessible the actions defined in the toolbar must bereproduced in an accessible, device independent fashion.

    Characteristics:

    Parent Role: group

    Related Concepts: menubar

    Supported States and Properties: multiselectable

    Inherited States and Properties: activedescendantatomicbusychannelcontrolsexpandedliverelevanttemplateid

    Global States

    Name From: author

    Role: menuitem

    A link in a menu. This is an option in a group of choices contained in a menu.

    It may be disabled or active. It may also have a popup.

    Characteristics:

    Parent Role: listitemoption

    Child Roles: menuitemcheckboxmenuitemradio

    Related Concepts: JAPI MENU_ITEM

    Parent Element: menu

    Inherited States and Properties: atomicbusychannelcheckedcontrolsdisabledinvalidliveposinsetrelevant

    requiredselectedsetsizetemplateid

    Global States

    Name From: subtreeauthor

    Accessible Name Required: True

    Role: menuitemcheckbox

    Defines a menuitem which is checkable (tri-state).

    The checkedstate indicates whether the menu item is checked, unchecked, or

    mixed.

    Characteristics:

    Parent Role: checkboxmenuitem

    Related Concepts: menuitem

    Parent Element: menu

    Inherited States and Properties: atomicbusychannelcheckedcontrolsdisabledinvalid

    http://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#menuhttp://www.w3.org/TR/wai-aria/#menuitemhttp://www.w3.org/TR/wai-aria/#menuitemhttp://www.w3.org/TR/wai-aria/#checkboxhttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#setsizehttp://www.w3.org/TR/wai-aria/#selectedhttp://www.w3.org/TR/wai-aria/#requiredhttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#posinsethttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#invalidhttp://www.w3.org/TR/wai-aria/#disabledhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#checkedhttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#menuhttp://java.sun.com/j2se/1.3/docs/api/javax/accessibility/AccessibleRole.html#MENU_ITEMhttp://www.w3.org/TR/wai-aria/#menuitemradiohttp://www.w3.org/TR/wai-aria/#menuitemcheckboxhttp://www.w3.org/TR/wai-aria/#optionhttp://www.w3.org/TR/wai-aria/#listitemhttp://www.w3.org/TR/wai-aria/#global_stateshttp://www.w3.org/TR/wai-aria/#templateidhttp://www.w3.org/TR/wai-aria/#relevanthttp://www.w3.org/TR/wai-aria/#livehttp://www.w3.org/TR/wai-aria/#expandedhttp://www.w3.org/TR/wai-aria/#controlshttp://www.w3.org/TR/wai-aria/#channelhttp://www.w3.org/TR/wai-aria/#busyhttp://www.w3.org/TR/wai-aria/#atomichttp://www.w3.org/TR/wai-aria/#activedescendanthttp://www.w3.org/TR/wai-aria/#multiselectablehttp://www.w3.org/TR/wai-aria/#menubarhttp://www.w3.org/TR/wai-aria/#group
  • 8/10/2019 Accessible Rich Internet Applications (WAI-ARIA) Version 1.0

    24/81

    26/02/08 09:ccessible Rich Internet Applications (WAI-ARIA) Version 1.0

    Pgina 24 ttp://www.w3.org/TR/wai-aria/

    liveposinsetrelevantrequiredselectedsetsizetemplateid

    Global States

    Name From: subtreeauthor

    Accessible Name Required: True

    Role: menuitemradio

    Indicates a menu item which is part of a group of menuitemradio roles.

    Checking of one menuitemradio in a group will unchecked the other group members.

    Menuitems should also be separated into a group by a separator.

    Characteristics:

    Parent Role: menuitem(see structure)radio

    Related Concepts: menuitem

    Parent Element: menu

    Inherited States and Properties: atomicbusychannelcheckedcontrolsdisabledinvalidliveposinsetrelevantrequiredselectedsetsizetemplateid

    Global States

    Name From: subtreeauthor

    Accessible Name Required: True

    Role: slider

    A user input where the user selects an input in a given range. This form of rangeexpects an analog keyboard interface.

    A slider has the added functionality of being able to select a value through the use ofa visible slider. The slider would be keyboard accessible and provide a visible thumbposition that represents the current position within the slider.

    Characteristics:

    Parent Role: range

    Inherited S