- From: Michael[tm] Smith <mike@w3.org>
- Date: Tue, 20 Aug 2013 16:21:11 +0900
- To: public-pfwg-comments@w3.org
PF Working Group, please handle this as a formal comment on specification requirements and implementation of the Candidate Recommendation of WAI-ARIA 1.0 at http://www.w3.org/TR/wai-aria/ Comment: Please drop the requirement in the ARIA spec that host languages must allow a token list as the value of the role attribute. The ARIA spec should instead make it a document-conformance (authoring) error for a role value to have multiple tokens. Or at the very least the spec should allow host languages to make it a document-conformance error. Details/rationale: The ARIA specification does not identify any valid use cases for role values that contain multiple tokens, nor do any of the examples in the ARIA spec contain role values with multiple tokens, nor do any of the examples in other ARIA-related W3C documents. What possible valid use case actually exists for a document to have a role attribute that contains multiple tokens? Why would an author ever intentionally (non-accidentally) use a role attribute with multiple tokens? If there's no good reason for an author to ever intentionally use a role value with multiple tokens, rather than doing it accidentally, then the ARIA spec should make it a document-conformance error to do so. Also, speaking as an implementor of an HTML+ARIA validator, I can tell you that it's not practical to implement support in the validator for doing HTML+ARIA validation if role values are allowed to contain multiple tokens and the validator is expected to process them. To be specific: Given the complexities of the other requirements defined in the ARIA specification for the use of the role attribute, if the role value is also -- on to top of all the other complexities -- allowed to have multiple tokens, the only practical way to implement validation support for checking the role attribute and usefully reporting errors is to write all of the ARIA validation support in custom code (e.g., in Java, for the case of the W3C validator) rather than being able to express most of it using a grammar/schema (e.g., a RelaxNG grammar, for the case of the W3C validator). Adding support for validating role values that can contain multiple tokens would probably require at least an order of magnitude more time and work to implement than what was needed to implement the existing ARIA support that we currently have in the validator. And that existing ARIA support in the validator has already by far required more time and work to implement than any other language feature that's supported in the validator. So again, speaking as a (validator) implementor: Given that I can't see any value at all to authors in allowing conformant documents to contain role attributes with multiple tokens, and only a massive implementation cost to supporting it in the validator -- with no clear benefit -- I want to set the expectations of the working group clearly: Support for multiple tokens in role attributes is not going to be implemented in the W3C validator. I think the ARIA spec could still require that conforming *user agents* must process role values that contain multiple tokens. That's fine and I don't think it's impractical for any user agent to implement. But from that it doesn't necessarily follow at all that conforming *documents* should be able to contain role attributes with multiple tokens. --Mike -- Michael[tm] Smith http://people.w3.org/mike
Received on Tuesday, 20 August 2013 07:21:15 UTC