- From: Deyan Ginev <deyan.ginev@gmail.com>
- Date: Sun, 20 Jun 2021 19:15:14 -0400
- To: www-math@w3.org
Dear all, I'm transferring a technical piece of an internal discussion we are trying to have (about aligning the motivation for the "intent" attribute within the group), to the public list. Moritz has re-made his call to reexamine existing specifications before inventing our own new markup. I like the sentiment of "not reinventing the wheel unless we can make it rounder". But I also hope we can try to make these points in a competitive way -- by showing why certain methods are better than others when calling for examining them. You may remember my "tiny showcase" has a parallel capability (thanks to latexml) for generating both an "intent" annotation, as well as a parallel presentation+content cross-referenced MathML 3 tree, and indeed can synthesize narration with each variant. That demo is at [1], and you can try those via the "math format" toggle, say via converting "\binom{a}{b}". I had tried to make the Content MathML variant as attractive as possible, but I still am not that fond of it myself. Just making sure we're making informed choices. The second side of the task to "investigate existing specs" is ARIA, which I think we haven't examined fully as a group yet. At least I hadn't - I am still learning about the existing AT universe. Neil had claimed ARIA isn't sophisticated enough to do the structural expressions we want, such as "binomial-coefficient($1,$2)", however that seems to be a bit of an understatement, thanks to "aria-labelledby", as I discovered this weekend. What's more - to my own delight - the "aria-describedby" attribute allows for an inclusion for secondary properties as annotations, and indeed some existing speech engines make use of these as well. I only succeeded in using Chrome+Screen Reader this time, so all my observations are tied to this AT setup. It's funny, since Chrome can't display the math in my link, but for my demo it can read it regardless. So, with this long introduction, here is a working variant of our "intent" concept using entirely the existing ARIA and MathML 3, and a very ordinary HackMD document: https://hackmd.io/@dginev/SkBHsZTiO There is a lot of friction to be unhappy about - for a perfect alignment with the intent "speech hints" we would need AT tools to be able to do smart narrations over the values of "aria-labelledby", the way they would over the intent expression values. A common example of that is adding prepositions ("from", "to", "at", ...) at the right points. - ARIA requires global ids to make the composition work, and the group tends to frown on those - I have too much freedom to annotate in a non-content way and still get good narration. Empty mrow/mo/mstyle with aria-label? Sure, anything goes, and in any point in the document - courtesy of global ids. - the AT tools are currently a bit fragile. E.g. for some reason the tab-based navigation doesn't pick up the ARIA attributes at all. Instead it reads the raw presentation tree. I only got Chrome to read the ARIA markup when clicking on the nodes using the mouse. - generally navigating with the keyboard for the AT tool is super unclear to me as a new user. I really like using tab, but apparently that is only viable if pretty much everything has a "tabindex" attribute? Strange. But with all the complaints, as a first-time ARIA user, I got the demo working. So that's nice. And when it works, it can work really well - hearing subexpressions with the right narration, and then with the auxiliary property clarified, is very rewarding. Greetings, Deyan [1] https://dginev.github.io/tiny-mathml-a11y-demo/
Received on Monday, 21 June 2021 02:16:53 UTC