Accessibility self review #13
Labels
a11y-tracker
Group bringing to attention of a11y, or tracked by the a11y Group but not needing response.
Closed: Question answered
Used when the discussion has reached a conclusion, but there wasn't any actual issue with the spec..
Decision by: Editor's jugement
Issue closed by the Editor judging that there was sufficient agreement / no need for agreement
Tests: Unneeded
This closed issue does not need tests.
Type: Question
Questions about the specification which only seek an answer, and do no need changes to the spec.
This review is based on the 23 May 2024 WD, answering question from APA's FAST Checkliks
Prelude:
This specification extends an existing feature rather than introduce a new one. Maybe of the accessibility characteristics of this technology pre-exist in the underlying feature. This extension improves upon them.
Ruby, at its core, associates text with one (or more) annotations about the text, with the intent of displaying the annotation along side the annotated text, in a visually distinct way. Although this can be used for a number of reasons, the primary motivation is primarily an accessibility feature targeting people, who for a variety of reasons, have difficulty reading the base text. By far, the dominant use case is for ideograph based east-asian languges, where learning the writing system requires memorization of thousands of different letters. Children, non-native speakers, people with learning disabilities, or people from under-privileged backgrounds and with a limited education, frequently struggle to read unassisted. Ruby enables phonetic annotations to be attached to the potentially challenging text, thereby making otherwise unreadable content accessible to more readers.
These annotations are typically displayed between lines of text immediately above or below the words they annotate, though alternative presentations can be desired and are enabled by CSS in general, and https://www.w3.org/TR/css-ruby-1/ in particular.
All this is true prior to this extension specification. However, the markup patterns enabled by the HTML standard, while concise and effective in simple cases, are insufficient to handle all use cases well. In particular, while it does enable authors to indicate annotation is associated with which word, it does not give them sufficient tools for authors to also indicate which part of the annotation is associated with which character in the base word, unless they are willing to sacrifice the natural document order, and interleave parts of annotations between parts of words.
The negative consequence of not having a complete mapping of annotation parts with base text parts while respecting the natural document order is that authors need to change their markup depending on the specifics of the visual rendering they intend, as not all presentations can be supported from the same semantic markup. Further, some markup patterns, necessary for some desirable presentational characteristics, break other features, such as search ability or copy and paste, due to unnatural interleaved markup patterns they require.
A key goal of this specification is to remedy these downsides, by offering markup patterns that convey the complete relations between the base text and its parts with the annotation and its parts, while respecting the natural order of the text. From there, authors and user or user agents can offer alternative presentations without modifying the markup, and no longer have to make compromises such as choosing between proper alignment and proper line breaking, while the natural order of the text in the markup avoids the search / copy-paste / or speech synthesis ordering problems that could occur with otherwise.
Occasionally, having multiple levels of annotation over the same base text can be desirable. The current HTML spec purports to address this, but the way it specifies this is not implemented in user agents, and suffers from similar inflexibilities. The markup model defined by extension specification addresses this issue as well.
A known pre-existing challenge with ruby, which this revision of the specification does not attempt to address, relates to speech
synthesis: when faced with annotated text, should screen-readers or other text-to-speech systems read the base text, the annotation, or both? Depending on the use case, the appropriate answer may vary, and picking the wrong answer can be confusing to the reader. There currently is no good way for authors to indicate their intent, or for user-agents to infer it reliably. This extension specification does not address the problem, but does not make it worse either. The i18n Working Group is pursuing an exploration of this problem space, documented in https://w3c.github.io/ruby-t2s-req/. We hope that to tackle this in a later project. For the moment, with this extension specification, the focus is on getting the basic markup structure right.
Answers to the questions:
This technology is HTML markup for text, it does enable visual rendering. The same CSS/HTML/… techniques that apply to any and all HTML textual markup apply here to.
<rb>
and<rtc>
, we should revert the Removal of obsolete elements RB and RTC html-aam#253 Pull request, which removed them from HTML accessibility mappings when they were obsoleted.This technology is HTML markup for text. It does not introduce new abilities to control color, but usual CSS techniques apply.
It does not.
It does not directly offer any new interaction capabilities.
It is used in an HTML document. Many answers to the questions asked are provided by HTML itself, not by this extention
It does not.
This technology does not provide audio in and of its own. See the discussion above for remarks about interaction with screen-readers.
It does not.
Not really applicable. It creates relatationships between other bits of HTML markup, not really new objects.
The questions are not really applicable, because Ruby provides alternate content / annotations over content, which are not inherently "fallback" content, as they are not meant to be displayed instead of the main content when it fails, but along side it. Nevertheless, CSS can be used to show or hide some of the alternatives, and the markup patterns enable knowing which content is primary and which is annotations for it. This is true of pre-existing ruby markup, and remains true with this extension.
it does not
It does not. (HTML does, but and this fits within that, but it does not define a new API)
It does not.
The text was updated successfully, but these errors were encountered: