-
Notifications
You must be signed in to change notification settings - Fork 101
ARIA DPUB roles (epub:type)
You have hopefully seen the announcement ( https://www.w3.org/blog/2016/12/dpub-aria-1-0-is-released-as-a-candidate-recommendation/ ) about releasing DPUB-ARIA 1.0 ( https://www.w3.org/TR/dpub-aria-1.0/ ) as a Candidate Recommendation. We are now seeking feedback and looking for implementations to fulfill the exit criteria ( https://www.w3.org/TR/dpub-aria-1.0/#exit_criteria ) so we can move to the last stage of publishing the spec. We have some samples of content using dpub-aria roles or their predecessors in the epub:type vocabulary. It would be very helpful to include samples of reading systems that alter their actions based on the presence of these terms in our tests. We may not be able to create standard tests in the way that we can for content samples, but we will be able to use a testimonial-style report about what you do with the roles or epub:type terms.
List of roles:
https://www.w3.org/TR/dpub-aria-1.0/#roles
(also see: https://idpf.github.io/epub-vocabs/structure )
Readium's prototype implementation of "popup footnotes" handles the following epub:type
values: noteref
, footnote
, note
, rearnote
.
See Pull Requests:
https://github.com/readium/readium-shared-js/pull/270
https://github.com/readium/readium-js-viewer/pull/505
Readium's current SMIL Media Overlays implementation of "skippables" and "escapables" relies on epub:type
values to infer whether DOM elements can be skipped or escaped during playback. Note that the list of supported values is currently bogus, must check latest EPUB3.1 specification to adjust accordingly ( http://www.idpf.org/epub/31/spec/epub-mediaoverlays.html#sec-skippability and http://www.idpf.org/epub/31/spec/epub-mediaoverlays.html#sec-escabaility )
ReadiumJS:
https://github.com/readium/readium-js/blob/develop/js/epub-model/package_document_parser.js#L305
https://github.com/readium/readium-js/issues/155
ReadiumSDK:
https://github.com/readium/readium-sdk/blob/develop/ePub3/ePub/media-overlays_smil_model.cpp#L1173
https://github.com/readium/readium-sdk/issues/270
There is also a prototype ReadiumJS implementation to support HTML parsing (in addition to existing XHTML) and to handle the role
attribute (in addition to epub:type
).
Related pull requests:
https://github.com/readium/readium-js-viewer/pull/483
https://github.com/readium/readium-js/pull/134
https://github.com/readium/readium-shared-js/pull/252
https://github.com/readium/readium-cfi-js/pull/45
Notably, there is "helper" function to centralise the use of role
or epub:type
across ReadiumJS, depending on whether EPUB content documents are HTML or XHTML:
https://github.com/readium/readium-shared-js/pull/252/files#diff-103715cf0e3db43f218c7235fd2a18fbR77