]>
この文書は「EPUB Content Documents 3.0」を日本語訳したものです。最新の文書は http://www.idpf.org/epub/30/spec/epub30-contentdocs.html です。原文もしくは最新の情報を参照したい場合は、 EPUB Content Documents 3.0 を参照ください。
この日本語訳は参考です。公式な文書ではありません。翻訳・解釈の正確性を保証しておりません。
また本文内の訳注は翻訳者の主観による補足です。
1.3. 用語にあげられている名称は本文中でも基本的に原文のままとした。
2011年10月11日 勧告仕様
前回のドラフトからの変更点の差分は、このリンクで入手可能である。
この文書(いくらかの規範的な訂正を含むかもしれない)のために、正誤表(英語)を参照されたい。
Copyright © 2010, 2011 International Digital Publishing Forum™
無断複写・転載を禁止する。本作品は合衆国法典第17編の下に保護されている。変更を伴うこの著作物の複製と頒布は、International Digital Publishing Forum (IDPF) の書面による許可を得ない限り禁止されている。
EPUBは International Digital Publishing Forum の登録商標である。
目次
このセクションは参考情報である。
本仕様、EPUB Content Documents 3.0 は、EPUB® Publications のコンテクスト内で使用するための HTML5、SVG、CSS のプロファイルを定義する。
本仕様は EPUB 3 を構成する関連仕様の一つである。 EPUB 3 は XML や Web 標準に基づいたデジタル出版物の交換や配信形式の第 3 版である。この仕様は EPUB 3 を構成する以下の他の仕様と共に読み、理解することになっている:
EPUB 3 Overview [EPUB3Overview] は EPUB の有益な概要と、残りの EPUB 3 document 群のロードマップを提供する。EPUB 3 Overview は最初に読んでおくべきである(should)
EPUB Publications 3.0 [Publications30] は出版レベルのセマンティクスと EPUB Publication のための包括的な適合性要件を定義している。
EPUB Open Container Format (OCF) 3.0 [OCF3] は関連するリソースの集合を単一のファイル(ZIP)の EPUB Container にカプセル化するためのファイル形式と処理モデルを定義する。
EPUB Media Overlays 3.0 [MediaOverlays30] はテキストと音声の同期のための形式と処理モデルを定義する。
本仕様は Open Publication Structure (OPS) 2.0.1 [OPS2] を置き換える。本仕様書と前身の違いについては [EPUB3Changes] を参照されたい。
このセクションは参考情報である。
本仕様による XHTML 文書型の定義は W3C [HTML5] をベースにしており、他の仕様がない限り、HTML5 仕様書が提供するセマンティクスや構造、処理動作の全ての定義を継承する。
さらに、本仕様書は Author が XHTML Content Document に包含してもよい(may)W3C HTML5 文書モデルの拡張セットを定義する。
本仕様書はスクリプトや HTML5 forms もしくは HTML5 DOM のサポートを Reading System に求めない簡易な処理モデルを定義する。本仕様書に準拠した EPUB Reading System は、適合した EPUB Content Document を処理することのみ要求される。スクリプトや HTML5 forms のサポートは任意な Reading System の機能であるように、適合した Reading System は完全に準拠した HTML5 のユーザーエージェントでないかもしれない(例えば、それは完全な HTML5 処理モデルを満たしていないかもしれない)。
本仕様書は XHTML Content Document 内にインラインと独立した SVG Content Document のベクター画像を表現するために SVG 1.1 の限定的なサブセットを定義する。
本仕様書で定義している CSS profile は CSS 2.1 [CSS2.1] をベースラインにしている。CSS 2.1 に適合するすべての CSS Style Sheet は、CSS 2.1 で注記された内容以外を、EPUB Publication のコンテクスト内で使用してもよい(may)。
本仕様書は CSS3 Modules で定義された機能を組み込み、EPUB 固有の CSS の構成概念もまた導入している。
EPUB 3 が参照している W3C 仕様書はまだ最終版ではなく、以前は参照される仕様と適合していた EPUB 3 Content Documents が、仕様の最新版で適合しなくなるような互換性のない変更が将来発生するかもしれない。
IDPF は、仮に互換性のない変更が発生したとき、必要性を考慮してここに定義された規範的な制約を更新し、EPUB 3 のマイナーバージョン番号を増やし(例えば、EPUB 3.0.n
の発行)、EPUB 3 仕様書を改訂することを見込んでいる。
(この仕様とその兄弟仕様によって定義されるように)一組の相互関係のあるリソースから成っていて、EPUB Container でパッケージ化されている論理的な文書のエンティティ。
コンテンツまたは EPUB Publication のロジックと表示に関する命令を含んでいるリソース。このリソースがない場合には、出版物は Author の意図したとおりに表示されないことがある。Publication Resource の例としては Package Document、EPUB Content Document、EPUB Style Sheet、音声、動画、画像、埋め込みフォントとスクリプトが包含される。
Package Document 自身を除いて Publication Resource を manifest [Publications30] に記載しなければならず(must)、Publication Resource の位置 [Publications30] で特に指定がない限り EPUB container ファイルにバンドルしなければならない(must)。
Publication Resource でないリソースの例としては、Package Document の link 要素 [Publications30] で識別されるものと EPUB Container の外で解決する外部へのハイパーリンクで識別されるものが包含されている(例えば [HTML5] の a
要素の href
属性)。
Core Media Type であるため、フォールバック [Publications30] を提供することなく EPUB Publication に包含されてもよい Publication Resource(may)。
EPUB Content Document の定義(XHTML または SVG)の1つに従う Publication Resource。
EPUB Content Document は Core Media Type であるため、フォールバック [Publications30] を提供することなく EPUB Publication に包含されてもよい(may)。
XHTML Content Documents で定義されている [HTML5] のプロファイルに準拠する EPUB Content Document。
XHTML Content Document は、[HTML5] の XHTML syntax を使用する。
SVG Content Documents で表現された制約に準拠した EPUB Content Document。
EPUB Navigation Documents で表される制約に従い、人間と機械が読み取り可能なグローバルなナビゲーション情報を含むのに特化した XHTML Content Document。
スクリプトや HTML5 forms 要素のある XHTML Content Document が包含される EPUB Content Document。
詳細については Scripted Content Documents を参照されたい。
EPUB Content Document は spine から直接参照される。
Publication Resource 型のセットは、それに対するフォールバックは必須ではない。詳細については Publication Resources [Publications30] を参照されたい。
EPUB Publication について Package Documents [Publications30] で定められいる文献の構造化メタデータをもたらしている Publication Resource。
EPUB Publication を構成するすべての Publication Resource のリスト。
詳細については manifest [Publications30] を参照されたい。
Publication Resource の順序リストは、一般的に EPUB Content Document の、標準の Publication の読み上げ順序を表す。
詳細については spine [Publications30] を参照してください。
人工的な人間の発音で EPUB Publication のテキストコンテンツのレンダリングは合成音声を用いる。
CSS のプロファイルに準拠する CSS スタイルシートは EPUB Style Sheets で定義されている。
EPUB Publication の内容が視覚的に User に与えられる EPUB Reading System の領域。
CSS でスタイルされたコンテンツを表示できる Viewport。
SVG 画像を表示できる Viewport。
[OCF3] で定義されている EPUB Publication 用 ZIP ベースのパッケージングと配布の形式。
EPUB Publication(必ずしも、それが含まれるコンテンツとリソースの作者であるというわけではない)の制作に対して責任がある人または組織。
EPUB Reading System を使用して EPUB Publication を消費する個人。
本仕様書と兄弟仕様書に準拠する方法で User に提示するために EPUB Publication を処理するシステム。
本仕様書は、XHTML Content Document 制作のために [HTML5] のプロファイルを定義する。このプロファイルに準拠する XML 文書のインスタンスは Core Media Type で、XHTML Content Document として本仕様書と兄弟仕様書で言及される。
他の指定のない限り、本仕様書は、[HTML5] 仕様書からセマンティクスと構造、処理動作の全ての定義を継承する。
EPUB 3 XHTML Content Document の定義は、まだ策定中で非互換の方法で変更されるかもしれない W3C [HTML5] 仕様書の機能を参照している。このような機能を活用する時、著者は相互運用性と文書の寿命の潜在的な影響に関して内在するリスクをよく考えるべきである(should)。
XHTML Content Document は、次の基準を全て満たさなければならない(must):
> XML 適合性 [Publications30] で定義された XML 文書の適合性の制約を満たさなければならない(must)。
> XHTML syntax [HTML5] を使用しなければならない(must).
> XHTML Content Document スキーマで定義されている XHTML Content Document スキーマに対して妥当でなければならない(must)。
> 全ての文書の為に使用されている構成概念は [HTML5] により定義され、それは HTML5 の許容性と制約で明確に上書きされていない限り、その仕様書でこれらの構成概念のために定義された適合性の基準に準拠しなければならない(must)。
> HTML5 の拡張と機能強化で定義された全てのコンテンツの適合性の制約に準拠しなければならない(must)。
>
XHTML Content Document のファイル名はファイル拡張子の .xhtml
を使用するべきである(should)。
XHTML Content Document から参照される全ての Publication Resource は、EPUB Publication - コンテンツの適合性 [Publications30] で定義された Publication Resource のための制約に準拠しなければならない(must)。
適合した EPUB Reading System は、XHTML Content Document の処理のために、次の基準を全て満たさなければならない(must):
> 本仕様書もしくは兄弟仕様書により上書きなどが明確に定義されていない限り、[HTML5] 仕様書により定義されたセマンティクスを使用して XHTML Content Document を処理し、その中に表れる適切な User Agent の適合性の制約を尊重しなければならない(must)。
> HTML5 の拡張と機能強化で定義された全ての Reading System の適合性基準を満たさなければならない(must)。
> HTML5 の許容性と制約で定義された制約の挙動を認識し、適応しなければならない(must)。
> Scripted Content Documents - Reading System の適合性で定義された Reading System の適合性基準を満たさなければならない(must)。
> EPUB Style Sheets - Reading System の適合性で定義された XHTML Content Document の視覚的レンダリングをサポートしなければならない(must)。
> 埋め込まれた ARIA マークアップを認識し、アクセシビリティ APIs [WAI-ARIA] の任意の ARIA ロール(role)やステート(state)、プロパティ(property)がプラットフォームに出現するのをサポートするべきである(should)。
このセクションは、[HTML5] 文書モデルを基礎にして、EPUB 3 の XHTML Content Document の拡張を定義する。
このセクションは参考情報である。
意味の変化は XHTML Content Document 内で使用している要素に特定の意味と、または性質に関するさらなる意味を付与する行為である。EPUB Publication の文脈で、epub:type
属性は、一般的に基本となる [HTML5] の主な語彙を補足する変化をもたらすドメイン固有の意味を表現するのに使用される。(たとえば、属性は、section
が作品の章を意味するのに使用することができるが、特定のリスト構造を避けるのに、p
要素をリスト項目に変化させて使用することはできない。)
セマンティック・メタデータは人間に提供されることを目的にしておらず、その代わりに文書の構造とコンテンツについてのより詳細に Reading System と他の User Agent のために制御方法を提供し、Users のために読書体験を向上させる良い機会を提供する。
本仕様書は、XHTML Content Document の語彙に新しい XML 要素を追加する代わりに、axis 属性を使用して意味の変化のための方法を定義し、epub:type
属性で求められる意味の変化を既存の要素に付与することができる。属性のために制御値を提供する外部の語彙を識別するメカニズムもまた定義する。
epub:type
属性epub:type
属性は、それが出現する要素の意味を変化させる。その値は、語彙の関連性で定義された文書のインスタンスに関連付けられた外部の語彙から抽出される空白で区切られた一つ以上の用語である。
変化された意味は、含んでいる要素の意味のサブクラスを表現しなければならない(must)。([HTML5] の div
や span
など)意味的に中立な要素の場合、変化された意味は、(例えば、div
は段落や節を表現している)既存の要素によってすでに伝達されている意味を加えてはならない(must not)。Reading System は含んでいる要素と矛盾する変化された意味を無視しなければならない(must)。
type
http://www.idpf.org/2007/ops
全ての要素に指定してもよい(may)。
語彙の関連性で定義された制約による、property [Publications30] 値の空白で区切られたリスト。
本仕様は、以下の変更を伴う語彙の関連付けメカニズム [Publications30] で定義された語彙の関連性メカニズムを採用する:
標準の語彙
Content Document の標準の語彙は EPUB 3 Structural Semantics Vocabulary で定義される。
予約済みの語彙
本仕様は、いかなる接頭辞も予約していない。
prefix
属性
prefix
属性の定義は不変だが、属性は Content Document 内で使用されるとき、名前空間 http://www.idpf.org/2007/ops
で定義される。
例
次の例は、脚注(footnote)や注(note)を参照する意味に変化させるのに用いられる epub:type
属性を示している。プロパティは標準の語彙で定義される。
<html … xmlns:epub="http://www.idpf.org/2007/ops"> … <p> … <a epub:type="noteref" href="#n1">1</a> … </p> … <aside epub:type="footnote" id="n1"> … </aside> … </html>
次の例は、HTML5 の定義リストを用語集(glossary)の意味に変化させるのに用いられる epub:type
属性を示している。プロパティは標準の語彙で定義される。
<html … xmlns:epub="http://www.idpf.org/2007/ops"> … <dl epub:type="glossary"> … </dl> … </html>
次の例は、元になった出版物の改行(pagebreak)の意味に変化させるのに用いられる epub:type
属性を示している。プロパティは標準の語彙で定義される。(dc:source [Publications30] 要素は指定された改ページ位置の情報を適用する元になった出版物を識別する手段を提供することに注意されたい。)
<html … xmlns:epub="http://www.idpf.org/2007/ops"> … <p> … <span epub:type="pagebreak" title="234"/> … </p> … </html>
Reading System は以下のように epub:type
属性を処理しなければならない(must):
指定した epub:type
の値に関連付けられている Reading System の動作は、含んでいる要素に関連付けられている動作と衝突するとき、要素に関連付けられている動作の優先順位を指定しなければならない(must)。
W3C Speech Synthesis Markup Language [SSML] は同期スピーチを生成するテキスト読み上げ (TTS) エンジンを支援するために使われる言語である。SSML は独立した文書形式として設計されているが、他のホスト言語内で使用するのにも適した意味も定義している。
本仕様は、SSML 1.1 phoneme
要素の二つの属性(ssml:ph
と ssml:alphabet
) について見直し、EPUB XHTML Content Document 内で利用可能にする。
テキスト読み上げ (TTS) 機能のある Reading System は上記で定義されている SSML 属性をサポートするべきである(should)。
同期スピーチに関連する EPUB 3 の機能に関するより詳細な情報は、テキスト読み上げ [EPUB3Overview] を参照されたい。
ssml:ph
属性ssml:ph
属性は、属性を加えられた要素によって表現されるテキストとしての発話音素や発音記号表記を規定している。
ph
http://www.w3.org/2001/10/synthesis
当て字は論理的に関連付ける(例えば、テキスト情報が含まれている要素)ことのできる全ての要素に指定してもよい(may)。
すでにこの属性を含んでいる要素の子孫に指定してはならない(must not)。
使用されている音韻字母/音声記号に関する構文的に妥当な音素表現/表音。
この属性は、以下を追加した SSML 1.1 phoneme
要素 ph
属性の全てのセマンティクスを継承する:
> ssml:ph
属性がテキストノードの子孫要素に出現するとき、発音を適用するのに対応する文書のテキストは、文書の順で、対応する子孫のテキストノードの結果を一続きにする。指定された発音記号表記は、全体の中のテキストデータの要素と論理的に一致しなければならない(must)(すなわち、その内容の孤立した部分だけではなく)。
SSML 属性と PLS Documents をサポートする Reading System は、これらの二つの構造のために定義された優先順位の規則を履行しなければならない(must)。
ssml:alphabet
属性ssml:alphabet
属性は、発話音素や発音記号表記のアルファベットが ssml:ph 属性の値で使用されることを規定している。
alphabet
http://www.w3.org/2001/10/synthesis
全体、いかなる要素に指定してもよい(may)。
継承した ssml:ph
の値で使用される発音アルファベットの名前。
この属性は、次の追加を伴った、SSML 1.1 phoneme
要素 alphabet
属性のすべてのセマンティクスを継承する:
> ssml:alphabet
属性の値はドキュメントツリーに継承される。指定された ssml:ph
属性値に使用される発話アルファベットは、最も近い親要素に続く、ssml:ph
属性が出現する要素から始まる ssml:alphabet
属性の最初に発生する位置によって決定される。
本仕様書の SSML 属性の機能をサポートする Reading System は ipa
アルファベットをサポートするべきである(should)。
このセクションは参考情報である。
switch
要素は、Reading System のスクリプト機能に依存せず、Author が User に表示する Publication コンテンツを調整することができる単純なメカニズムを提供する。
Reading System 開発者は、XHTML Content Document に適合でない XML 語彙と新しい HTML 要素のサポートを選択してもよい(may)。switch
メカニズムは、この形式の開発と実験を即すが、同時に、それらのコンテンツが、まだ、すべての準拠した Reading System で表示されることを知ることの安全性の長所を利用したいと望む Author に提供する(たとえば、特殊なマークアップが何もサポートされないとき、すべての XHTML Content Document は妥当であるというベースライン要件を維持する)。
コンテンツの切り替えは有望な機能の開発に関することだけではなく、それはまた、EPUB 3 の新しい機能を扱うことができない古い Reading System のために互換性のレベルを維持する Publication を作ることに使用することができる。たとえば、MathML のインスタンス(現在のネイティブ型)は、EPUB 2 Reading System にフォールバックの画像やテキストを代わりに提供することができるように、switch
要素を使用して追加することができる。
epub:switch
要素switch
要素は、XML fragment を XHTML Content Document のコンテンツモデル内に条件付きで挿入するのを許可している。
Reading System は、文書内にあるそれぞれの switch
要素を一つ一つ処理して、(required-namespace
属性の値により決定された)子の case
要素のいずれかが表現することができるどうかを決定しなければならない(must)。
switch
に遭遇するごとに、それをサポートしている最初の case
コンテンツを Reading System は表現するべきである(should)が、使用可能なオプションのいずれかから選択するのは自由である。Reading System が子の case
要素のいずれかに含まれるマークアップをサポートしていない場合は、default
要素のコンテンツを表現しなければならない(must)。
[HTML5] object
要素は XHTML Content Document 内にカスタム(非コア)のコンテンツタイプを埋め込むのに使用するべきである(should)。カスタムマークアップは、表現するコンテンツが文書の必須部分であり、適切に処理されるために文書のコンテクストに依存するときだけ、switch
要素内に包むべきである(should)。
例
switch
要素を使用して ChemML マークアップを挿入した例。
<epub:switch id="cmlSwitch"> <epub:case required-namespace="http://www.xml-cml.org/schema"> <cml xmlns="http://www.xml-cml.org/schema"> <molecule id="sulfuric-acid"> <formula id="f1" concise="H 2 S 1 O 4"/> </molecule> </cml> </epub:case> <epub:default> <p>H<sub>2</sub>SO<sub>4</sub></p> </epub:default> </epub:switch>
EPUB 2 Reading System に準拠するために MathML マークアップを追加する例。
<epub:switch id="mathmlSwitch"> <epub:case required-namespace="http://www.w3.org/1998/Math/MathML"> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> <mn>2</mn> <mo> ⁡<!--INVISIBLE TIMES--></mo> <mi>x</mi> </mrow> <mrow> <mo>+</mo> <mi>y</mi> <mo>-</mo> <mi>z</mi> </mrow> </math> </epub:case> <epub:default> <p>2x + y - z</p> </epub:default> </epub:switch>
epub:case
要素case
要素は、XML 語彙からマークアップのインスタンスが含まれる。包含されるマークアップは(MathML と SVG の場合には)XHTML Content Document でネイティブにサポートしてもよい(may)が、そのようなサポートは必須ではない。
case
http://www.idpf.org/2007/ops
switch
の必須の最初の子。 繰り返し可。
マークアップ語彙に準拠した XML フラグメントは、required-namespace
属性に識別される。
それぞれの case
要素は、同じコンテンツの代わりの表現を含まなければならない(must)。それらのコンテンツの最良のレンダリングを確保するために、Author は、それらの最適なレンダリングフォーマットによる case
要素を指図するべきである(should)。
case
要素は、XHTML Content Document(たとえば MathML)に妥当なマークアップを含むばあい、そのコンテンツは switch
要素が挿入される場所(すなわち、その追加されたものは妥当でない文書が生じてはならない(must not))で妥当でなければならない(must)。
case
要素内の外部マークアップは整形式でなければならない(must)が、挿入する時点で妥当である必要はない。Author は任意の外部マークアップがそれが使用されるコンテクストに一致することを保証するべきである(should)(たとえば、ブロック要素は、インラインのコンテクストに挿入された switch
要素に包含されるべきではない(should not))。
IDPF は、http://www.idpf.org/epub/switch/ で required-namespace
属性を使用するための一般的な拡張識別子の有益なレジストリを保持する。
epub:default
要素default
要素は、Reading System が case
要素のいずれかを表示できないときに任意の XHTML Content Document 内で妥当なマークアップを提供する。
default
http://www.idpf.org/2007/ops
epub:switch
の必須の最後の子。
id
[省略可]
要素の ID [XML] はドキュメントのスコープ内で一意でなければならない(must)。
[HTML5] に準拠したマークアップフラグメント
default
要素は、switch
のフォールバックとして機能し、XHTML Content Document 内で妥当なコンテンツの表現を包含しなければならない(must)。
default
要素は、switch
が挿入された場所で文書が妥当でなくなるコンテンツを包含してはならない(must not)。XHTML Content Document は、すべての switch
要素がその子の default
要素によって置き換えられていても妥当でなければならない(must)。
EPUB Reading System は、switch
要素をサポートしなければならない(must)。
本仕様書は、switch
要素のための特定の表現のアプローチを要求しない。Reading System は、たとえば、各 switch
のレンダリングするために CSS styling の適応を選択してもよく(may)、必要に応じて他のアプローチを使用してもよい(may)。けれども、すべての Reading Systemは、レンダリングのために switch
ごとに case
要素の中から1つだけ、もしくは default
要素のコンテンツを表示しなければならない(must)。
switch
要素は、その全ての子であるかのように処理され、1つは HTML5 の hidden 属性がセットされなければならない(must)(すなわち、全ての同じ処理規則と属性のために不可欠なアウトラインは、レンダリングされないようにコンテンツに適用するべきである(should))。
レンダリングされるコンテンツは、User の Reading System の機能に依存してもよく(may)、リンクは、switch
要素のみ保証することができる。switch
要素の深い参照は推奨しない。
XHTML Content Document の switch
要素の存在は、switch [Publications30] プロパティを経て Package Document の manifest に示されている。
epub:trigger
要素trigger
要素は、スクリプトと非スクリプトの両方のコンテクストでの、たとえば音声や動画の再生など、マルチメディアオブジェクトをコントロールするためのマークアップで定義されたユーザーインターフェースの作成を可能にする。
trigger
http://www.idpf.org/2007/ops
head
の子要素か、フローコンテンツ内。繰り返し可。
id
[省略可]
要素の ID [XML] はドキュメントのスコープ内で一意でなければならない(must)。
action
[必須]
このイベントのために実行できるアクション。
許可された値:show
| hide
| play
| pause
| resume
| mute
| unmute
ref
[必須]
アクションのオブジェクトである要素を識別する IDREF [XML]
ev:event
[必須]
このトリガーの適用可能なイベントは、[XML Events] で定義されている。
ev:observer
[必須]
このトリガーのソースオブジェクトは、[XML Events] で定義されている。
空
trigger
要素は、指定されたソースオブジェクト(observer
)が提供する event
に、指定されたターゲットオブジェクト(ref
)を実行させる目的のアクションを関連付ける。
定義された action
値のセマンティクスは、
show
- 表示のための要素の DOM visibility [CSS2.1] プロパティの設定。
hide
- 非表示のための要素の DOM visibility [CSS2.1] プロパティの設定。
play
- 関連付けられたリソースを最初から再生(動画や音声要素のみに適用可能)。
pause
- 再生の停止(動画や音声要素のみに適用可能)。
resume
- 再生の一旦停止(動画や音声要素のみに適用可能)。
mute
- 音声のミュート(動画や音声要素のみに適用可能)。
unmute
- 音声のミュートの解除(動画や音声要素のみに適用可能)。
動画や音声の再生をサポートする Reading System は epub:trigger
要素をサポートしなければならない(must)。
再生とミュートのコントロールのために trigger
要素を使用しているビデオプレーヤーのサンプルマークアップ。
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:ev="http://www.w3.org/2001/xml-events"> <head> <epub:trigger ev:observer="pause" ev:event="click" action="pause" ref="test"/> <epub:trigger ev:observer="resume" ev:event="click" action="resume" ref="test"/> <epub:trigger ev:observer="mute" ev:event="click" action="mute" ref="test"/> <epub:trigger ev:observer="mute" ev:event="click" action="show" ref="muted"/> <epub:trigger ev:observer="unmute" ev:event="click" action="unmute" ref="test"/> <epub:trigger ev:observer="unmute" ev:event="click" action="hide" ref="muted"/> </head> <body> <video id="test" src="birds.mp4" width="320" height="240"/> <p> <span class="button" id="resume">Play/Resume</span> <span class="button" id="pause">Pause</span> <span class="button" id="mute">Mute</span> <span class="button" id="unmute">Unmute</span> <span id="muted">MUTED</span> </p> </body> </html>
[AltStyleTags] に従い、link
要素の class
属性は次の値 horizontal
、vertical
、day
、night
のいずれかを包含してもよい(may)。これらの値は、それらの使用するための仕様書によって定義されたセマンティクスを継承する。
Reading System は、必要に応じてタグ付けのスタイルセットを選択・利用し、仕様内で記述するべきである(should)。
本セクションは、基本的な [HTML5] ドキュメントモデルに EPUB 3 XHTML Content Document の許容性と制約を定義する。
このセクションは参考情報である。
XHTML Content Document は、埋め込み [MATHML] をサポートするが、完全な MathML マークアップ言語の制限されたサブセットの使用に限定をする。
このサブセットは、[HTML5] ユーザーエージェントとの互換性を保持しながら、Reading System の実装負荷の軽減とアクセシビリティを促進するよう設計されている。
manifest item
要素の mathml [Publications30] プロパティは、XHTML Content Document が埋め込み MathML を含んでいることを示している。
XHTML Content Document 内の MathML マークアップのいずれかの発生には、以下の追加の制約付きで、MathML 仕様 [MATHML] 内に述べられている制約を準拠しなければならない(must)。
> m:math
要素は、下で定義しているような m:annotation-xml
要素を除外して、Presentation MathML のみ含まなければならない(must)。
> Content MathML は、XHTML Content Document の MathML マークアップ内に包含してもよく(may)、そして、表示されるとき、m:semantics
要素の m:annotation-xml
子要素に生じなければならない(must)。
> Content MathML は、上記の条件のように包含するとき、指定された m:annotation-xml
要素の encoding
属性は、機能的に同等な値の MathML-Content
かそれとも application/mathml-content+xml
を設定しなければならず(must)、その name
属性は contentequiv
に設定されなければならない(must)。
> [MATHML] で非推奨にマークされた要素と属性は、XHTML Content Document の MathML マークアップ内に包含してはならない(must not)。
> XHTML Content Document フラグメントは、XHTML Content Document の MathML マークアップ内に包含してもよく(may)、そして、表示されるとき、m:semantics
要素の m:annotation-xml
子要素内に発生しなければならない(must)。
> XHTML Content Document フラグメントが上記段落経由で包含されるとき、指定された m:annotation-xml
要素の encoding
属性は application/xhtml+xml
を設定されなければならず(must)、name
属性は、alternate-representation
に設定されなければならない(must)。
> 任意の包含された XHTML Content Document フラグメントも、MathML マークアップ自体を含んではならない(must not)。
> 任意の包含された XHTML Content Document フラグメントは、m:math
要素が指定された XHTML Content Document フラグメントによって置き換えられるとき、文書が妥当であり続けるために、祖先 m:math
要素が発生するコンテンツモデルに従わなければならない(must)。
> 代替コンテンツは包含されるべきであり(should)、そして、表示されるとき、代替コンテンツに定義された表現をしなければならない(must)。
適合した EPUB Reading System は、XHTML Content Document に埋め込まれた MathML の処理ために以下の基準のすべてを満たさなければならない(must):
> Presentation MathML の処理をサポートしなければならず(must)、MathML 3.0 仕様 [MATHML] で定義されたセマンティクスを用いた Content MathML の処理をサポートしてもよい(mya)。
> Viewport を持つ場合、Presentation MathML の視覚的なレンダリングをサポートしなければならない(must)。
> MathML マークアップのために代替の代替のテキストコンテンツを生成するとき、与えられた Presentation MathML からそのようなコンテンツを動的に生成できるようにするべきであり(should)、そしてそうでないときは、m:math
要素の alttext
属性に続く XHTML Content Document フラグメントを優先しなければならない(must)。
> XHTML Content Document が埋め込み MathML を包含しているかどうかの信頼すべき定義として、Package Document の manifest item
要素の mathml [Publications30] プロパティを考慮しなければならない(must)。
Reading System は、動的に与えられた Presentation MathML マークアップ(たとえば、Text-to-Speech (TTS) エンジンからの出力など)を使用して、必要な代替テキストレンダリングを生成できるようにするべきである(should)。対応していない Reading System をサポートするために、代替テキストコンテンツは、XHTML Content Document 内に m:math
要素が出現するたびに包含するべきである(should)。
m:math
要素の alttext
属性は、短い代替テキストの実行に十分なとき、この主にこの目的のために使用されるべきである(should)。より多くの代替テキストが必要とされるとき、XHTML Content Document フラグメントを使用するべきである(should)。(Reading System は、定義済み優先順位を使用してこれら2つの代替テキストの位置を問い合わせることに注意されたい。)
Reading System の前方互換を目的とするために、フォールバック画像を、m:math
要素の altimg
属性を使用して提供してもよい(may)。寸法と位置合わせの属性(altimg-width
と altimg-height
、altimg-valign
)は、altimg
属性と組み合わせて使用することを推奨する。
全ての参照された Publication Resource は、EPUB Publication - コンテンツの適合性 [Publications30] で定義されている Publication Resources のための制約に準拠しなければならない(must)。
XHTML Content Document は、[SVG] の(参照を介しての埋め込み、たとえば、img
や object
要素による) 参照と、(XHTML Content Document 内の svg:svg
要素の直接な包含を介しての埋め込みによる)包含による SVG 1.1 document fragments の埋め込みをサポートする。
XHTML Content Document に埋め込まれた SVG のコンテンツの適合性の制約は、SVG 1.1 の制約の SVG Content Document ために定義されたものと同じである。
Reading System は、SVG Content Documents - Reading System の適合性 に定義された XHTML Content Document に埋め込まれた SVG を処理しなければならない(must)。
manifest item
要素の svg [Publications30] プロパティは、XHTML Content Document に埋め込み SVG を含んでいることを示している。
参照によって XHTML Content Document に埋め込まれた SVG のスタイリングのために、Reading System は、参照先の SVG 文書に含まれる文書の CSS スタイルルールを適用してはならない(must not)
包含によって XHTML Content Document に埋め込まれた SVG のスタイリングのために、Reading Systemは、包含された SVG 要素に含まれている文書の CSS ルールを適用しなければならない(must)。
参照によって包含された SVG は、別の文書のように処理され、SVG Content Document と同様に独自の CSS スタイルルールを包含してもよい(may)。これは、外部の [HTML5] 要素を参照する [HTML5] object
要素の状況と一致していると注意されたい。
本セクションは、Unicode 文字のレパートリーの制約を記載する。
rp
要素> [HTML5] rp
要素は、ruby マークアップを見分けられない古いバージョンの Reading System ためのフォールバック(省略可能な丸括弧表示で囲む ruby
マークアップ)の提供を意図している。EPUB 3 Reading System が ruby を認識し、またフォールバックを提供できるなら、Content Document 内の rp
要素の使用は推奨されない。
embed
要素> [HTML5] embed
要素は、スクリプトをサポートしない Reading System のために、フォールバックを提供するための固有の設備を提供しないので、参照されたリソースにスクリプトの構成要素があるときは使用を推奨しない。Author は、代わりに object
要素を使用するべきである(should)。
このセクションは参考情報である。
Scalable Vector Graphics (SVG) 1.1 (第2版) 仕様書 [SVG] は、最終型のベクターグラフィックとテキストを表現するためのフォーマットを定義する。
EPUB Publication は、典型的に、トップレベルの文書型に XHTML Content Documents を使用するが、SVG Content Document の使用も許可されている。SVG は、典型的に、最終型のページ画像がコンテンツの唯一な適切な表現である場合など(たとえば、マンガやコミックブックのコンテクスト内では、そうであるかもしれない)、特殊な状況でのみ使用する
本セクションは、[SVG] 文書のプロファイルを定義する。本仕様書に準拠した XML 文書のインスタンスは Core Media Type であり、SVG Content Document として本仕様書と兄弟仕様書を参照している。
本セクションは SVG Content Document のための適合性の制約を定義している。XHTML Content Document に埋め込まれた SVG のための適合性の制約は埋め込み SVG を参照されたい。
SVG Content Document は以下の基準のすべてを満たさなければならない(must):
> XML 適合性 [Publications30] で定義されている XML 文書のための適合性の制約を満たさなければならない(must)。
> SVG Content Document スキーマで定義されている SVG Content Document スキーマに妥当で、SVG 1.1 の制限で述べられている全てのコンテンツの適合性の制約に準拠した SVG 1.1 document fragment でなければならない(must)。
> [SVG Access] で与えれているアクセシビリティのガイドラインに順守すべきである(should)。
> SVG Content Document のファイル名は、拡張子に .svg
を使用するべきである(should)。
SVG Content Document から参照される全ての Publication Resource は、EPUB Publication - コンテンツの適合性 [Publications30] で定義された Publication Resource のための制約に準拠をしなければならない(must)。
本仕様書は、以下のように SVG Content Document のコンテンツモデルと XHTML Content Document に埋め込む SVG を制限する:
> [SVG] Animation 要素と Animation event 属性は発生してはならない(must not)。
> [SVG] svg:foreignObject
要素は、妥当な XHTML Content Document のフロー・コンテンツのみを含めなければならず(must)、requiredExtensions
属性は、もし指定されているなら、http://www.idpf.org/2007/ops
を設定しなければならない(must)。
> [SVG] svg:title
要素は、妥当な XHTML Content Document のフレージング・コンテンツのみを含めなければならない(must)。
適合した EPUB Reading System は、SVG Content Document と XHTML Content Documents に埋め込む SVG の処理のための以下の基準のすべてを満たさなければならない(must):
> [SVG] 機能(Feature strings を参照)の http://www.w3.org/TR/SVG11/feature#Animation
と http://www.w3.org/TR/SVG11/feature#AnimationEventsAttribute
を引いた機能文字列 http://www.w3.org/TR/SVG11/feature#SVG-dynamic
に相当する SVG の言語機能をサポートしなければならない(must)。
> Scripted Content Documents - Reading System の適合性で定義されている Reading System の適合性の基準を満たさなければならない(must)。
> SVG Viewport を持つ場合、[SVG] の Section 6 で定義されているように CSS を使用した SVG の視覚レンダリングをサポートしなければならず(must)、本仕様書の Appendix N で定義されている全てのプロパティをサポートすべきである(should)。埋め込み SVG の場合、埋め込み SVG と CSS で定義されている制約にも適合しなければならない(must)。
> SVG 要素内で User によるテキストの選択と検索をサポートするべきである(should)。
> XHTML Content Document fragments の存在を表すものとして svg:switch
と svg:foreignObject
要素が表れるとき requiredExtensions 属性の値 http://www.idpf.org/2007/ops
を許可しなければならない(must)。
> EPUB XHTML Content Document に埋め込み SVG を包含しているかどうかの正式な定義として Package Document の manifest item
要素の svg [Publications30] プロパティを考慮しなければならない(must)。
EPUB Content Document は、個別の基本的な仕様([HTML5] と [SVG])でこのために定義された設備を使用してスクリプトを含まなければならない(must)。EPUB Content Document がスクリプトを含むとき、本仕様書や Scripted Content Document のような兄弟仕様書を参照する。このラベルは、それらが HTML5 forms のインスタンスを含む時、XHTML Content Document に適用する。
本仕様書は、スクリプトが現れてもよい2つのコンテクストを定義する:
[HTML5] の script
要素のインスタンスは、Top-level Content Document を包含する。
[HTML5] script
要素のインスタンスは、[HTML5] object
、iframe
、embed
要素のいずれかを使用して親の Content Document に埋め込まれている EPUB Content Document に包含する。
上記の定義されたコンテクストの両方で、JavaScript のコードは、script
要素内に直接埋め込まれるか、src
属性経由で参照されているどうかは、実行するコンテクストに差はない。
どちらのコンテクストのスクリプトも、Reading System がそこに設置するかもしれない権利と制約を決定して利用する。(すべての Reading System が同じスクリプト機能を提供しないことを)順守しなければならない(must)いくつかの固有の要求事項については、コンテンツの適合性と Reading System の適合性を参照されたい。
例
次の例は Package Document と見なす:
<package …> … <manifest> … <item id="chap01" href="scripted01.xhtml" media-type="application/xhtml+xml" properties="scripted"/> <item id="inset01" href="scripted02.xhtml" media-type="application/xhtml+xml" properties="scripted"/> <item id="slideshowjs" href="slideshow.js" media-type="text/javascript"/> </manifest> <spine …> <itemref idref="chap01"/> … </spine> … </package>
そして付随するファイルである scripted01.xhtml
:
<html …> <head> … <script type="text/javascript"> alert("Reading System name: " + navigator.epubReadingSystem.name); </script> </head> <body> … <iframe src="scripted02.xhtml" … /> … </body> </html>
そして付随するファイルである scripted02.xhtml
:
<html …> <head> … <script type="text/javascript" href="slideshow.js"></script> </head> <body> … </body> </html>
これらの例から、以下に当てはまる:
文書は spine から参照されるので、scripted01.xhtml
の head
にある script
要素内のコードは、spine-level のスクリプトであり、
そこで発生した HTML ファイルは、iframe
要素を介して scripted01.xhtml
に包含されるので、scripted02.xhtml
の script
要素内のコードは container-constrained のスクリプトである。
> container-constrained スクリプトは、親の Content Document または Publication 内の他のコンテンツの DOM を変更する指示を包含してはならず(must not)、含んでいる矩形のサイズを操作するための指示を包含してはならない(must not)。
> spine-level スクリプトを包含している EPUB Content Documents は、本仕様書の目的のために次のように定義されている、プログレッシブ・エンハンスメントの技法を利用しなければならない(must)。ドキュメントが、スクリプトのサポートしない、またはスクリプトのサポートが無効になっている Reading System によってレンダリングされるとき、top-level ドキュメントコンテンツは、どんな情報も失われたり、他の重要な劣化なしに User によって消費できるように整合性を保たなければならない(must)。
> (任意の内包モデルを使用して)スクリプトを包含している EPUB Content Documents は、すべての User によって消費できるコンテンツを確保する関連性のあるアクセシビリティの技法を採用するべきである(should)。[WAI-ARIA] [WCAG20]
> (任意の内包モデルを使用して)スクリプトを包含している EPUB Content Documents は、固有のフォールバックメカニズム(例えば [HTML5] object
と canvas
要素のためにそれらを利用できるもの)を使用するかそれとも固有のフォールバックを適用できないとき、manifest-level [Publications30] フォールバックを使用して、そのようなコンテンツのためにフォールバックを提供してもよい(may)。
manifest item
要素の scripted [Publications30] プロパティは、EPUB Content Document は Scripted Content Document であることを示している。
EPUB Reading System のスクリプトのサポートは任意である。スクリプトをサポートする Reading System は、以下の基準を満たさなければならない(must):
> container-constrained スクリプトをサポートしなければならなず(must)、spine-level スクリプトをサポートしてもよい(may)。
> [HTML5] に従ったスクリプトのユーザーエージェントとして、インタラクティブな Scripted Content Document をレンダリングしてもよい。
> 親の Content Document または Publication 内の他のコンテンツの DOM を変更する container-constrained スクリプトを許可してはならない(must not)、含んでいる矩形のサイズを操作するための指示を包含してはならない(must not)(注:たとえスクリプトは container-constrained でなくても、Reading System は、変更に制約を強要してもよい(may)(dom-manipulation feature を参照されたい))。
> スクリプトの実行時に提供される機能に追加の制限を加えてもよい(may)(例えば、ネットワークの制限)。
> 付録 B, JavaScript epubReadingSystem オブジェクトで定義されている JavaScript の navigator
拡張オブジェクト epubReadingSystem
を実装しなければならない(must)。container-constrained スクリプトのコンテクストの機能で定義されている dom-manipulation
と layout-change
機能もサポートしなければならない(must)。
> EPUB Content Document にスクリプトを包含しているかどうかの正式な定義として Package Document の manifest item
要素の scripted [Publications30]
プロパティを考慮しなければならない(must)。
スクリプトをサポートしない Reading System は、以下の基準を満たさなければならない(must):
> Scripted Content Documents のためのフォールバックで定義されているスクリプトコンテンツのためのフォールバックを処理をしなければならない(must)。
Reading System は、他の EPUB の機能を無効にしたり、または(例えば、改ページの無効による)異なるレンダリングやユーザーエクスペリエンスを提供する方法で Scripted Content Documents をレンダリングしてもよい(may)。
container-constrained モデルの使用を制限を選択する Author は、スクリプトと非スクリプトコンテンツの間でより一貫性のあるユーザーエクスペリエンス(例えば、一貫性のあるページネーションの挙動)を確保するでしょう。
Author は、これらの Publication の互換性や寿命、アクセシビリティを向上させ、可能な時はスクリプトの包含を避ける現実的な宣言の技法を使用するべきである(should)。
このセクションは参考情報である。
すべての EPUB Author と Reading System の開発者は、スクリプトコンテンツが、Reading System によって実行されるときに発生するセキュリティ問題に注意する必要がある。Reading System と browser によって採用されている基本的なスクリプトモデルが同じであるように、Web コンテクスト内で発生した問題と同じ種類を考慮しなければならない(must)。
各 Reading System は、特定のドキュメント内のスクリプトが信頼できるかそうでないかを、はっきりさせるべきである(should)。全てのスクリプトが、信頼できない(そして潜在的に悪意のある)ものとして処理され、攻撃のすべてのベクトルが分析され、保護されるのを推奨する。具体的には、以下を考慮するべきである(should)。
ランタイム環境への攻撃(例えば、User のハードドライブからファイルを盗む)、
Reading System 自体への攻撃(例えば、User の本のリストを盗んだりまたは予想外の動作を引き起こす)、
他に対するある Content Document の攻撃(例えば、他のドキュメントに存在するデータを盗む)、
ドキュメントの暗号化された部分に対する非暗号化のスクリプトの攻撃(例えば、保護されているコンテンツを抽出する悪意のあるスクリプトの注入)、
ローカルネットワークへの攻撃(例えば、ファイアーウォールの背後にあるサーバからデータを盗む)。
以下の推奨事項は、信頼できないスクリプトを処理するためのガイドとして提供する:
ブラウザベースのセキュリティは、ドキュメントの URL とドメインに大きく依存してるように、一意のドメインが各 Content Document に割り当てられているように、Reading System は動作するべきである(should)。この提案を採用することで、外部URLやクッキー、DOM ストレージなどへアクセスを制限して、互いと他のインターネットドメインからドキュメントを分離する。
スクリプトとネットワークアクセスが有効な Reading System は、ネットワークのアクティビティが発生していること、そして/または、それらを無効にできることを利用者に通知する手法の包含を考慮するべきである(should)。
実際には、Reading System は、ドキュメントを跨いでドメインを共有してもよいが(may)、それらはまだドキュメント間の分離を維持するべきである(should)。
ドキュメンの一部が暗号化され、そして他の一部がそうでないとき、または異なる暗号化キーがドキュメントの異なる部分に使用されているとき、一意のドキュメントごとのドメインは、十分な保護が提供できないかもしれない。
Reading System に永続的なデータの保存を許可するとき、そのデータを慎重に処理するべきである(should)。スクリプトは、クッキーや DOM ストレージを通じて永続的なデータを保存してもよいが(may)、Reading System は、そのような試みをブロックしてもよい(may)。データの保存を許可している Reading System は、他の関係のないドキュメント(例えば、偽装されているもの)で利用することができないことを保証しなければならない(must)。具体的には、一致するドキュメントの識別子(もしくは同様のメタデータ)のチェックは、永続的なデータへのアクセスを制御するのに妥当な方法ではない。
ローカルストレージを許可している Reading System は、User のためにデータの調査、無効化または削除の手段として提供するべきである(should)。対象の EPUB Publication を削除するとき、それのデータは破壊されるべきである(should)。
これらの推奨事項への順守は、上に挙げた可能性のある攻撃からの保護を保証しないことを注意されたい。開発者は、それらの Reading System のコンテクスト内のそれぞれの潜在的な脆弱性を調査しなければならない(must)。
このセクションは参考情報である。
Reading System は、[HTML5] のような DOM のイベントモデルに従い、これらのイベントに関連付けられている標準のアクションを実行する前に、スクリプト環境に UI イベントを渡すべきである(should)。Reading System 開発者は、潜在的に悪意のあるスクリプトがこれらの Reading System に影響を与えることができる範囲を制限するために、スクリプトが重要な機能(たとえばナビゲーションなど)を無効にできないことを保証するべきである(should)。結果として、スクリプト環境は、いかなるイベントの標準アクションをキャンセルできるべきである(should)が、一部のイベントは通過させないかもしれないしキャンセルできないかもしれない。
Author は、これらの Publication にスクリプト機能を加えるとき、Reading System の実装の可能性を考慮するべきである(should)。(例えば、デバイスのすべてが物理キーボードを備えているわけではなく、多くの場合、ソフトウェアキーボードが、テキストのインプット要素のためのに有効化される。)したがって、キーボードのイベントのみに頼るのは推奨されない。目的のアクションのトリガーとなる代替の方法は、常に提供されるべきである(should)。
本セクションは、XHTML Content Document のスタイリングのために使用するのを意図した Cascading Style Sheets (CSS) のプロファイルを定義する。本プロファイルに準拠している CSS Style Sheet のインスタンスは Core Media Type であり、EPUB Style Sheet として、本仕様書と兄弟仕様書を参照する。
EPUB 3 CSS Profile は、まだ進行中の作業である CSS specification を参照し、互換性のない方法で変更されるかもしれない。そのような仕様書の機能を利用するとき、著者は、互換性とドキュメントの寿命に与える潜在的な影響の関して固有のリスクを考慮するべきである(should)。
EPUB 3 CSS Profile は、以下に記述するように、CSS3 プロパティ名の制限のために -epub-
接頭辞の利用を採用する。これらのプロパティで定義している CSS3 モジュールが成熟し安定であるとして、EPUB のオーサリングガイドラインは、著者に、EPUB 3 Style Sheet でこれらのプロパティの接頭辞のない対等の語句を包含することを即してもよい(may)。
準拠している EPUB Style Sheet は以下の基準のすべてを満たさなければならない(must):
> EPUB 3 CSS Profile に指定されているすべてのコンテンツの制約に順守しなければならない(must)。
> EPUB 3 CSS Profile に明示的に識別されていない構成要素を包含してもよい(may)。
> UTF-8 または UTF-16 でエンコードしなければならない(must)。
CSS Style Sheet から参照されている全ての Publication Resource は、EPUB Publication - コンテンツの適合性 [Publications30] で定義されている Publication Resource の制約に準拠しなければならない(must)。
> CSS Viewport を持つ Reading System は、EPUB 3 CSS Profile で特に記述がない場合を除いてこのプロファイルに包含されているすべての CSS の構成要素(Viewport に相当する仕様書に定義されているようなレンダリング)をサポートするべきである(should)。
> Reading System は、EPUB 3 CSS Profile で明示的に識別されていない CSS の構成要素の追加をサポートしてもよく(may)、[CSS2.1] で定義されているようなサポートされていない構成要素も処理しなければならない(must)。
Reading Systemは、CSS レンダリングのサポートを考慮するさまざまな可能性があり、EPUB Style Sheet の一部または全てのスタイル情報を無視してもよい(may)。
さらに、Reading System が CSS Viewport を持っていないときでも、それは典型的な HTML5 ユーザーエージェント(例えば、無限にスクロールする面ではなくコンテンツの改ページ)とは異なる方法でコンテンツのレンダリングをする可能性がある。
EPUB 3 CSS Profile のスタイル基準は、Cascading Style Sheets Level 2 Revision 1 [CSS2.1] である。プロファイルは、以下の例外のある [CSS2.1] に定義されている規範的な全てのスタイルシートの構成要素を包含する:
position プロパティの fixed
値は、EPUB 3 CSS Profile の一部ではない。潜在的なレンダリングと互換性の問題を回避するため、EPUB Style Sheet に包含するべきではない(should not)。
direction と unicode-bidi プロパティは、EPUB Style Sheet に包含してはならない(must not)。著者は、代わりに、向きの情報を示す適切な [HTML5] マークアップを使用するべきである(should)。
CSS Viewport を持つ Reading System は、font-family プロパティをサポートしなければならない(must)。
Reading System の能力は、絶対的な配置レイアウトでのページネーションは保証しないので、絶対的な配置の依存は推奨されない。Reading System は、これらのプロパティ値をサポートしなくてもよい。
EPUB 3 CSS Profile は、[CSS2.0] に定義されている list-style-type プロパティの値として以下を包含している:
cjk-ideographic
hebrew
hiragana
hiragana-iroha
katakana
katakana-iroha
EPUB 3 CSS Profile は、[CSS3Speech-20110818] で定義されている構文を使用する CSS3 Speech Module [CSS3Speech] と [CSS3Speech] で定義されているセマンティクスから以下のプロパティの -epub-
接頭辞版を包含する:
-epub-cue
-epub-pause
-epub-rest
-epub-speak
-epub-speak-as
-epub-voice-family
合成音声に関連する EPUB 3 の機能の詳細な情報については、テキスト読み上げ [EPUB3Overview] を参照されたい。
EPUB 3 CSS Profile は、[CSS3Fonts-20110324] で定義されている構文と [CSS3Fonts] で定義されているセマンティクスを使用し、CSS Fonts Module Level 3 [CSS3Fonts] 仕様書で定義されている @font-face
ルールと記述子を包含している。
CSS Viewport を持つ Reading System は、@font-face
ルールを使用して埋め込みの OpenType [OpenType] と WOFF [WOFF] フォントをサポートしなければならない(must)。
フォントフォールバック処理の要件については、埋め込みフォントの固有のフォールバック [Publications30] を参照されたい。
Reading System は、少なくとも以下の @font-face
ルールの記述子をサポートしなければならない(must)。
font-family
font-style
font-weight
src
unicode-range
@font-face
ルールをサポートしていない EPUB 2 Reading System の前方互換のために、著者は、font-family プロパティを使用して汎用フォントを参照しなければならない(should)。
EPUB 3 CSS Profile は、[CSS3Text-20110412] で定義されている構文と [CSS3Text] で定義されているセマンティクスを使用して、CSS Text Level 3 [CSS3Text] 仕様書の以下のプロパティの -epub-
接頭辞版を包含している。
-epub-hyphens*
-epub-line-break
-epub-text-align-last
-epub-text-emphasis
-epub-text-emphasis-color
-epub-text-emphasis-style
-epub-word-break
* -epub-hyphens プロパティは、all
の値のサポートを包含していない。
さらに、EPUB 3 CSS Profile は、EPUB 3 CSS Profile(-epub-fullwidth
と -epub-fullsize-kana
のそれぞれ)の接頭辞のない fullwidth
と fullsize-kana
の値の例外を除いて、[CSS3Text] で定義されているセマンティクスと [CSS3Text-20110412] で定義されている構文を使用して、CSS Text Level 3 から接頭辞のない text-transform プロパティを包含している。
以下の注記のような direction と unicode-bidi プロパティの例外を除いて、EPUB 3 CSS Profile は、[CSS3WritingModes-20110428] で定義されている構文と [CSS3WritingModes] で定義されているセマンティクスのプロパティ名に -epub-
を付けた CSS Writing Modes Module Level 3 [CSS3WritingModes] 仕様書で定義されている機能の全てを包含している。
[CSS3WritingModes] の direction と unicode-bidi プロパティは、EPUB 3 CSS Profile に包含していない。著者は、代わりに、向きの情報を示す適切な [HTML5] マークアップを使用するべきである(should)。
EPUB 3 CSS Profile は Media Queries [MediaQueries] 仕様書で定義されているメディアクエリーの @media
と @import
ルールを包含している。
EPUB 3 CSS Profile は、スタイルシートのための標準の名前空間の宣言と名前空間に接頭辞を付けた [CSS Namespaces] で定義されている @namespace
ルールを包含している。
EPUB 3 CSS Profile は、column-span プロパティを除いた CSS Multi-column Layout Module [CSSMultiCol] 仕様書で定義されているすべての機能を包含する。
著者は、この挙動は不安定で変更されるかもしれないので、オーバーフロー状態のカラムの挙動に依存するべきではない(should not)。
ページネーションのアルゴリズムは CSS で完全に定義されていない。著者は、従って、Reading System によって異なる正確なページネーションの位置に期待するべきである。
Reading System は、column-count プロパティのためのエイリアスのような oeb-column-number プロパティを処理しなければならない(must)。EPUB Style Sheets の oeb-column-number プロパティの使用は推奨されておらず、この適合性要件は、EPUB の次の主要なバージョンから削除されるかもしれない。
EPUB 3 CSS Profile は以下の定義のような -epub-ruby-position プロパティを包含している:
名前: | -epub-ruby-position |
値: | over | under | inter-character |
初期値: | over |
適用対象: | ruby text 要素 |
継承: | yes |
パーセンテージ: | 利用不可 |
メディア: | visual |
算出値: | 指定値 |
このプロパティは、ベースとなるテキストを対してルビテキストの配置を制御している。値は以下の意味を持っている:
-epub-ruby-position プロパティは、CSS Ruby Module [CSS3Ruby] の ruby-position プロパティのためのエイリアスとなる。
oeb-page-head
と oeb-page-foot
[CSS2.1] の Section 9.2.4 の display
プロパティに定義された標準値に加え、EPUB Style Sheets は、oeb-page-head
と oeb-page-foot
の値を指定してもよい(may)。
Reading System は、ヘッダーとして display: oeb-page-head
を割り当てられた要素と、フッターとして display: oeb-page-foot
を割り当てられた要素のコンテンツを表示するべきである(should)。どちらも inline
や block
であるかのように単純に表示されるべきである(should)。Reading System が header や footer を表示する方法は、本仕様書では定義されていない(例えば、印刷レイアウトのように固定位置にそれらはレンダリングするか、画面スペースの可能な限りそれらをポップアップしてもよい(may))。
ページレイアウトの目的のために、これらのディスプレイ値は、絶対位置(すなわち、fixed または absolute の値)にボックスを固定することと似ている。それらは通常のフローから除かれ、新しいブロックボックスは独自のフローによって作られる。要素が position: fixed
のセットを持っているかのようにマージンやパディング、他のブロックの特性が決定される。
display: oeb-page-head
または display: oeb-page-foot
を割り当てられた要素は、そのような要素の前に指定された任意のマークアップが同じコンテクスト内(例えば、ページ区切りされたコンテクスト内の同じページ上、またはスクロールコンテクストのビューポート内)でレンダリングされている間は有効と見なしてはならない(must not)。一度有効になったら、要素は、以下の状態が真になるまで有効なままでなければならない(must):
代わりに別の header または footer(それぞれ)が有効、または、
その親要素のいずれの部分も表示されないままである。
例えば、適切なスタイルの設定でスクリーンにレンダリングする時、以下の例にあるような class に myhead を指定された div
要素は、含んでいる div
の前に表示されるものがないとすぐにページのヘッダーになり、div
が非表示になったとき、効果が現れる:
<div> <div class="myhead" style="display: none; display: oeb-page-head"> The OEB Publication Structure: Introduction </div> <h2>Introduction</h2> <p>…</p> </div>
display
プロパティは、この機能をサポートしない Reading System がコンテンツを表示しないことを保証するために oeb-page-head
が設定される前に上の例のように none
の値のセットをする。このアプローチは、oeb-page-head
または oeb-page-foot
値を設定するときはいつでも推奨される。
このセクションは参考情報である。
W3C 発音語彙仕様書 [PLS] は、自動音声認識と Text-to-Speech (TTS) エンジンの使用による XML ベースの発音語彙のための構文とセマンティクスを定義している。
以下のセクションは、EPUB Publication を包含している PLS 文書のための基準と、XHTML Content Document に PLS Documents を結びつけるためのルールを適合性を定義している。
合成音声に関連する EPUB 3 の機能の詳細な情報は、テキスト読み上げ [EPUB3Overview] を参照されたい。
適合した EPUB Publication は、PLS Documents に含むために以下の基準をすべて満たさなければならない(must):
> PLS Documents は、XHTML Content Document に関連付けてよい(may)。それぞれの XHTML Content Document は、0以上の PLS Document を関連付けて含んでもよい(may)。
> PLS Documents は、pronunciation
に設定される rel
属性を持った [HTML5] の link
要素と PLS media type (application/pls+xml
) に設定される type
属性を使用して、それを適用した XHTML Content Document に関連付けられねばならない(must)。
> link
要素 hreflang
属性 それぞれの PLS link
に指定するべきであり(should)、その値が指定されたとき、発音語彙が関連している言語 [PLS] に一致しなければならない(must)。
> PLS Documents は、PLS Documents - コンテンツの適合性 で定義されたコンテンツの適合性の基準に満たさなければならない(must)。
> PLS Documents は、EPUB Publication - コンテンツの適合性 [Publications30] で定義されているような表現と配置にしなければならない(must)。
例
次の例は、XHTML Content Document に関連付けられた二つの PLS Documents(中国語とモンゴル語のためのもの)を示している。
<html … > <head> … <link rel="pronunciation" type="application/pls+xml" hreflang="zh" href="../speech/zh.pls"/> <link rel="pronunciation" type="application/pls+xml" hreflang="mn" href="../speech/mn.pls"/> </head> … </html>
Core Media Type Resource とみなすために、PLS Document は以下の基準をすべて満たさなければならない(must):
> XML 適合性 [Publications30] で定義された XML 文書ための適合性の制約を満たさなければならない(must)。
> http://www.w3.org/TR/pronunciation-lexicon/pls.rng [PLS] で利用できる PLS 文書のための RELAX NG スキーマに妥当でなければならない(must)。
> PLS Document のファイル名はファイル拡張子の .pls
を使用するべきである(should)。
適合した EPUB Reading System は、PLS Documents の処理のための以下の基準をすべて満たさなければならない(must):
> Text-to-Speech (TTS) 機能を持った Reading System は、PLS をサポートするべきである(should)。
> PLS をサポートする Reading System は、[PLS] で定義されているように PLS ドキュメントを処理しなければならない(must)。
> PLS をサポートする Reading System は、発音語彙が関連している言語 [PLS] に一致する language [HTML5] は現在の XHTML Content Document 内のすべてのテキストノードに供給された発音命令を適用しなければならない(must)。言語タグを一致させるためのアルゴリズムは BCP47 で定義されている。
> 発音ルールが、特定の言語に特定の文字列の対象に対して複数指定されているとき、ルールの最後の発生は、任意の事前に定義された発音ルールがオーバーライトするこのような方法で、優先される。
> PLS と SSML 属性をサポートする Reading System は、ssml:ph
ssml:ph 属性経由で提供される任意の発音命令が ssml:ph
属性を含んでいる要素のテキストノードに一致する pls:grapheme
に優先することを許可しなければならない(must)。
この付録のスキーマは、規範である。
これらのスキーマを使用した妥当性検証は、[NVDL] と [RelaxNG]、[ISOSchematron] をサポートする処理系を要求するだろう。
しかしながら NVDL スキーマレイヤーは、単独で埋め込まれている RELAX NG と ISO Schematron スキーマを使用し、マルチパスバリデーションによって置換することができることに注意されたい。
XHTML Content Documents スキーマは、http://www.idpf.org/epub/30/schema/epub-xhtml-30.nvdl が利用できる。
すべてのカスタム data 属性 (data-*
) は、検証の前に削除しなければならないことに注意されたい(must)。
SVG Content Documents スキーマは、http://www.idpf.org/epub/30/schema/epub-svg-30.nvdl が利用できる。
ReadingSystem = navigator.epubReadingSystem;
epubReadingSystem
オブジェクトは、Scripted Content Document が、User の Reading System に関する情報を照会できるインターフェースを提供する。
オブジェクトは、その名前とバージョンなどのような Reading System に関するいくつかのプロパティを表示し、そのサポートする機能を決定するために呼び出すことができる hasFeature メソッドを提供する。
現在の Reading System の名前を表示させる JavaScript の関数の例。
alert("Reading System name: " + navigator.epubReadingSystem.name);
以下のプロパティで、Reading System に関する情報を読み出せるようにしなければならない(must)。
名前 | 概要 |
---|---|
name |
Reading System(例えば、iBooks や Kindle )の名前を表す String 値を返す。 |
version |
Reading System(例えば、1.0 , 2.1.1 )のバージョンを表す String 値を返す。 |
layoutStyle |
コンテンツのレイアウトのスタイルを表す Reading System は、典型的に |
hasFeature(feature[, version])
認識機能のために、hasFeature
メソッドは、いずれのバージョンをサポートしているかを示す boolean 値を返す。
省略可能な version
パラメータを包含しているならば、返り値は、指定されたバージョンのみサポートすることを示す。
メソッドは、機能が Reading System で認識されないときは undefined
を返す。
現在の Reading System が DOM のスクリプト操作をサポートしているかどうかを表す JavaScript の関数の例。
var feature = "dom-manipulation"; var conformTest = navigator.epubReadingSystem.hasFeature(feature); alert("Feature " + feature + " supported?: " + conformTest);
(spine-level や container-constrained の)スクリプトをサポートしているすべての Reading System によって認識されなければならない(must)機能を、以下の表に記述する。Reading System は、これらの機能(詳細は Scripted Content Documents - Reading System の適合性を参照されたい)の一部または全てをサポートしてもよい(may)。
機能の名前は大文字と小文字を区別しない。
名前 | 概要 |
---|---|
dom-manipulation |
スクリプトは、ドキュメントの DOM(spine-level スクリプトのみ適用される)に構造の変更をしてもよい(may)。 |
layout-changes |
スクリプトは、コンテンツのレイアウト(spine-level スクリプトのみ適用される)に影響を及ぼす属性と CSS スタイルの変更をしてもよい(may)。 |
touch-events |
デバイスはタッチイベントをサポートしており、Reading System は、コンテンツにタッチイベントを渡す。 |
mouse-events |
デバイスはマウスイベントをサポートしており、Reading System はコンテンツにマウスイベントを渡す。 |
keyboard-events |
デバイスはキーボードイベントをサポートしており、Reading System はコンテンツにキーボードイベントを渡す。 |
spine-scripting |
Spine-level スクリプトをサポートしている。 |
Reading System がこのセクションで定義された機能をサポートしているなら、バージョンのパラメータセットなしに問い合わせるとき、パラメータに 1.0
の値をセットするときのいずれも true
値を返さなければならない(must)。そうでなければ、false を返さなければならない(must)。
Reading System 開発者は、本仕様書から独立してこの機能のバージョン番号を変更するべきではない(should not)。
追加機能は、Reading System 開発者により加えられてもよいが(may)、本仕様書の将来のバージョンで、そのようなカスタムの追加と競合したり互換性をなくす方法でこの一覧に追加されるかもしれない。
この付録は参考である
EPUB は、出版社、ベンダー、ソフトウェア開発者、および関連する標準規格の専門家を集め、協力的な努力で国際電子出版フォーラム(International Digital Publishing Forum, IDPF) によって開発されました。
EPUB 3 仕様は下に述べるリーダーシップにより2010年5月のメンバーシップによって承認された憲章の下で動作し国際電子出版フォーラム(International Digital Publishing Forum, IDPF)の EPUB Maintenance Working Group によって調整した:
ワーキンググループのアクティブメンバー:
IDPF Members
Invited Experts/Observers
より詳細な承認と EPUB の各バージョンへの貢献者については Acknowledgements and Contributors [EPUB3Overview] を参照されたい。
[AltStyleTags] Alternate Style Tags .
[CSS Namespaces] CSS Namespaces Module .
[CSS2.0] Cascading Style Sheets, level 2 - CSS2 Specification . 12 May 1998 (revised 11 April 2008).
[CSS2.1] Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification . 7 June 2011.
[CSS3Fonts] CSS Fonts Module Level 3 .
[CSS3Fonts-20110324] CSS Fonts Module Level 3 (20110324) . 24 March 2011.
[CSS3Ruby] CSS3 Ruby Annotation Module .
[CSS3Speech] CSS3 Speech Module .
[CSS3Speech-20110818] CSS3 Speech Module (20110818) . 19 April 2011.
[CSS3Text] CSS Text Level 3 .
[CSS3Text-20110412] CSS Text Level 3 (20110412) . 12 April 2011.
[CSS3WritingModes] CSS Writing Modes Module Level 3 .
[CSS3WritingModes-20110428] CSS Writing Modes Module Level 3 (20110428) . 28 April 2011.
[CSSMultiCol] CSS Multi-column Layout Module .
[ContentDocs30] EPUB Content Documents 3.0 .
[ISOSchematron] ISO/IEC 19757-3: Rule-based validation - Schematron .
[MATHML] Mathematical Markup Language (MathML) Version 3.0 . 21 October 2010.
[MediaOverlays30] EPUB Media Overlays 3.0 .
[MediaQueries] Media Queries .
[OCF3] Open Container Format 3.0 .
[OPF2] Open Packaging Format 2.0.1 .
[OPS2] Open Publication Structure 2.0.1 .
[OpenType] ISO/IEC 14496-22:2009 - Information technology -- Coding of audio-visual objects -- Part 22: Open Font Format .
[PLS] Pronunciation Lexicon Specification 1.0 (PLS) . 14 October 2008.
[Publications30] EPUB Publications 3.0 .
[RFC2046] Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types (RFC 2046) . November 1996.
[RFC2119] Key words for use in RFCs to Indicate Requirement Levels (RFC 2119) . March 1997.
[RFC5646] Tags for Identifying Languages (RFC 5646) . September 2009.
[RelaxNG] ISO/IEC 19757-2: Regular-grammar-based validation - RELAX NG. Second Edition . 2008-12-15.
[SSML] Speech Synthesis Markup Language (SSML) Version 1.1 . 7 September 2010.
[SVG] Scalable Vector Graphics (SVG) 1.1 (Second Edition) . 09 June 2011.
[SVG Access] Accessibility Features of SVG . 7 August 2000.
[StructureVocab] EPUB 3 Structural Semantics Vocabulary .
[Unicode] The Unicode Consortium. The Unicode Standard, Version 5.0.0, defined by: The Unicode Standard, Version 5.0 (Boston, MA, Addison-Wesley, 2007. ISBN 0-321-48091-0).
[WAI-ARIA] Accessible Rich Internet Applications (WAI-ARIA) 1.0 .
[WCAG20] Web Content Accessibility Guidelines (WCAG) 2.0 . 11 December 2008.
[WOFF] WOFF File Format 1.0 .
[XML] Extensible Markup Language (XML) 1.0 (Fifth Edition) . 26 November 2008.
[XML Events] XML Events . 14 October 2003.
[XMLNS] Namespaces in XML (Third Edition) . 8 December 2009.
[EPUB3Changes] EPUB 3 Differences from EPUB 2.0.1 .
[EPUB3Overview] EPUB 3 Overview .
[Role] Role Attribute . An attribute to support the role classification of elements. 05 August 2010.