EPUBのアクセシビリティ仕様であるEPUB Accessibility 1.0は、アクセシビリティの要件として、EPUB出版物のパッケージドキュメント(OPFファイル)にschema.orgの語彙である以下のアクセシビリティメタデータを包含することを求めています。
- accessMode(必須)
- accessibilityFeature(必須)
- accessibilityHazard(必須)
- accessibilitySummary(必須)
- accessModeSufficient(推奨)
- accessibilityAPI(任意)
- accessibilityControl(任意)
なお、上のschema.org以外の語彙のアクセシビリティメタデータを含むことも任意(optional)に行えます。どんどん行け。
例えば、以下のようなEPUB出版物の場合、EPUB 3 パッケージドキュメント(OPFファイル)に含まれるアクセシビリティメタデータは、以下の記述になります。
- EPUB出版物はテキストと視覚機能が必要なコンテンツ(画像やビデオなど)で構成されている
- 非テキストコンテンツには代替テキスト、MathMLと(ビデオに)字幕がアクセシビリティの機能として追加されている
- アクセシビリティ上の注意事項として、動画で画面が点滅する箇所がある。発作を誘発する音声や吐き気を催させるような動作を擬態するものはない。
- その他はWCAGレベルAレベルに適合している。
<package … >
<metadata>
…
<meta property="schema:accessMode">textual</meta>
<meta property="schema:accessMode">visual</meta>
<meta property="schema:accessModeSufficient">textual,visual</meta>
<meta property="schema:accessModeSufficient">textual</meta>
<meta property="schema:accessibilityFeature">transcript</meta>
<meta property="schema:accessibilityFeature">MathML</meta>
<meta property="schema:accessibilityFeature">alternativeText</meta>
<meta property="schema:accessibilityHazard">flashing</meta>
<meta property="schema:accessibilityHazard">noMotionSimulationHazard</meta>
<meta property="schema:accessibilityHazard">noSoundHazard</meta>
<meta property="schema:accessibilitySummary">
The video in chapter 2 presents a flashing hazard. A transcript is
provided that covers all the essential information contained in the
video. The publication otherwise meets WCAG 2.0 Level A.
</meta>
<dc:publisher>Acme Publishing Inc.</dc:publisher>
<meta property="a11y:certifiedBy">Acme Publishing Inc.</meta>
<link rel="dcterms:conformsTo" href="http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa"/>
…
</metadata>
…
</package>
というわけで、上のようにEPUB出版物に含むアクセシビリティメタデータについてまとめてみました。
以下、言及がない場合は、EPUB Accessibility 1.0 については、imagedriveさんによる日本語訳、記述例については“EPUB Accessibility Techniques 1.0″(2017年1月5日版)からの引用です。
アクセシビリティメタデータを提供する意義
EPUB Accessibility 1.0で以下のように、アクセシビリティメタデータを提供することの意義を説明しています。
EPUB 出版物のアクセシブルな品質を、全ての利害関係者によって発見できることを保証することが、主要な関心事である。アクセシビリティ要件を満たすために用意された全てのアフォーダンスを知ることを要求することは、ユーザーが、それを購入したり、借りたり、別な方法で入手するとき、EPUB 出版物のユーザビリティを判断するために必要である。
同様に、この仕様の要件を満たさないコンテンツは、広くアクセシブルでないにしても、依然として個々のユーザーのニーズを満たしているかもしれない。ただ豊かなメタデータの包含を通してのみ、ユーザーは、それらのコンテンツが彼らのニーズに適しているかどうかを判断できる。
端的にいえば、アクセシビリティの観点から自分が利用できるEPUB出版物を発見できる、もっとストレートに言えば、自分が利用することができないコンテンツを検索時に排除できることに、アクセシビリティメタデータを提供する意義があると言えましょうか。EPUB出版物について、ユーザーが自分の状態に応じて自分の利用できるコンテンツを判断して選択することができるようにすることをEPUB Accessibility 1.0では、「発見可能(Discoverable)」と表現しています。
EPUB Accessibility 1.0では、要件の適合によって以下のとおり、「発見可能なEPUB出版物」、「アクセシブルなEPUB出版物」、「最適化されたEPUB出版物」の3つにわけて整理していますが、いずれも「発見のメタデータ要件」を備えていることが必須としています。EPUB出版物そのもののアクセシビリティ品質を高めることよりも、アクセシビリティメタデータを提供することによってEPUB出版物を「発見可能(Discoverable)」とすることを最低ラインとしていることが重要です。コンテンツをアクセシブルにすることも重要ですが、既存のコンテンツを必要な人に到達させることができる仕組みはもっと重要と整理されているということになります。
必須(MUST)とされているメタデータ
【解説】
(例えば、テキスト、視覚、聴覚、触覚のように)コンテンツを処理または理解するために必要な人間の感覚・知覚システムや認識能力
from “EPUB Accessibility 1.0”
そのコンテンツが製作されたままの状態で正確に理解するに必要な人間の機能を明示する語彙です。EPUB出版物が、例えばテキストと画像で構成されるならば、画像を含めてそのコンテンツが製作されたままの状態で正確に理解するためは、テキストデータを利用できる能力と、画像を利用できる視覚機能が必要です。ユーザーにそれを知らせ、EPUB出版物が自身のニーズに合致するものかどうかを知るために提供する語彙です。
なお、accessMode は、そのコンテンツが製作されたままの状態で正確に理解するのに必要な情報ですので、例えば、コミックのように画像だけで構成されるEPUB出版物でその画像に代替テキストが提供されているとしても、”textual”という値は提供しません。アクセシビリティ上の配慮も含めた情報については、後述の accessModeSufficientで提供します。
【値】
- auditory
- tactile
- textual
- visual
- colorDependent
- chartOnVisual
- chemOnVisual
- diagramOnVisual
- mathOnVisual
- musicOnVisual
- textOnVisual
EPUB Accessibility Techniques 1.0 では、EPUBでもっとも使用されそうなのは、auditory、textual、visual、tactileだろうということで、これらの値に以下のように解説がついています。
- textual — 見出し、パラグラフなどにテキストコンテンツを格納する出版物
- visual — 画像、図、アニメーション、ビデなどの視覚的コンテンツを格納する出版物
- auditory — スタンドアロンの音声クリップやビデオのサウンドトラックのような音声コンテンツを格納する出版物
- tactile — 点字や触図などの触覚的コンテンツを格納する出版物
【記述例】
<meta property="schema:accessMode">textual</meta>
<meta property="schema:accessMode">visual</meta>
参考
【解説】
(例えば、代替テキスト、拡張した概要、キャプションなど)コンテンツの全体的なアクセシビリティに貢献する機能や適合。
from “EPUB Accessibility 1.0”
アクセシビリティのために追加された機能や配慮に関する情報を提供する語彙です。代替テキストの有無が判断できることは、かなり重要だと思いますので、それを提供することを意味する”alternativeText”の付与は普及して欲しいですね(逆にいえば、”alternativeText”がないことで、代替テキストが提供されていないことが判断できるようになってほしい)。
【値】
- alternativeText
- annotations
- audioDescription
- bookmarks
- braille
- captions
- ChemML
- describedMath
- displayTransformability
- highContrastAudio
- highContrastDisplay
- index
- largePrint
- latex
- longDescription
- MathML
- none
- printPageNumbers
- readingOrder
- rubyAnnotations
- signLanguage
- structuralNavigation
- synchronizedAudioText
- tableOfContents
- taggedPDF
- tactileGraphic
- tactileObject
- timingControl
- transcript
- ttsMarkup
- unlocked
from WebSchemas/Accessibility(W3C Wiki)
【記述例】
<meta property="schema:accessibilityFeature">MathML</meta>
<meta property="schema:accessibilityFeature">alternativeText</meta>
参考
【解説】
(例えば、発光、動作のシミュレーション、サウンドなど)コンテンツ表現の全ての潜在的な危険性。
from “EPUB Accessibility 1.0”
アクセシビリティの観点からユーザーに知らせておくべき危険を警告するための語彙です。
【値】
- flashing
- noFlashingHazard
- motionSimulation
- noMotionSimulationHazard
- sound
- noSoundHazard
- unknown
from WebSchemas/Accessibility(W3C Wiki)
【記述例】
<meta property="schema:accessibilityHazard">flashing</meta>
<meta property="schema:accessibilityHazard">noMotionSimulationHazard</meta>
<meta property="schema:accessibilityHazard">noSoundHazard</meta>
参考
【解説】
(例えば、拡張された記述の欠如や特定の危険性など)全ての既知な欠陥の説明を包含する、全体的なアクセシビリティの人間が可読可能な要約。
from “EPUB Accessibility 1.0”
製作者がアクセシビリティについて、ユーザーに自然文で知らせるための語彙です。ユーザーに知らせるべきだが、他の語彙では伝えることができない事項もここで補完的に伝えることができます。
【記述例】
<meta property="schema:accessibilitySummary">
The publication is missing alternative text for complex diagrams.
The publication otherwise meets WCAG 2.0 Level A.
</meta>
<meta property="schema:accessibilitySummary">
Chapter four contains a first-person interactive game that could cause
motion sickness in certain individuals. The game is only provided for
illustrative purposes, so readers unable to interact with it will not
be at a disadvantage.
</meta>
参考
推奨(RECOMMENDED)とされているメタデータ
【解説】
情報の著しい損失なしにコンテンツを消費するために十分なひとつ以上のアクセス モードのセット。EPUB 出版物は、それを包含するコンテンツの種類に応じて、消費するために十分なアクセス モードのセットを複数持つかもしれない。すなわち、このプロパティは、accessMode とは異なり、例えば音声コンテンツのトランスクリプトを包含するなど、幅広くアクセシブルでないコンテンツの全てのアフォーダンスを考慮に入れている。
from “EPUB Accessibility 1.0”
accessMode がアクセシビリティ機能の追加される前のデフォルト状態でのEPUB出版物の状態を示すものでしたが、 この
accessModeSufficient は、追加されたアクセシリティ機能を考慮した上でEPUB出版物の内容を利用するのに必要な人間の機能を示す語彙です。
【値】
- auditory
- tactile
- textual
- visual
【記述例】
例えば、以下に accessMode によって情報が提供されているEPUB出版物(テキストと画像で構成される出版物)があるとします。この場合、accessMode は、以下のような記述になります。accessMode の情報だけでは、テキストデータを利用できる能力だけで EPUB出版物の全ての情報がアクセスできるようになっているかはっきりしません。
<meta property="schema:accessMode">textual</meta>
<meta property="schema:accessMode">visual</meta>
まずテキストデータを利用できる能力と画像データ等の視覚情報を利用できる能力があれば、EPUB出版物の全ての情報がアクセスできますので、以下のように”textual”と”visual”をカンマでつないで記述します(順番に意味はないそうです)。
<meta property="schema:accessModeSufficient">textual,visual</meta>
このEPUB出版物の全ての画像に代替テキストが提供され、テキストデータを利用できる能力だけで、EPUB出版物の全ての情報にアクセスできることが保障されている場合は、以下のように “textual”のみを記述します。
<meta property="schema:accessModeSufficient">textual</meta>
この例に挙げたEPUB出版物は、以下のいずれの状態でも全ての情報にアクセスできますので、
- テキストデータを利用できる能力と画像データ等の視覚情報を利用できる能力
- テキストデータを利用できる能力
以下のように”textual,visual”と”textual”のみを併記することになります。
<meta property="schema:accessModeSufficient">textual,visual</meta>
<meta property="schema:accessModeSufficient">textual</meta>
参考
任意(OPTIONAL)とされているメタデータ
【解説】
リソースは、特定のアクセシビリティ API と互換性があることを識別する。このプロパティは、オペレーティング システムのアクセシビリティ API との互換性が、リーディング システムにとって懸念事項であるとして、典型的に、EPUB 出版物でのスクリプティングの使用が、[WAI-ARIA 1.1] オーサリングプラクティスに従っていることを示すためにのみ使用される。
from “EPUB Accessibility 1.0”
accessibilityAPI には、MacOSXAccessibility や iOSAccessibility などのOSのAPIに関する値が用意されていますが、上の EPUB Accessibility 1.0 にもあるとおり、これらのインターフェイスを利用するのは、コンテンツではなく、閲覧環境(リーディングシステム)側です。EPUB出版物の場合は、WAI-ARIAの属性をEPUB出版物に埋め込んだ際に、”ARIA”という値を使用するケースにほぼ限られるのではないかと思われます。
【値】
- AndroidAccessibility
- ARIA
- ATK
- AT-SPI
- BlackberryAccessibility
- iAccessible2
- iOSAccessibility
- JavaAccessibility
- MacOSXAccessibility
- MSAA
- UIAutomation
from WebSchemas/Accessibility(W3C Wiki)
【記述例】
<meta property="schema:accessibilityAPI">ARIA</meta>
参考
【解説】
(例えば、キーボードやマウスなど)コンテンツのアクセスに使用できる入力方法を識別する。
from “EPUB Accessibility 1.0”
これは上の解説と以下の値に示されているコンテンツにアクセスできる方法を識別する情報を提供する語彙です。
以下の記述例では、タッチ、マウス、キーボードで全てのコンテンツがアクセスできることを示しています。仮に”fullKeyboardControl”がない場合は、タッチ、マウスではアクセスできても、キーボードではアクセスできない部分があることを意味し、タッチやマウスが操作できないユーザーにとっては一部のコンテンツが利用できないということになります。
【値】
- fullKeyboardControl
- fullMouseControl
- fullSwitchControl
- fullTouchControl
- fullVideoControl
- fullVoiceControl
from WebSchemas/Accessibility(W3C Wiki)
【記述例】
<meta property="schema:accessibilityControl">fullTouchControl</meta>
<meta property="schema:accessibilityControl">fullMouseControl</meta>
<meta property="schema:accessibilityControl">fullKeyboardControl</meta>
参考
規格またはガイドラインを識別するためのメタデータ
上の表で言うところの、「発見のメタデータ要件」の要件ではなく、「アクセシビリティの要件」、「最適化の要件」に該当しますが、「アクセシビリティの要件」、「最適化の要件」に適合させる場合は、dcterms の conformsTo プロパティで適合している規格・ガイドラインを示すことが必須とされています(must)。
アクセシビリティの要件
EPUB Accessibility 1.0 の「アクセシビリティの要件」では、WCAGのレベルAに適合することが必須とされていますが、あわせて dcterms の conformsTo プロパティでWCAGの適合レベルとEPUB Accessibility Vocabularyの certifiedBy プロパテでEPUB出版物のアクセビティ認証に責任を負う者をメタデータとして提供することが必須(must)とされています。
WCAGの適合レベルを示すIRIはそれぞれ以下の通り。
http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a
http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa
http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa
【記述例】
<metadata>
…
<dc:publisher>Acme Publishing Inc.</dc:publisher>
<meta property="a11y:certifiedBy">Acme Publishing Inc.</meta>
<link rel="dcterms:conformsTo" href="http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa"/>
…
</metadata>
from "EPUB Accessibility 1.0"
最適化(規格またはガイドライン識別)の要件
EPUB Accessibility 1.0 の「最適化(規格またはガイドライン識別)の要件」では、WCAG以外で、適合している規格、ガイドラインを識別するための情報を dcterms の conformsTo プロパティで提供することが必須(must)とされています 。
以下は、DAISYコンソーシアムのEPUB形式で製作された録音図書(音声が主たるコンテンツ)のガイドラインを提示しています。
<package …>
<metadata>
…
<link rel="dcterms:conformsTo" href="http://www.daisy.org/guidelines/epub/navigable-audio-only-epub3-guidelines"/>
…
</metadata>
…
</package>
from "EPUB Accessibility 1.0"
ガイドラインの適切なIRI がない場合、コンテンツを最適化する方法に関する詳細な情報を、accessibilitySummary でアクセシビリティの要約として提供するべき(should)としています。
<meta property="schema:accessibilitySummary">
This publication is optimized for braille readers. It will not be
usable by persons who cannot read braille. The publication is designed
for braille reading devices capable of displaying 6 character cells and
40 character line lengths. The text is not contracted, and follows
Unified English Braille formatting conventions. All characters are
encoded using the Unicode braille character set.
</meta>
from "EPUB Accessibility 1.0"
配信業者が要求する形式でのアクセシビリティメタデータの提供
EPUB Accessibility 1.0は、EPUB出版物の配信業者が求めるメタデータ形式において、アクセシビリティメタデータを提供できる場合には、そのメタデータ形式でのアクセシビリティメタデータの提供も必須としています。
配信業者が、配信記録(例えば、ONIX)を EPUB 出版物に添付させることを要求する場合、製作者は、フォーマットが許可するレコードにアクセシビリティメタデータを包含しなければならない(must)
配信業者がアクセシビリティメタデータの提供を求めていなくても、配信業者が提供を求めるメタデータ形式でのアクセシビリティメタデータを必須としているところがポイントです。EPUB Accessibility 1.0が例として挙げているのは、ONIXの Code List 196(E-publication Accessibility Details)です。
<ONIXMessage release="3.0">
<Header>
…
</Header>
<Product>
…
<DescriptiveDetail>
<ProductFormFeature>
<ProductFormFeatureType>09</ProductFormFeatureType>
<ProductFormFeatureValue>10</ProductFormFeatureValue>
</ProductFormFeature>
<ProductFormFeature>
<ProductFormFeatureType>09</ProductFormFeatureType>
<ProductFormFeatureValue>11</ProductFormFeatureValue>
</ProductFormFeature>
<ProductFormFeature>
<ProductFormFeatureType>09</ProductFormFeatureType>
<ProductFormFeatureValue>13</ProductFormFeatureValue>
</ProductFormFeature>
</DescriptiveDetail>
…
<TitleDetail>
<TitleType>01</TitleType>
<TitleElement>
<TitleElementLevel>01</TitleElementLevel>
<TitleText>Accessible EPUB 3</TitleText>
</TitleElement>
</TitleDetail>
…
</Product>
</ONIXMessage>
参考
配信システム側に求められる対応
EPUB Accessibility 1.0は、コンテンツのアクセシビリティ要件を規定するもので、それをユーザーに提供する配信システムの要件はフォーカス外ではありますが、補論として以下の要件を提示しています。
利用可能なアクセシビリティ メタデータによって、検索結果を絞り込む機能を提供しなければならない(must)。
上の要件はそのとおりで、配信システムで活用されないとEPUB出版物にアクセシビリィメタデータを包含してもあまり意味はないと思いますが、同じことは閲覧環境(リーディングシステム)にも言えるはず。しかし、閲覧環境(リーディングシステム)のアクセシビリティ要件も補論として提示はされていますが、アクセシビリティメタデータのサポートは特に言及はされていません。