Skip to content

Commit

Permalink
Merge pull request #353 from w3c/onix-additional-a11y-information
Browse files Browse the repository at this point in the history
Additional accessibility information technique in ONIX
  • Loading branch information
gregoriopellegrino authored Jul 25, 2024
2 parents bc6c9c3 + 4211b90 commit ccb1d92
Showing 1 changed file with 179 additions and 1 deletion.
180 changes: 179 additions & 1 deletion UX-Guide-Metadata/draft/techniques/onix-metadata/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -804,8 +804,186 @@ <h4>Instructions</h4>
<h3>Additional accessibility information</h3>
<p>This technique relates to <a href="https://www.w3.org/2021/09/UX-Guide-metadata-2.0/principles/#additional-accessibility-information">Additional accessibility information key information</a>.</p>

<section id="additional-accessibility-information-adaptation">
<h3>Adaptation</h3>

<h5>Understanding the variables</h5>
<dl>
<dt><var>dyslexia_readability</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/196/24">code 24 of codelist 196</a> (Dyslexia readability) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that the product has been specifically adapted or has features specifically to improve readability for dyslexic readers, for example specialised font, character and/or line spacing, justification and paragraph spacing, coloring and other options provided specifically to improve readability for dyslexic readers.</p>
</dd>
<dt><var>closed_captions</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/175/V210">code V210 of codelist 175</a> (Closed captions) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>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.</p>
</dd>
<dt><var>open_captions</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/175/V211">code V211 of codelist 175</a> (Open captions) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>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.</p>
</dd>
<dt><var>full_transcript</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/175/V212">code V212 of codelist 175</a> (Full transcript) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that a full transcript of the audio content of the product is supplied with it.</p>
</dd>
<dt><var>sign_language</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/175/V213">code V213 of codelist 175</a> (Sign language interpretation) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that a full signing of audio content of the product supplied with the video file.</p>
</dd>
</dl>

<h5>Variables setup</h5>
<ol class="condition">
<li><b>LET</b> <var>onix</var> be the result of calling <a href="#pre-processing">pre processing</a> given <var>onix_record_as_text</var>.</li>
<li><b>LET</b> <var>dyslexia_readability</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail/ProductFormFeature[ProductFormFeatureType = "09" and ProductFormFeatureValue = "24"]</code>.</li>
<li><b>LET</b> <var>closed_captions</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail[ProductFormDetail = "V210"]</code>.</li>
<li><b>LET</b> <var>open_captions</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail[ProductFormDetail = "V211"]</code>.</li>
<li><b>LET</b> <var>full_transcript</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail[ProductFormDetail = "V212"]</code>.</li>
<li><b>LET</b> <var>sign_language</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail[ProductFormDetail = "V213"]</code>.</li>
</ol>

<h5>Instructions</h5>
<ol class="condition">
<li><b>LET</b> <var>adaptation</var> be an empty array.</li>
<li>
<span><b>IF</b> <var>dyslexia_readability</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-adaptation-dyslexia-readability">"dyslexia readability"</code> to <var>adaptation</var>.</span>
</li>
<li>
<span><b>IF</b> <var>closed_captions</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-adaptation-closed-captions">"closed captions"</code> to <var>adaptation</var>.</span>
</li>
<li>
<span><b>IF</b> <var>open_captions</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-adaptation-open-captions">"open captions"</code> to <var>adaptation</var>.</span>
</li>
<li>
<span><b>IF</b> <var>full_transcript</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-adaptation-full-transcript">"full transcript"</code> to <var>adaptation</var>.</span>
</li>
<li>
<span><b>IF</b> <var>sign_language</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-adaptation-sign-language">"sign language"</code> to <var>adaptation</var>.</span>
</li>
<li><b>IF</b> <var>adaptation</var> is <b>NOT</b> empty:
<ol class="condition">
<li><b>LET</b> <var>adaptation_string</var> be the result of:
<ul class="condition">
<li>calling join on <var>adaptation</var> with the separator <code>", "</code></li>
<li>making uppercase the first character</li>
<li>replacing the last occurence of <code>", "</code> with <code id="join-array-and">" and "</code>.</li>
</ul>
</li>
<li>display <var>adaptation_string</var>.</li>
</ol>
</li>
</ol>
</section>

<section id="additional-accessibility-information-clarity">
<h3>Clarity</h3>

<h5>Understanding the variables</h5>
<dl>
<dt><var>text_to_speech_hinting</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/196/21">code 21 of codelist 196</a> (Text-to-speech hinting provided) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that text-to-speech has been optimised through provision of PLS lexicons, SSML or CSS Speech synthesis hints or other speech synthesis markup languages or hinting.</p>
</dd>
<dt><var>color_not_sole_means_of_conveying_information</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/196/25">code 25 of codelist 196</a> (Use of color is not sole means of conveying information) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that for readers with color vision deficiency, use of color (eg in diagrams, graphs and charts, in prompts or on buttons inviting a response) is not the sole means of graphical distinction or of conveying information.</p>
</dd>
<dt><var>high_contrast_between_text_and_background</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/196/26">code 26 of codelist 196</a> (Use of high contrast between text and background color) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that body text is presented with a contrast ratio of at least 4.5:1 (or 3:1 for large/heading text).</p>
</dd>
<dt><var>ultra_high_contrast_between_text_and_background</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/196/37">code 37 of codelist 196</a> (Use of ultra-high contrast between text foreground and background) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that body text is presented with a contrast ratio of at least 7:1 (or 4.5:1 for large/heading text).</p>
</dd>
<dt><var>visible_page_numbering</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/175/E205">code E205 of codelist 175</a> (Visible page numbering) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that the e-publication (mostly in the case of a fixed-format) contains visible page numbers.</p>
</dd>
<dt><var>high_contrast_between_foreground_and_background_audio</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/196/27">code 27 of codelist 196</a> (Use of high contrast between foreground and background audio) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>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.</p>
</dd>
<dt><var>without_background_sounds</var></dt>
<dd>
<p>If true it indicates that the <a href="https://ns.editeur.org/onix/en/175/A312">code A312 of codelist 175</a> (Without background sounds) is present in the ONIX record, otherwise if false it means that the metadata is not present.</p>
<p>This means that pre-recorded audiobook narration does not contain any background sounds, including music, sound effects, etc, though music and effects may be present if isolated from the speech (ie the sounds do not overlap).</p>
</dd>
</dl>

<h5>Variables setup</h5>
<ol class="condition">
<li><b>LET</b> <var>onix</var> be the result of calling <a href="#pre-processing">pre processing</a> given <var>onix_record_as_text</var>.</li>
<li><b>LET</b> <var>text_to_speech_hinting</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail/ProductFormFeature[ProductFormFeatureType = "09" and ProductFormFeatureValue = "21"]</code>.</li>
<li><b>LET</b> <var>color_not_sole_means_of_conveying_information</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail/ProductFormFeature[ProductFormFeatureType = "09" and ProductFormFeatureValue = "25"]</code>.</li>
<li><b>LET</b> <var>high_contrast_between_text_and_background</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail/ProductFormFeature[ProductFormFeatureType = "09" and ProductFormFeatureValue = "26"]</code>.</li>
<li><b>LET</b> <var>ultra_high_contrast_between_text_and_background</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail/ProductFormFeature[ProductFormFeatureType = "09" and ProductFormFeatureValue = "37"]</code>.</li>
<li><b>LET</b> <var>visible_page_numbering</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail[ProductFormDetail = "E205"]</code>.</li>
<li><b>LET</b> <var>high_contrast_between_foreground_and_background_audio</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail/ProductFormFeature[ProductFormFeatureType = "09" and ProductFormFeatureValue = "27"]</code>.</li>
<li><b>LET</b> <var>without_background_sounds</var> be the result of calling <a href="#check-for-node">check for node</a> on <var>onix</var>, <code class="xpath">/ONIXMessage/Product/DescriptiveDetail[ProductFormDetail = "A312"]</code>.</li>
</ol>

<h5>Instructions</h5>
<ol class="condition">
<li><b>LET</b> <var>clarity</var> be an empty array.</li>
<li>
<span><b>IF</b> <var>text_to_speech_hinting</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-clarity-text-to-speech-hinting">"text-to-speech hinting provided"</code> to <var>clarity</var>.</span>
</li>
<li>
<span><b>IF</b> <var>color_not_sole_means_of_conveying_information</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-clarity-color-not-sole-means-of-conveying-information">"color is not the sole means of conveying information"</code> to <var>clarity</var>.</span>
</li>
<li>
<span><b>IF</b> <var>high_contrast_between_text_and_background</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-clarity-high-contrast-between-text-and-background">"high contrast between text and background"</code> to <var>clarity</var>.</span>
</li>
<li>
<span><b>IF</b> <var>ultra_high_contrast_between_text_and_background</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-clarity-ultra-high-contrast-between-text-and-background">"ultra high contrast between text and background"</code> to <var>clarity</var>.</span>
</li>
<li>
<span><b>IF</b> <var>visible_page_numbering</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-clarity-visible-page-numbering">"visible page numbering "</code> to <var>clarity</var>.</span>
</li>
<li>
<span><b>IF</b> <var>high_contrast_between_foreground_and_background_audio</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-clarity-high-contrast-between-foreground-and-background-audio">"high contrast between foreground and background audio"</code> to <var>clarity</var>.</span>
</li>
<li>
<span><b>IF</b> <var>without_background_sounds</var>:</span>
<span><b>THEN</b> <b>APPEND</b> <code id="additional-accessibility-information-clarity-without-background-sounds">"without background sounds"</code> to <var>clarity</var>.</span>
</li>
<li><b>IF</b> <var>clarity</var> is <b>NOT</b> empty:
<ol class="condition">
<li><b>LET</b> <var>clarity_string</var> be the result of:
<ul class="condition">
<li>calling join on <var>clarity</var> with the separator <code>", "</code></li>
<li>making uppercase the first character</li>
<li>replacing the last occurence of <code>", "</code> with <code id="join-array-and">" and "</code>.</li>
</ul>
</li>
<li>display <var>clarity_string</var>.</li>
</ol>
</li>
</ol>
</section>
</section>

</section>
<section id="app-acknowledgements" class="appendix informative">
<h2 id="acknowledgements">Acknowledgements</h2>
Expand Down

0 comments on commit ccb1d92

Please sign in to comment.