This document provides techniques for meeting the guidelines of the Accessibility Metadata Display Guide for Digital Publications 2.0. It provides practical examples on how to extract information from an EPUB package document and show it to end users.
The metadata processed by these techniques is outlined in EPUB Accessibility 1.1 [[epub-a11y-11]]. It is found in the EPUB package document [[EPUB-33]].
Techniques for displaying accessibility metadata in other metadata formats can be found in the Display Techniques for Displaying Accessibility Metadata.
The algorithms defined in this document do not include instructions for outputting their respective headings because if a given technique does not result in any information (i.e., would output a statement that no information is available), the section may be omitted (i.e., no heading would be displayed). Whether there is any information to display is only known after an algorithm is processed, which would lead to the algorithms having to include instructions to remove headings.
The headings structure to use for the techniques is defined in the guidelines but is repeated here to help guide implementations. The headings are linked to the algorithm they are associated with.
"Ways of
reading"
[ID: ways-of-reading-title]"Conformance"
[ID: conformance-title]"Navigation"
[ID: navigation-title]"Rich
content"
[ID: rich-content-title]"Hazards"
[ID: hazards-title]"Accessibility summary"
[ID: accessibility-summary-title]"Legal
considerations"
[ID: legal-considerations-title]"Additional accessibility
information"
[ID: additional-accessibility-information-title]The code conventions used in the provided code snippet follow a structure commonly found in programming languages like Python, Java, or C++. Here's an explanation of the conventions:
These techniques use XPath 1.0 expressions [[xpath-10]] to verify the presence of accessibility metadata in an EPUB package document and to select information from it. Some of the selectors can be optimized for processors that support newer versions of XPath (e.g., to match an element against a sequence of values rather than repeat the element for each possible value).
Translation of these XPath selectors may be necessary if the input record is transformed into another form, such as a JSON structure.
The outputs provided in this document demonstrate the compact strings to display. For every text string, however, both a compact and descriptive option is available. These strings are provided in a JSON structure, as shown in the following example.
This document does not set a default output. Either the compact or descriptive statements can be presented to the end user, or they can even be provided the option to choose their own preference.
At the end of each output statement is an ID in brackets. This ID corresponds to a key in the JSON file containing both the compact and descriptive display statements (see the preceding example). To use the descriptive statement instead of the compact, simply select the "descriptive" subkey instead of the "compact" one associated with the ID.
In this section we define the functions common to all techniques, which are called by them during execution.
Before working directly with the metadata we must read the metadata in the Package document (package document) inside the EPUB. This is a common starting point for all techniques that allows us to query the metadata directly.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
To generate the internal representation, run the following steps:
Many of the techniques rely on checking for the presence or absence of metadata in the metadata section of the Package document.
This algorithm takes:
To check for node, run the following steps:
True
.
False
.This technique relates to the Ways of reading accessibility display field.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
This technique relates to the Visual adjustments accessibility display field.
If true, it indicates that accessibilityFeature="displayTransformability" is present in the package document.
All textual content can be modified means that the digital publication does not restrict the ability of users to modify and reflow the display of any textual content to the full extent allowed by the reading system (i.e. to change the text size or typeface, line height and word spacing, colors).
If true, it indicates that layout="pre-paginated" is present in the package document.
Fixed format means that digital publication is in fixed format (e.g. EPUB Fixed Layout).
/package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="displayTransformability"]
./package/metadata/meta[@property="rendition:layout" and normalize-space()="pre-paginated"]
."Appearance can be modified"
[ID: ways-of-reading-visual-adjustments-modifiable].
"Appearance cannot be modified"
[ID: ways-of-reading-visual-adjustments-unmodifiable].
"No information about appearance modifiability is available"
[ID: ways-of-reading-visual-adjustments-unknown].This technique relates to the Supports nonvisual reading accessibility display field.
If true, it indicates that there is only a single access mode of textual or accessModeSufficient="textual" (all main content is provided in textual form) is present in the package document.
If true, it indicates that there is only a single access mode of auditory (an audiobook).
If true, it indicates that sufficient access mode metadata indicates that the content is at least partially readable in textual form (i.e., "textual" is one of a set of sufficient access modes).
If true, it indicates that at least one of the following is present in the package document:
This means that there are textual alternatives for the non-textual content.
If true, it indicates that there is only a single access mode of visual and there are no sufficient access modes that include textual (e.g., comics and manga with no alternative text).
/package/metadata/meta[(@property="schema:accessMode" and normalize-space() = "textual" and count(//meta[@property="schema:accessMode"]) = 1) or (@property="schema:accessModeSufficient" and normalize-space()="textual")]
.
/package/metadata/meta[@property="schema:accessMode" and normalize-space() = "auditory" and count(//meta[@property="schema:accessMode"]) = 1]
.
/package/metadata/meta[(@property="schema:accessMode" and contains(normalize-space(), "textual")) or (@property="schema:accessModeSufficient" and contains(normalize-space(), "textual"))]
.
/package/metadata/meta[@property="schema:accessibilityFeature" and (normalize-space() = "longDescription" or normalize-space() = "alternativeText" or normalize-space() = "describedMath" or normalize-space() = "transcript")]
.
/package/metadata/meta[(@property="schema:accessMode" and normalize-space() = "visual" and count(//meta[@property="schema:accessMode"]) = 1) and not(//meta[@property="schema:accessModeSufficient" and contains(normalize-space(), "textual")])]
.
"Readable in read aloud or dynamic braille"
[ID: ways-of-reading-nonvisual-reading-readable].
"Not fully readable in read aloud or dynamic braille"
[ID: ways-of-reading-nonvisual-reading-not-fully].
"Not readable in read aloud or dynamic braille"
[ID: ways-of-reading-nonvisual-reading-none].
"No information about nonvisual reading is available"
[ID: ways-of-reading-nonvisual-reading-no-metadata]."Has alternative text"
[ID: ways-of-reading-nonvisual-reading-alt-text].
This technique relates to the Prerecorded audio accessibility display field.
If true, it indicates that the accessModeSufficient="auditory" (all main content is provided in audio form) is present in the package document.
If true, it indicates that the accessMode="auditory" is present in the package document.
This indicates that prerecorded audio content is included as part of the work.
If true, it indicates that the accessibilityFeature="synchronizedAudioText" is present in the package document.
This indicates that text-synchronised prerecorded audio narration (natural or synthesized voice) is included for substantially all textual matter, including all alternative descriptions, e.g. via a SMIL media overlay.
/package/metadata/meta[@property="schema:accessModeSufficient" and
normalize-space()="auditory"]
./package/metadata/meta[@property="schema:accessMode" and
normalize-space()="auditory"]
./package/metadata/meta[@property="schema:accessibilityFeature" and
normalize-space()="synchronizedAudioText"]
."Prerecorded audio synchronized with text"
[ID: ways-of-reading-prerecorded-audio-synchronized].
"Prerecorded audio only"
[ID: ways-of-reading-prerecorded-audio-only].
"Prerecorded audio clips"
[ID: ways-of-reading-prerecorded-audio-complementary].
"No information about prerecorded audio is available"
[ID: ways-of-reading-prerecorded-audio-no-metadata].
This technique relates to the Conformance accessibility display field.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
Returns the description of a11y:certifiedBy if present in the package document.
This means that the name of the organization responsible for compliance testing and certification of the product is present.
Returns the description of a11y:certifierCredential if present in the package document.
This means that the the URL of a web page belonging to an organization responsible for compliance testing and certification of the product is present – typically a ‘home page’ or a page describing the certification scheme itself.
Returns the description of dcterms:date if that date property is associated with the a11y:certifiedBy (Latest accessibility assessment date) if present in the package document.
This means that the date of the latest assessment or re-assessment of the accessibility of the product is present.
Returns the description of a11y:certifierReport (Compliance web page for detailed accessibility information) if present in the package document.
This means that is present the URL of a compliance web page for detailed accessibility information. The web page should be maintained by an independent compliance scheme or testing organization. Note the web page may include information about specific national requirements or voluntary conformance reports.
If set, provides the version of the EPUB Accessibility specification the publication conforms to.
If set, indicates that a conformance claim to the EPUB Accessibility 1.0 specification at WCAG 2.0 Level A.
If set, indicates that a conformance claim to the EPUB Accessibility 1.0 specification at WCAG 2.0 Level AA.
If set, indicates that a conformance claim to the EPUB Accessibility 1.0 specification at WCAG 2.0 Level AAA.
If set, provides the WCAG 2 conformance level claimed.
/package/metadata/meta[@property="dcterms:conformsTo" and contains(normalize-space(), 'EPUB Accessibility 1.1 - WCAG 2.')]
./package/metadata/*[(@rel="dcterms:conformsTo" and @href="http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a") or (@property="dcterms:conformsTo" and normalize-space() = "http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a")]
./package/metadata/*[(@rel="dcterms:conformsTo" and @href="http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa") or (@property="dcterms:conformsTo" and normalize-space() = "http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa")]
./package/metadata/*[(@rel="dcterms:conformsTo" and @href="http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa") or (@property="dcterms:conformsTo" and normalize-space() = "http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa")]
./package/metadata/meta[@property="a11y:certifiedBy" and (not(@refines) or substring(@refines,2)=//*[(@rel="dcterms:conformsTo" and contains(@href, "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "EPUB Accessibility 1.1"))]/@id)]
.
The refines
attribute is used to link evaluation metadata back to the right
evaluator and the evaluator back to their conformance claim. This adds complexity to the
xpaths because these refinement chains need to be resolved by matching fragment
identifiers to IDs.
The xpath for this variable, and the following ones, can be simplified if the ID of the
element containing the conformance string is stored when the conformance claim is first
found. This ID can then be dynamically added to match against the refines
attribute value rather than using text comparisons to relocate the claim each time. The
text comparisons are necessary without such an optimization because it is possible an
EPUB publication has more than one conformance claim.
/package/metadata/meta[@property="a11y:certifierCredential" and (not(@refines) or substring(@refines,2)=//meta[@property="a11y:certifiedBy" and substring(@refines,2)=//*[(@rel="dcterms:conformsTo" and contains(@href, "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "EPUB Accessibility 1.1"))]/@id]/@id)]
./package/metadata/meta[@property="dcterms:date" and substring(@refines,2)=//*[(@rel="dcterms:conformsTo" and contains(@href, "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "EPUB Accessibility 1.1"))]/@id]
./package/metadata/link[@rel="a11y:certifierReport" and (not(@refines) or substring(@refines,2)=//meta[@property="a11y:certifiedBy" and substring(@refines,2)=//*[(@rel="dcterms:conformsTo" and contains(@href, "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "http://www.idpf.org/epub/a11y/")) or (@property="dcterms:conformsTo" and contains(normalize-space(), "EPUB Accessibility 1.1"))]/@id]/@id)]/@href
."No information is available"
[ID: conformance-no].
"This publication exceeds accepted
accessibility standards"
[ID: conformance-aaa].
"This publication meets accepted
accessibility standards"
[ID: conformance-aa].
"This publication meets minimum
accessibility standards"
[ID: conformance-a].
"Conformance to
accepted standards for accessibility of this publication cannot be
determined"
[ID: conformance-unknown-standard].
"The publication was certified by "
[ID: conformance-certifier]"The certifier's credential is "
[ID: conformance-certifier-credentials]If the certifier metadata value is a text-based badge or a credential, then only the text is displayed. If the badge or credential is expressed as a URL, then the URL can be made a link for users to access. The display of image logos or badges is typically arranged between the certifier and the distributor. The distributor would be responsible for identifying the certifier's text or link credential and replacing it with the image or linked image.
The instructions from here on define the output for the detailed conformance information. Refer to the Detailed Conformance section in the guidelines for more information on how to present these strings.
"This publication claims to meet"
[ID: conformance-details-claim].
1.0
':
THEN display " EPUB Accessibility 1.0"
[ID: conformance-details-epub-accessibility-1-0].
1.1
':
THEN display " EPUB Accessibility 1.1"
[ID: conformance-details-epub-accessibility-1-1].
2.2
':
THEN display " WCAG
2.2"
[ID: conformance-details-wcag-2-2].
2.1
':
THEN display " WCAG
2.1"
[ID: conformance-details-wcag-2-1].
2.0
':
THEN display " WCAG
2.0"
[ID: conformance-details-wcag-2-0].
AAA
':
THEN display " Level
AAA"
[ID: conformance-details-level-aaa].
AA
':
THEN display " Level
AA"
[ID: conformance-details-level-aa].
A
':
THEN display " Level
A"
[ID: conformance-details-level-a].
"The publication was certified on "
[ID: conformance-details-certification-info]"For more information refer to the certifier's report"
[ID: conformance-details-certifier-report] as a named link with certifier_report as the URL used.
This technique relates to the Rich content accessibility display field.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
If true, it indicates that accessibilityFeature="latex-chemistry" is present in the package document.
This means that there is a positive indication that the chemical formulae are presented using Latex and works with compatible assistive technology.
If true, it indicates that accessibilityFeature="MathML-chemistry" is present in the package document.
This means that there is a positive indication that the chemical formulae are presented using MathML and works with compatible assistive technology.
If true, it indicates that accessibilityFeature="closedCaptions" is present in the package document.
This means that the audio content of a video can be seen via closed captions that can be turned on or off by the viewer and which will be a separate file from the video itself.
If true, it indicates that accessMode="chartOnVisual" is present in the package document.
This means that there is a positive indication that the product has some information conveyed via some form of illustration, such as a graph, a chart, a diagram, a figure, etc).
If true, it indicates that accessMode="chemOnVisual" is present in the package document.
This means that there is a positive indication that the publication contains chemical notations, formulae.
If true, it indicates that accessibilityFeature="describedMath" is present in the package document.
This means that there is a positive indication that the publication contains mathematical notation, equations, formulae.
If true, it indicates that accessibilityFeature="longDescriptions" is present in the package document.
This means that there is a positive indication that a full alternative textual description has been supplied for all of the graphs, charts, diagrams, or figures necessary to understand the content.
If true, it indicates that accessibilityFeature="latex" is present in the package document.
This means that there is a positive indication that the math is presented using LaTeX and works with compatible assistive technology.
If true, it indicates that accessibilityFeature="MathML" is present in the package document.
This means that there is a positive indication that all mathematical content is presented using MathML and works with compatible assistive technology.
If true, it indicates that accessibilityFeature="openCaptions" is present in the package document.
This means that the audio content of a video can be seen via open captions, which means they cannot be turned off and are always visible when the video plays.
If true, it indicates that accessibilityFeature="transcript" is present in the package document.
This means that a transcript of the audio content of the product is supplied with it.
/package/metadata/meta[@property="schema:accessibilityFeature" and
normalize-space()="latex-chemistry"]
./package/metadata/meta[@property="schema:accessibilityFeature" and
normalize-space()="MathML-chemistry"]
./package/metadata/meta[@property="schema:accessibilityFeature" and
normalize-space()="closedCaptions"]
./package/metadata/meta[@property="schema:accessMode" and
normalize-space()="chartOnVisual"]
./package/metadata/meta[@property="schema:accessMode" and
normalize-space()="chemOnVisual"]
./package/metadata/meta[@property="schema:accessibilityFeature" and
normalize-space()="describedMath"]
./package/metadata/meta[@property="schema:accessibilityFeature" and
normalize-space()="longDescriptions"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="latex"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="MathML"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="openCaptions"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="transcript"]
."Information-rich images are
described by extended descriptions"
[ID: rich-content-extended].
"Chemical
formulas in LaTeX"
[ID: rich-content-accessible-chemistry-as-latex].
"Chemical
formulas in MathML"
[ID: rich-content-accessible-chemistry-as-mathml].
"Text descriptions
of math are provided"
[ID: rich-content-accessible-math-described].
"Math as
LaTeX"
[ID: rich-content-accessible-math-as-latex].
"Math as
MathML"
[ID: rich-content-accessible-math-as-mathml].
"Videos have closed
captions"
[ID: rich-content-closed-captions].
"Videos have open
captions"
[ID: rich-content-open-captions].
"Transcript(s)
provided"
[ID: rich-content-transcript].
"No information is available"
[ID: rich-content-unknown].
This technique relates to the Hazards accessibility display field.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
If true, it indicates that accessibilityHazard="flashing" is present in the package document.
This means that there is a positive indication in the accessibility metadata within the EPUB confirming that the product has a flashing hazard which must be displayed.
If true, it indicates that accessibilityHazard="motionSimulation" is present in the package document.
This means that there is a positive indication in the accessibility metadata within the EPUB confirming that the product has a motion simulation hazard which must be displayed.
If true, it indicates that accessibilityHazard="noFlashingHazard" is present in the package document.
This means there is a positive indication in the accessibility metadata within the EPUB confirming there are no flashing hazards associated with this product.
If true, it indicates that accessibilityHazard="none" is present in the package document.
This means there is a positive indication in the accessibility metadata within the EPUB confirming there are no associated hazard warnings with this product.
If true, it indicates that accessibilityHazard="noMotionSimulationHazard" is present in the package document.
This means there is a positive indication in the accessibility metadata within the EPUB confirming there are no motion simulation hazards associated with this product.
If true, it indicates that accessibilityHazard="noSoundHazard" is present in the package document.
This means there is a positive indication in the accessibility metadata within the EPUB confirming there are no sound hazards associated with this product.
If true, it indicates that accessibilityHazard="Sound" is present in the package document.
This means that there is a positive indication in the accessibility metadata within the EPUB confirming that the product has a sound hazard which must be displayed.
If true, it indicates that accessibilityHazard="unknownFlashingHazard" is present in the package document.
This means the presence of flashing hazards could not be determined.
If true, it indicates that accessibilityHazard="unknown" is present in the package document.
This means that the product has not been assessed for hazards and there is no information about potential hazards.
If true, it indicates that accessibilityHazard="unknownMotionSimulationHazard" is present in the package document.
This means the presence of motion simulation hazards could not be determined.
If true, it indicates that accessibilityHazard="unknownSoundHazard" is present in the package document.
This means the presence of sound hazards could not be determined.
/package/metadata/meta[@property="schema:accessibilityHazard" and
normalize-space()="flashing"]
./package/metadata/meta[@property="schema:accessibilityHazard" and
normalize-space()="motionSimulation"]
./package/metadata/meta[@property="schema:accessibilityHazard" and
normalize-space()="noFlashingHazard"]
./package/metadata/meta[@property="schema:accessibilityHazard" and
normalize-space()="none"]
./package/metadata/meta[@property="schema:accessibilityHazard" and
normalize-space()="noMotionSimulationHazard"]
./package/metadata/meta[@property="schema:accessibilityHazard" and normalize-space()="sound"]
./package/metadata/meta[@property="schema:accessibilityHazard" and normalize-space()="unknownFlashingHazard"]
./package/metadata/meta[@property="schema:accessibilityHazard" and normalize-space()="unknown"]
./package/metadata/meta[@property="schema:accessibilityHazard" and normalize-space()="unknownMotionSimulationHazard"]
./package/metadata/meta[@property="schema:accessibilityHazard" and normalize-space()="unknownSoundHazard"]
."No hazards"
[ID: hazards-none].
"The presence of hazards is unknown"
[ID: hazards-unknown].
"Flashing content"
[ID: hazards-flashing].
"Motion simulation"
[ID: hazards-motion].
"Sounds"
[ID: hazards-sound].
"Flashing hazards not known"
[ID: hazards-flashing-unknown].
"Motion simulation hazards not known"
[ID: hazards-motion-unknown].
"Sound hazards not known"
[ID: hazards-sound-unknown].
"No flashing hazards"
[ID: hazards-flashing-none].
"No motion simulation hazards"
[ID: hazards-motion-none].
"No sound hazards"
[ID: hazards-sound-none].
"No information is available"
[ID: hazards-no-metadata].
This technique relates to the Accessibility summary accessibility display field.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
Being human-written, the accessibility summary will appear in the original language of the publication. Therefore it is necessary to take care of setting up the correct language tag information.
Accessibility summaries were necessary when no systems exposed computed accessibility metadata. With more systems now displaying this information, much of the accessibility summary may be redundant. Publishers should focus on adding information not provided within the computed metadata, such as specifying where in a video file a flashing hazard exists, or noting the reason why they failed to meet WCAG-AA due to color contrast issues in the Appendix.
Contains the accessibilitySummary from the package document if it exists; otherwise, it will be blank.
This means there is a human-written text containing a short explanatory summary of the accessibility of the product or the URL of a web page comprising such a summary. Summarizes the already existent information and may add information that the publisher could not express with the other codes.
Returns the lang attribute of the node containing the accessibility_summary, or the lang attribute of the nearest ancestor.
This is the language code in which the text of the Accessibility summary was written.
Returns the value of nearest "language" if present in the package document.
This indicates the main language of the content and therefore the most probable language of accessibility summary.
/package/metadata/meta[@property="schema:accessibilitySummary"]
./package/metadata/meta[@property="schema:accessibilitySummary"]/(@lang|/package/@lang)[last()]/normalize-space(.)
./package/metadata/dc:language[1]
."No information is available"
[ID: accessibility-summary-no-metadata].
This technique relates to the Legal considerations accessibility display field.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
If true, it indicates that a11y:exemption="eaa_disproportionate_burden" is present in the package document.
This means that the digital product falls under European Accessibility Act exception for Disproportionate burden (as defined by current regulations). The product may not have to comply with requirements of the EAA if doing so would financially overburden the publisher.
If true, it indicates that a11y:exemption="eaa_fundamental_modification" is present in the package document.
This means that the digital product falls under European Accessibility Act exception for Fundamental modification (as defined by current regulations). The product may not have to comply with requirements of the EAA if doing so requires a fundamental modification of the nature of the product or service.
If true, it indicates that a11y:exemption="eaa-microenterprise" is present in the package document.
This means that the digital product falls under European Accessibility Act exemption for Micro-enterprises (as defined by current regulations). The product may not have to comply with requirements of the EAA if the publisher is a micro-enterprise.
/package/metadata/meta[@property="a11y:exemption" and normalize-space()="eaa-disproportionate-burden"]
./package/metadata/meta[@property="a11y:exemption" and normalize-space()="eaa-fundamental-alteration"]
./package/metadata/meta[@property="a11y:exemption" and normalize-space()="eaa-microenterprise"]
."Claims an accessibility exemption in some jurisdictions"
[ID: legal-considerations-exempt].
"No information is available"
[ID: legal-considerations-no-metadata].
This technique relates to the Additional accessibility information accessibility display field.
This algorithm takes the package_document_as_text argument: a UTF-8 string representing the Package document.
If true, it indicates that accessibilityFeature="aria" is present in the package document.
This means that the use of ARIA, including DPUB ARIA is used to improve the semantic markup of the publication.
If true, it indicates that accessibilityFeature="audioDescriptions" is present in the package document.
This means that there is an audio descriptions track available for video content.
If true, it indicates that accessibilityFeature="braille" is present in the package document.
This means that there is braille available within the publication.
If true, it indicates that accessibilityFeature="fullRubyAnnotations" is present in the package document.
This means that ruby annotations are attached to every CJK ideographic character in the content. Ruby annotations are used as pronunciation guides for the logographic characters for languages like Chinese or Japanese. They make difficult CJK ideographic characters more accessible.
If true, it indicates that accessibilityFeature="highContrastAudio" is present in the package document.
This means that foreground audio content (eg voice) is presented with no or low background noise (eg ambient sounds, music), at least 20dB below the level of the foreground, or background noise can be switched off (eg via an alternative audio track). Brief and occasional sound effects may be as loud as foreground voice so long as they are isolated from the foreground.
If true, it indicates that accessibilityFeature="highContrastDisplay" is present in the package document.
This means that body text is presented with a contrast ratio of at least 4.5:1 (or 3:1 for large/heading text).
If true, it indicates that accessibilityFeature="largePrint" is present in the package document.
This means that the e-publication has been formatted to meet large print guidelines.
If true, it indicates that accessibilityFeature="pageBreakMarkers" is present in the package document.
This means that the publication contains references to the page numbering.
If true, it indicates that accessibilityFeature="rubyAnnotations" is present in the package document.
This means that ruby annotations are attached to some but not all CJK ideographic characters in the content.
If true, it indicates that accessibilityFeature="signLanguage" is present in the package document.
This means that a full signing of audio content of the product is supplied with the video file.
If true, it indicates that accessibilityFeature="tactileGraphic" is present in the package document.
This means that there is tactile graphic(s) contained within this publication.
If true, it indicates that accessibilityFeature="tactileObject" is present in the package document.
This means that there is tactile 3D object(s) contained within this publication.
If true, it indicates that accessibilityFeature="ttsMarkup" is present in the package document.
This means that text-to-speech has been optimized through provision of PLS lexicons, SSML or CSS Speech synthesis hints or other speech synthesis markup languages or hinting.
/package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="aria"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="audioDescription"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="braille"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="tactileGraphic"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="tactileObject"]
./package/metadata/meta[@property="schema:accessibilityFeature" and normalize-space()="ttsMarkup"]
."Page breaks included"
[ID: additional-accessibility-information-page-breaks].
"ARIA roles included"
[ID: additional-accessibility-information-aria].
"Audio descriptions"
[ID: additional-accessibility-information-audio-descriptions]."Braille"
[ID: additional-accessibility-information-braille].
"Full ruby annotations"
[ID: additional-accessibility-information-full-ruby-annotations].
"High contrast between foreground and background audio"
[ID: additional-accessibility-information-high-contrast-between-foreground-and-background-audio] .
"High contrast between foreground text and background"
[ID: additional-accessibility-information-high-contrast-between-text-and-background].
"Large print"
[ID: additional-accessibility-information-large-print].
"Some Ruby annotations"
[ID: additional-accessibility-information-ruby-annotations].
"Sign language"
[ID: additional-accessibility-information-sign-language].
"Tactile graphics included"
[ID: additional-accessibility-information-tactile-graphics].
"Tactile 3D objects"
[ID: additional-accessibility-information-tactile-objects].
"Text-to-speech hinting provided"
[ID: additional-accessibility-information-text-to-speech-hinting].
This section identifies substantive changes between versions. For a list of all changes, refer to the issue tracker.
textual_alternatives
and
conformance
variables to be xpath 1.0 conformant. See issue 586.refines
attribute linking of conformance
metadata fields. See issue 374.