ARIA in HTML5

Notes by Joshue O Connor



Rich gives an introduction to ARIA. Making content accessible to AT. Two parts of the spec, states and properties. Describes how this is currently done.


The PF group would like to have the ARIA hyphen.


Shows div example.


Dan – why not support webspaces.


Rich – its just more work.


Hixie suggested the have the ARIA hyphen checked.


Bring in different version of the mark up language


PF group supports the hyphenated vehicle, consistent with SVG.


Rich shows how states and properties can be declared in HTML.


Different ARIA methods include:


<div role=”wairole:checkbox” aria-checked=”true”>


<div role=”wairole:checkbox” aria-checked=”true”>


<div aria-hidden=”true”>..</div>


Rich says we like this as users don’t have to deal with namespaces in HTML,


Support for aria-hidden’”true”


Rich points to aria-hidden’” true”


Those who wish to use ARIA in the namespace can, or they can import it into the markup. If they choose.


Comment: If not happy with Namespaces – restricted the aria style implementation – This approach could also worth with MATHML. Worries by implicit exclusivity of this approach.


Rich: This is really about how you would bring this (ARIA) into an XML markup.


Mike: Now the proposal is maturing it should be taken to other groups to discover what all of the other host languages should be. Looking at the strongest host language candidates. Is there a good use case for ARIA in other language?


Rich: We relaxed having to use namespaces in other languages;


Role Discussion


There are a number of vehicles being discussed.


Dan: Are these dead (<div role=”wairole:checkbox” aria-checked=”true”>

)


R: We currently import the XHML role module into the spec.

Currently using <div role=”wairole:checkbox” aria-checked=”true”>


R: The role attribute model has standard role values that are important for accessibility. ) banner, contentinfo, definition, main etc) ; Listed in Working Draft of the XHTML Role Att Module documents. (19th OCT 2007)


These values are not prefixed.


We also define taxonomy of values.


3.4 Roles taxonomy of roles.


Dan: Is this a UML doc?


R: Defines taxonomy to help to define widgets. Things that traditionally found on the desktop. These can be used by AT to define the keyboard strokes (keymapping).. There is also support for Live regions. Where people whoa re doing AJAX application can have sections of the pages updated and notified when a change occurs.


The grey things are abstract classes. To pull then in, these are all in the role taxonomy, written in RDF fro modelling purposes. There is a prefix and a qname to represent these particular widgets in the aria taxonomy.


There are two ways to deal with the issues.


  1. Do we use role attribute into HTML 5. The PF WG supports this.

  2. 2) a second proposal. (call attribute ARIA=”checked”)

  3. <div aria=”checkbox”>


Ann: Role is a general accessibility mechanism; ARIA is a low level API to represent. Overloading is not a good idea, tried with object before and it was not a good idea. The attributes should be named as consistently as possible to make them easier to author.


R: Role is on every platform. Same on iaccessible2, Linux etc. We want role because this is not just delivered on the browser, being used on middle wave. Now there is role, aria, role. Don’t need multiple ways to describe the same thing. So we would like it to stay as role at this point. Targeting middle ware, not targeting browser, relax role, without having to use namespaces. It up to the group.


Dan: Who is maintainng the test suite?


R: the PF group.


Ann: opera has tests.


Mike: they use the extension mechanism.


R: I have one using the ARIA dash.


Dan:


R: I have a drag and drop example.


Mike C: Not sure if the PF group has evaluated using the role attribute. Implementators opinion is very important (Aaron). Bounce the idea of using ARIA attribute instead of role to the PF group.


Ann: The role attribute is in theory boundless the way it is defined. Not clear of how it works.


Travis: Are you in favour of a name change.


Ann: Not sure what the role is to be used for. Must be consistent with the ARIA dash method. Important not to fork the ARAI role.


CW: I am missing what the role attribute does?


R: The middleware is using role twice. DIAL uses xhtml 2 adapted for diff devices. Now if I had a role. Why not one attribute that means the same thing? Doesn't make sense, confusing to have different roles in other domains.

Someone will create new taxonomies; there could be a name overlap. There are values to having a way to define taxonomy for these values.


R: There have been discussions about extensibility. We cannot review other taxonomies.


M: There should be co-ordination between vendors etc. You don’t want a browser implementing a taxonomy that the AT does not understand.


R: the problem is – someone hacks the taxonomy, or creates it from a flowchart (the string decision). We wish to prevent collisions.

Looking at use cases for SVG in the New Year.


Ann: Ontology’s can be created later


R: Why not now?


A:


. There is an assumption of baseline technologies. We could use what exists now as a baseline functionally. This will be the minimal set. Once we know the aria widget stuff. We need that now. If in the future we need to be careful, use prefixes in the attribute values anyway.


Maciej: Would disambiguation be useful?


~@ The idea is not to expose strings to the use


M: in access API,


R: We have extensive roles. Looking at other vehicles to example taxonomies. We want to prevent collision.


M: There has to be some level of uniqueness (strings)


M How to turn a name paced URI to …


The real solution is to use curios ??



M: How can taxonomy provide information to the user?


A; but it has to be implemented.


R: I don’t want it to be fiexible to have the same name for lots of diff taxonomies.


R; We expand APIs.


@Taxonomies are documents they don’t have to be hard coded.


<fight>


Let hear Doug talk.


Doug explains taxonomies. You don’t have to build a user interface on an entire taxonomy. It can look at what individual strings represent.


Tran: This sounds like XML schema. Has by itself no semantic meaning.



M: Are you presenting XML scheme as a successful technology.


Tran: what can be possible with extensible [...]


M: a scheme is nothing to do with how to render it to the user.


Does not tell what will be outputted.


Henri: An XML schema does not give semantics to the user agent but provides a grammar. Having a taxonomy does not help with generating a UI. You want the AT to read something to the use within the chrome, what is to be read, these strings have to come from somewhere. You know what token is needed. The client . UI on their own don’t give. Either the client creates the widgets visually or aurally, or you are creating the UI from scratch.


Otherwise you just get Uri’s, these cannot contain [..], but a screen reader from France etc may have the needed localisation.


R: Yes, I understand how roles are communicated today to the UA. We are meeting the AT vendors to work it out. Monthly meetings with Freedom scientific. Rich describes what FS/JAWS. Meeting AI squared, linux, monthly meetings. If we need to extend things to include interoperability we can do that. Lets not solve that today, how to doe this via an API.


A decision statement in one taxonomy may mean something in another taxonomy. How this processed is a separate discussion.


M: I wish to see concrete examples.


Doug: we don’t have to solve this now:


Maciej: yes, we do.


R: Show me how to do this with a single string.


James graham:


CW: There is taxonomy in the ARIA role. Having an open-ended taxonomy is your concern?


Ann: I would like the API to mention what the browser makers and vendors implement. Say Microformats start to us the role attribute. Don’t think it's a good idea.


Doug:I don’t think we can limit what authors do. Would it be better to have […] designed to be more flexible, the hcard example will be in there. It’s unfortunate. Lets make it as flexible as possible. Saying we will only do it one-way for accesibility. I don’t want to over engineer this.


@I don’t follow.



Henri: the time attribute on the [..] abbr? Element. Describes


Dan: the taxonomy is designed to match what is in MSAA


H : the taxonomy should help vendors


Dan: I don’t want the […] referenced by the URI.


Dan: what are the company FS?


R: going to show example.


H: string based roles in Opera. I don’t see how a string based URI helps AT.


Dan: Ugly namepaced solutions example. I like the <div aria=”something”> Example to show how this would work with URI based extensibility.


Dan: Proposal. Future teleconference on this.


<break>