この文書は「EPUB Packages 3.1」の日本語訳である。最新の文書は https://www.w3.org/Submission/epub-packages/ である。原文もしくは完全な情報は、EPUB Packages 3.1 を参照されたい。
この日本語訳は参考である。公式な文書ではなく、翻訳・解釈の正確性を保証していない。
Copyright © 2017 . This document is available under the W3C Document License. See the W3C Intellectual Rights Notice and Legal Disclaimers for additional information.
EPUB Packages 3.1 は、パッケージのセマンティクスと適合性要件を定義している。
このセクションは、発行時点におけるこのドキュメントのステータスについて説明する。他のドキュメントは、このドキュメントより優先されるだろう。現在の W3C 発行物のリストは、https://www.w3.org/TR/ の W3C テクニカル レポート インデックスにある。
このドキュメントを発行することで、W3C は、サブミッション メンバーが議論のために W3C へ正式な提案リクエストを行ったことを承認する。W3C がこのドキュメントを発行したことは、W3C によってその内容の承認、または W3C がそれによって扱われる問題に何らかのリソースを割り当てている、または持っていることを示していない。このドキュメントは、公認の W3C グループの成果物ではなく、W3C プロセスへの潜在的なインプットとして発行された。W3C チーム コメントは、このメンバー サブミッションと共に合同で発行されている。W3C サイトで承認されたメンバー サブミッションを発行することは、W3C メンバーシップの利点のひとつである。W3C 特許ポリシーのセクション 3.3 のメンバー サブミッションに関連する要件を参照されたい。完全な承認された W3C メンバー サブミッションのリストを参照されたい。
このセクションは規定ではない。
この仕様、EPUB Packages 3.1 は、セマンティクスと EPUB® パッケージの適合必要条件を定める。各パッケージは、EPUB 出版物のレンディションを表現し、出版物リソースに関連させる方法の要件のセットとレンディションのコンテンツを表現しているパッケージ ドキュメントによって定義される。
この仕様は、例えば目次など、ナビテーションの支援を提供する EPUB コンテンツ ドキュメントの機械および人間の可読性に特化した EPUB ナビゲーション ドキュメントもまた定義する。
この仕様は、[EPUB 3.1] を構成する仕様群のひとつであり、EPUB 3 は XML や Web 規格に基づいたデジタル出版物の交換や配信形式である。この仕様は EPUB 3.1 を構成する以下の他の仕様と共に読み、理解することになっている。
この仕様と前身の多くの相違については [EPUB3 Changes] を参照されたい。
EPUB 3.1 固有の意味を持つ用語は、このドキュメント(例えば、「製作者」、「リーディング システム」)に利用できる。これらの用語と定義の完全なリストは、[EPUB 3.1] で提供されている。
セクションにある用語の最初のインスタンスのみが、その定義にリンクされる。
この文書内のキーワード、MUST、MUST NOT、REQUIRED、SHALL、SHALL NOT、SHOULD、SHOULD NOT、RECOMMENDED、MAY、OPTIONAL は、[RFC2119] の記述に従って解釈される。
この仕様の全てのセクションと補足は規定である。但し"このセクションは規定ではない情報である"という規定ではない状態のラベルで識別される箇所を除く。セクションと付録への規定ではない状態の適用は、含まれる全ての子コンテンツおよびサブセクションに適用される。
この仕様の全ての例は規定ではない。
便宜上、次の予約済みのプリフィックス マッピングは、この仕様で使用されている。
プリフィックス | URI |
---|---|
dcterms |
http://purl.org/dc/terms/ |
opf |
http://www.idpf.org/2007/opf |
rendition |
http://www.idpf.org/vocab/rendition/# |
適合する EPUB パッケージは次の条件を全て満たさなければならない(MUST)。
パッケージ ドキュメント — コンテンツの適合性で定義されているコンテンツの要件に適合しなければならなず(MUST)、ただひとつのパッケージ ドキュメントが含まれなければならない(MUST)。
パッケージに関連する全ての出版物リソースは(マニフェストで定義されているような)パッケージ ドキュメントに記載しなければならない(MUST)。
ひとつ以上の EPUB コンテンツ ドキュメントを含まなければならず(MUST)、それぞれが、[Content Docs 3.1] に定義されているコンテンツの要件に準拠しなければならない(MUST)。
ゼロ個以上の CSS スタイル シートを含んでもよく(MAY)、それぞれが、CSS スタイル シート — コンテンツの適合性 [Content Docs 3.1] に定義されているコンテンツの要件に準拠しなければならない(MUST)。
ゼロ個以上の PLS ドキュメントを含んでもよく(MAY)、それぞれが、PLS ドキュメント — コンテンツの適合性 [Content Docs 3.1] に定義されているコンテンツの要件に準拠しなければならない(MUST)。
ゼロ個以上のメディア オーバーレイ ドキュメントを含んでもよく(MAY)、それぞれが、[Media Overlays 3.1] に定義されているコンテンツの要件に準拠しなければならない(MUST)。
上に挙げたものに加えて、ゼロ個以上の出版物リソースを含んでもよく(MAY)、 それぞれが、出版物リソース [EPUB 3.1] の要件に順守しなければならない(MUST)。
EPUB リーディング システムは、次の条件を全て満たさなければならない(MUST)。
パッケージ ドキュメント — リーディング システムの適合性で定義されているパッケージ ドキュメントを処理し、そしてパッケージ ドキュメントによって表現される全てのプレゼンテーション ロジック(例えば、読み取り順序とフォールバックチェーン、ページ進行方向や固定レイアウト)を尊重しなければならない(MUST)。
パッケージ(例えば、META-INF
ファイル [OCF 3.1] と EPUB 出版物の他のレンディションの固有リソース)の処理中に、パッケージ ドキュメントに掲載されていない如何なるリソースも使用してはならない(MUST NOT)。
このセクションは規定ではない。
パッケージ ドキュメントは、EPUB パッケージの特定の面に関する情報をそれぞれカプセル化した要素のセットから成り立つ XML ドキュメントである。これらの要素は、メタデータを集約やパッケージを構成する個々のリソースを記述、読む順序とレンディションをレンダリングするために必要な他の情報を提供するために役立つ。
次のリストはパッケージ ドキュメントで発見される情報をまとめたものである。
マニフェスト — 特定のレンディションをまとめて構成するリソースの集合を(IRI を通して)識別し、(MIME メディア タイプを通して)記述する。
スパイン — セット内の全ての他のリソースに到達または利用することができ、マニフェストの最上位レベルのリソースへの ID の参照の順序付きシーケンス。スパインは指定されたレンディションの初期設定の読み上げ順序を定義する。
コレクション — パッケージ内にあるサブコンポーネントのカプセル化と識別の方法。
マニフェスト フォールバック チェーン — コンテンツと等価なものとしてトップレベルのリソースの順序付きリストを定義するためのメカニズム。リーディング システムは、それがレンダリング可能かどうかに基づいてリソースを選択することができる。
パッケージ ドキュメント は、次の条件を全て満たさなければならない(MUST)。
XML 適合性 [EPUB 3.1] で定義された XML ドキュメントの適合性の制約を満たさなければならない(MUST)。
補足 B パッケージ ドキュメント スキーマで定義されているパッケージ ドキュメント スキーマに対して妥当でなければならず、パッケージ ドキュメントの定義で表現される全てのコンテンツの適合性の制約に準拠しなければならない(MUST)。
パッケージ ドキュメントのファイル名は、ファイル拡張子の .opf
を使用するべきである(SHOULD)。
パッケージ ドキュメントは、MIME メディア タイプ application/oebps-package+xml
[RFC4839] を持っている。
EPUB リーディング システムは、次の条件を全て満たしていなければならない(MUST)。
パッケージ ドキュメントの定義で述べられている全てのリーディング システムの適合性の制約に準拠するパッケージ ドキュメントを処理しなければならない(MUST)。
パッケージのレンダリング用メタデータで述べられているとおり、レンダリングのメタデータを処理するべきである(SHOULD)。
固定レイアウト プロパティで述べられているとおり、固定レイアウトのメタデータを処理しなければならない(MUST)。
固定レイアウト プロパティで定義されたプロパティのセマンティクスの挙動がそれらと衝突するとき、レイアウトの表現に関連する専用のメタデータプロパティを無視しなければならない(MUST)。
特に指定のない限り、このセクションで定義されている全ての [XML] 要素の名前空間 http://www.idpf.org/2007/opf
[XMLNS] である。
このセクションで定義されている要素が、必須のテキスト コンテンツを持つとき、そのコンテンツは、説明的な記述の要素の値と見なされる。
package
要素は、パッケージ ドキュメントのルート要素であり、EPUB パッケージの個々の外観を定義する。(一般的な要約は、まえがきを見よ)
package
package
要素はパッケージ ドキュメントのルート要素である。
記述順序
metadata
[正確にひとつ]
manifest
[正確にひとつ]
spine
[正確にひとつ]
collection
[0個以上]
version
属性は、特定の EPUB パッケージが適合する EPUB 仕様のバージョンを指定する。
属性は、このバージョンの仕様に準拠していることを示すための値に「3.1
」を持たなければならない(MUST)。
unique-identifier
属性は、優先度やプライマリの識別子を提供する dc:identifier
要素を識別する IDREF [XML] を取る。
詳細については出版物識別子を参照されたい。
prefix
属性は、この仕様では予約されていないプリフィックスの宣言メカニズムを提供する。
詳細については prefix
属性を参照されたい。
metadata
要素は指定されたレンディションのためのメタ情報をカプセル化する。
metadata
package
の必須(REQUIRED)の最初の子。
なし
順序なし
dc:identifier
[ひとつ以上]
dc:title
[ひとつ以上]
dc:language
[ひとつ以上]
DCMES Optional Elements
[0個以上]
meta
[ひとつ以上]
link
[0個以上]
パッケージ ドキュメントの metadata
要素は、二つの主要な機能を持っている。
EPUB 出版物の内部カタログに使用し、(例えば、本棚に提示するなど)ユーザーのために利用可能にするリーディング システムのためのメタ情報の最小セットを提供する。
レンディションのコンテンツ(例えば、固定レイアウト プロパティ)のレイアウトおよび表示をコントロールするために必要な全てのレンダリングのメタデータへのアクセスを提供する。
パッケージ ドキュメントは、複雑なメタデータをエンコードする機能を提供するように設計されていない。EPUB 出版物に関するより詳細な情報が必要な場合、メタデータ レコードは、(例えば、[ONIX] のように国際規格への適合や特別な目的のために作成されたものへ)link
要素を使用して関連付けることができる。このアプローチは、ネイティブのフォームで処理するためのメタデータを許可し、最小限のパッケージ ドキュメント構造を使用して変換することよって引き起こされる潜在的な問題と情報の損失を回避する。
この理念を踏まえ、パッケージ ドキュメントは、次の最低限のメタデータ要件を持つ。それは、[DCTERMS] modified
プロパティと共に、[DCMES] title
と identifier
、language
要素を包含しなければならない(MUST)。他の全てのメタデータは、省略可能である(OPTIONAL)。
次の例は、著者がパッケージ ドキュメントに包含させたメタデータの最小セットを示している。
<package … unique-identifier="pub-id">
…
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:identifier id="pub-id">urn:uuid:A1B0D67E-2E81-4DF5-9E67-A64CBE366809</dc:identifier>
<dc:title>Norwegian Wood</dc:title>
<dc:language>en</dc:language>
<meta property="dcterms:modified">2011-01-01T12:00:00Z</meta>
</metadata>
…
</package>
meta
要素は、任意の語彙からメタデータプロパティを含むための汎用的なメカニズムを提供する。典型的に、IDPF 仕様で定義されたメタデータの表現を含めるために使用されるが、任意のメタデータのために使用してもよい(MAY)。
アクセシビリティ メタデータの提案は、[EPUB Accessibility] を見よ。
[DCMES] identifier
要素には、UUID や DOI、ISBN など、特定のレンディションに関連付けられている識別子が含まれている。
dc:identifier
http://purl.org/dc/elements/1.1/
metadata
の必須(REQUIRED)の子。
id
[省略可能]
opf:scheme
[省略可能]
テキスト
metadata
セクションは、レンディションの明確な識別子を含む identifier
要素を包含しなければならない(MUST)。この識別子は package
要素の unique-identifier
属性を経由して一意識別子としてマークされなければならない(MUST)。
次の例は、EPUB 出版物の一意な identifier
要素を示している。
<package … unique-identifier="pub-id">
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:identifier id="pub-id">
urn:uuid:A1B0D67E-2E81-4DF5-9E67-A64CBE366809
</dc:identifier>
…
</metadata>
</package>
各レンディションの一意識別子は、異なってもよく(MAY)、レンディションは、追加の識別子の要素を包含してもよい(MAY)。
同じ EPUB 出版物の異なるバージョンを区別するために、この仕様は、EPUB 出版物のための一意識別子と特定のバージョンを一意に識別するリリース識別子を区別する。
パッケージ化された EPUB 出版物の特定のバージョンを識別するために、リリース識別子はレンディションの最終更新日時に一意識別子を組み合わせることによって構築することができる。パッケージ識別子のセマンティクスと要件の詳細についてはリリース識別子を参照されたい。
次の例は、リリース識別子のコンポーネントを示している。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:identifier id="pub-id">
urn:uuid:A1B0D67E-2E81-4DF5-9E67-A64CBE366809
</dc:identifier>
<meta property="dcterms:modified">2016-01-01T00:00:01Z</meta>
…
</metadata>
レンディションが変更されるたびに、新しい最終更新日時を包含しなければならない(MUST)。
identifier
が確立されたシステムに適合しているまたは発行機関によって付与されているかどうかを判断するためにリーディング システムは要素の値を解析することを試みるべきである(SHOULD)。
さらなる正確さを期すため、(例えば、スキームは、値から決定することができなかったり、曖昧な結果を引き起こす場合、)製作者は、リーディング システムの識別を助けるために、opf:scheme
属性を加えてもよい(MAY)。この属性は、要素の値を生成したり割り当てるシステムまたは機関を識別する。包含されるとき、opf:scheme
の値は、識別子を解析した値よりも優先するべきである(SHOULD)。その値は、何れかでなければならない(MUST)。
予約済み識別子の値 [ID Registry](大文字と小文字を区別しない)。または、
スキーマを識別する絶対 IRI [RFC3987]。IRI は、スキームに関する詳細な情報を提供するリソースを参照するべきである(SHOULD)。
次の例は、ISBN を含む dc:identifier
要素を識別するために使用される opf:scheme
属性を示している。
<dc:identifier opf:scheme="isbn">9780123456789</dc:identifier>
包含するとき、opf:scheme
値は、識別子を解析した値よりも優先するべきである(SHOULD)。この仕様は、識別子のために任意の特定のスキームの使用を要求したり推奨しない。
リーディング システムは、値を処理する前に、XML 仕様 [XML] で定義されているとおり、要素の値から先頭と末尾の空白を取り除かなければならない(MUST)。
この仕様は、空白をトリムした後の長さが少なくとも1文字でなければならない(MUST)こと以外は、識別子に追加の制約もしくは要件を課していない。しかし、識別子が完全修飾 URI であるよう、強く推奨する(RECOMMENDED)。
[DCMES] title
要素は、EPUB 出版物に指定した名前のインスタンスを表している。
dc:title
http://purl.org/dc/elements/1.1/
metadata
の必須(REQUIRED)の子。
opf:alt-rep
[省略可能]
opf:alt-rep-lang
[条件付きで必須]
dir
[省略可能]
opf:file-as
[省略可能]
id
[省略可能]
xml:lang
[省略可能]
テキスト
metadata
セクションは、EPUB 出版物のタイトルを含む title
要素を最低でもひとつ包含しなければならない(MUST)。
次の例は、複数に分割されたタイトルを示す。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:opf="http://www.idpf.org/2007/opf">
<dc:title opf:file-as="Fellowship of the Ring">
THE LORD OF THE RINGS, Part One: The Fellowship of the Ring
</dc:title>
…
</metadata>
リーディング システムは、(例えば、ユーザーに提示する最初の)EPUB 出版物の主な書名として、ドキュメント順で最初の title
要素を受け入れなければならない(MUST)。この仕様は、追加の title
要素の処理方法を定義しない。
各レンディションのタイトルは異なってもよい(MAY)。
リーディング システムは、値を処理する前に、XML 仕様 [XML] で定義されているとおり、要素の値から先頭と末尾の空白を取り除かなければならない(MUST)。
この仕様は、空白をトリムした後の長さが最低でも1文字でなければならない(MUST)以外には、タイトルに追加の制約もしくは要件を課していない。
[DCMES] language
要素は、指定されたレンディションのコンテンツの言語を指定する。
metadata
セクションは、[BCP 47] に準拠した値を持つ少なくともひとつの language
要素を包含しなければならない(MUST)。
次の例は、EPUB 出版物がアメリカ英語であることを示している。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
…
<dc:language>en-US</dc:language>
…
</metadata>
追加の language
要素が多言語の出版物のために含まれてもよいが(MAY)、各要素の値は [BCP 47] に準拠しなければならない(MUST)。
各レンディションの言語は異なってもよい(MAY)。
リーディング システムは、値を処理する前に、XML 仕様 [XML] で定義されているとおり、要素の値の先頭と末尾の空白を取り除かなければならない(MUST)。
identifier
と language
、title
を除き、他の全ての [DCMES] 要素は、省略可能(OPTIONAL)として設計された。これらの要素は、次の一般化された定義に適合する。
contributor
| coverage
| creator
| date
| description
| format
| publisher
| relation
| rights
| source
| subject
| type
http://purl.org/dc/elements/1.1/
省略可能(OPTIONAL)な metadata
の子。繰り返し可能。
opf:alt-rep
[省略可能]
– contributor
と creator
、publisher
上でのみ許可。
opf:alt-rep-lang
[conditionally required]
–contributor
と creator
、publisher
上でのみ許可。
dir
[省略可能]
– contributor
と coverage
、creator
、description
、publisher
、relation
、rights
、subject
上でのみ許可。
opf:file-as
[省略可能]
– contributor
と creator
、publisher
上でのみ許可。
id
[省略可能]
– 全ての要素上で許可。
opf:role
[省略可能]
– contributor
と creator
上でのみ許可。
opf:scheme
[optional]
–identifier
と source
上でのみ許可。
xml:lang
[省略可能]
– contributor
と coverage
、creator
、description
、publisher
、relation
、rights
、subject
上でのみ許可。
テキスト
各レンディションに対する省略可能(OPTIONAL)な [DCMES] メタデータは異なってもよい(MAY)。
リーディング システムは、値を処理する前に、XML 仕様 [XML] によって定義されているとおり、要素の値から先頭と末尾の全ての空白を削除しなければならない(MUST)。
全ての省略可能(OPTIONAL)な [DCMES] 要素の値は、空白をトリムした後の長さが最低でも1文字なければならない(MUST)。
この仕様は、次のセクションで注意されているようなことを除き、[DCMES] 要素の定義を変更しない。
[DCMES] contributor
要素は、EPUB 出版物コンテンツの作成に二次的な役割を果たした個人や組織などの名前を表すために使用される。
contributor
要素のための要件は、他の全ての点において、creator
要素のものと同じである。
[DCMES] creator
要素は、レンディションのコンテンツを作成するための責任者、組織、等の名前を表している。
リーディング システムがユーザーにそれを提示できるように、creator
要素に作成者の名前が含まれているべきである(SHOULD)。opf:file-as
属性は、名前の正規化された形式を包含するために付けてもよく(MAY)、opf:alt-rep
属性は、(opf:alt-rep-lang
属性で示されるのように)別の言語または文字で制作者の名前を表現するために使用してもよい(MAY)。
role
属性は、(例えば、製作者やイラストレーターなど)制作者がコンテンツの制作において果たした役割を区別するために付けられてもよい(MAY)。
次の例は、著者名のソートとレンダリングを容易にするために包含する方法を示している。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:opf="http://www.idpf.org/2007/opf">
…
<dc:creator id="creator" opf:file-as="Murakami, Haruki">
Haruki Murakami
</dc:creator>
…
</metadata>
EPUB 出版物が複数の作成者を持つ場合、それぞれが別々の creator
要素に包含するべきである(SHOULD)。
表示優先度を決定する際に、リーディング システムは、metadata
セクション中にある creator
要素のドキュメント順序を使用しなければならず(MUST)、最初に遭遇した creator
要素は、最重要な作成者である。
リーディング システムが、ユーザーに作成者のメタデータを公開している場合、(例えば、表示結果による制約がない場合など)可能な限り、metadata
セクションに記載されている全ての作成者を包含するべきである(SHOULD)。
次の例は、主なクリエイターであるルイス・キャロルは、最初に記載されている。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
…
<dc:creator id="creator01">Lewis Carroll</dc:creator>
<dc:creator id="creator02">John Tenniel</dc:creator>
…
</metadata>
二次的な貢献者は、contributor
要素を使用して表現されるべきである(SHOULD)。
[DCMES] date
要素は、EPUB 出版物の刊行日を定義するために使用されなければならない(MUST)。刊行日は、(レンディションが変更された最後の日時である)最終更新日と同じではない。
日付の文字列は、文字列が人間と機械の両方で可読可能であり、特に W3C Date and Time Formats [DateTime] で表現されるサブセット、[ISO8601] に準拠することを推奨する(RECOMMENDED)。
次の例は、刊行日が記載されていることを示している。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
…
<dc:date>2000-01-01T00:00:00Z</dc:date>
…
</metadata>
追加の日付は、[DCTERMS] や類似の語彙で利用可能である特別な日付用のプロパティで表現されるべきである(SHOULD)。
刊行日は、EPUB 出版物の全てのインスタンスに共通でもよいし(MAY)、(たとえば EPUB 出版物はオンデマンドで生成される場合)インスタンス毎に変更されてもよい(MAY)。
ひとつの date
要素のみ許可されている。
[DCMES] subject
要素は、EPUB 出版物の対象を識別する。
reserved authority value [Authority Registry](大文字と小文字を区別しない)。または、
スキーマを識別する絶対 IRI [RFC3987]。IRI は、スキームに関する詳細な情報を提供するリソースを参照するべきである(SHOULD)。
スキームが、opf:authority
属性で識別されるとき、対象のコードは、opf:term
属性に包含されなければならない(MUST)。要素の値は、ヒューマン リーダブルな見出しやラベルにするべき(SHOULD)だが、対象のタクソノミーは、独立した説明的なラベルを提供していない場合はコードの値でもよい(MAY)。
次の例は、BISAC コードと見出しを示している。
<dc:subject opf:authority="BISAC" opf:term="FIC024000">
FICTION / Occult & Supernatural
</dc:subject>
次の例は、スキーマの IRI の使用を示している。
<dc:subject opf:authority="http://www.ams.org/msc/msc2010.html"
opf:term="11">
Number Theory
</dc:subject>
opf:term
属性は、スキーマを指定していない subject
要素に生じてはならない(MUST NOT)
subject
要素と opf:term
属性の値は、指定したスキーマが必要する場合のみ、大文字と小文字を区別する。
[DCMES] type
要素は、指定された EPUB 出版物が特殊な種類(例えば EPUB 形式にパッケージ化された注記や辞書)であることを示すために使用される。
IDPF は、[Types Registry] にこの要素で使用するために特化した EPUB 出版物の種類の規定ではないレジストリを保持する。
meta
要素は、パッケージ メタデータを含める一般的な手段を提供する。
meta
metadata
の子要素。繰り返し可能
opf:alt-rep
[省略可能]
opf:alt-rep-lang
[条件付きで必須]
dir
[省略可能]
opf:file-as
[省略可能]
id
[省略可能]
property
[必須]
refines
[省略可能]
[置き換え]
scheme
[省略可能]
xml:lang
[省略可能]
テキスト
各 meta
要素は、EPUB 出版物のいくつかの特徴を確立するメタデータ表現を定義する。property
属性は、表現におけるステートメントを定義するプロパティのデータ タイプ値を取る。要素のテキスト コンテンツは、アサーションを表現する。(より詳細な情報は、語彙の関連付けメカニズムを参照されたい。)
この仕様は、property
属性で使用するために [Meta Vocab] を予約する。使用してもよい(MAY)任意の他の語彙からの用語は、プリフィックス付きで提供される(宣言の必要がないプリフィックスの一覧は予約済みのプリフィックスを参照されたい)。
次の例は、予約済みのプリフィックスを使用して、さまざまなプロパティ宣言を示している。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
…
<meta property="dcterms:modified">2016-02-29T12:34:56Z</meta>
<meta property="rendition:layout">pre-paginated</meta>
<meta property="media:active-class">-epub-media-overlay-active</meta>
…
</metadata>
scheme
属性は、要素の値が得られるシステムまたはスキームを識別する。属性の値は、スキームを定めるリソースへ解決するプロパティのデータ タイプでなければならない(MUST)。リーディング システムが、scheme
属性の値を認識しない場合、それは文字列として要素の値を扱うべきである(SHOULD)。
リーディング システムは、認識しない表現を定義する property
属性を含んでいる全ての meta
要素を無視すべきである(SHOULD)。リーディング システムは、未知の表現に遭遇するとき、失敗してはならない(MUST NOT)。
個々のプロパティが明示的に別の空白の正規化アルゴリズムを定義している場合を除き、リーディング システムは、さらにそれらを処理する前に XML 仕様 [XML] で定義されているとおり、meta
要素の値から全ての先頭と末尾の空白を取り除かなければならない(MUST)。
全ての meta
要素は空白の正規化後の長さが少なくともひとつ以上の文字の値を表現しなければならない(MUST)。
link
要素は、メタデータ レコードのように、指定されたレンディションにリソースを関連付けるために使用される。
link
metadata
の子要素。繰り返し可能
href
[必須]
id
[省略可能]
media-type
[条件付き必須]
properties
[省略可能]
rel
[必須]
空
metadata
要素は、0 個以上の link
要素を含めてもよく(MAY)、それぞれが、必須(REQUIRED)の href
属性でリンクされたリソースの位置を特定する。
リンクされたリソースは、出版物リソースではなく、マニフェストに記載してはならない(MUST NOT)。リンクされたリソースは、マニフェストに記載された出版物リソースに埋め込まれてよいが(MAY)、しかしながら、その場合は、(例えば、EPUB コンテンツ ドキュメントが、[RDFa 1.1] や [JSON-LD] のようにメタデータ レコードをシリアライズ化して含むことができるように)コア メディア タイプの要件 [EPUB 3.1] を順守しなければならない(MUST)。
次の例は、XHTML コンテンツ ドキュメント内にある script
要素に埋め込まれたメタデータ レコードへの参照を示している。埋め込まれたレコードのメディア タイプは、script
要素の type
属性から得られ、link
要素で指定されないことに注意されたい。
<metadata>
…
<link rel="record"
href="front.xhtml#meta-json"
media-type="application/xhtml+xml"/>
…
</metadata>
リンクされたリソースは、ローカルまたはリモートに配置してもよいが(MAY)、製作者は、リーディング システムによるリモート リソースの検索が、省略可能(OPTIONAL)であることを認識している必要がある(すなわち、リソースは利用可能でないかもしれない)。
media-type
属性は、複数のメディア タイプが、同じ IRI から供給できるように、リンクされたリソースが EPUB コンテナの外側に配置される場合、省略可能(OPTIONAL)である。属性は、全てのローカル リソースに対して必須(REQUIRED)である。
必須(REQUIRED)の rel
属性は、レンディションを持つリソースの関連性を確立するプロパティ値のスペースで区切られたリストを取る。
次の例は、ローカルの MARC XML レコードに関連付けするために使用される link
要素を示している。
<link rel="record"
href="meta/9780000000001.xml"
media-type="application/marc"/>
リーディング システムは、たとえ、rel
属性に定義された関連性を認識していたとしても、リンクされたリソースを使用したり表示する必要はない。
media-type
属性の値は、常に、(例えば、多くの XML ベース形式は、メディア タイプ「application/xml
」を使用する)リンクされたリソースの型を識別するためには十分ではない。そのような一般的なリソースの識別をするリーディング システムを支援するために、properties
属性は、セマンティクスな識別子を加えることができる。
次の例は、リモートの XMP レコードを識別するために使用される properties
属性を示している。
<link rel="record"
href="http://example.org/meta/12389347?format=xmp"
media-type="application/xml"
properties="xmp"/>
この仕様によって認められた予約済みの関連性とプロパティの一覧は、[Link Vocab] で定義されている。
製作者は、この仕様で定義されたメタデータ拡張メカニズムを介して、他の語彙から関連性とプロパティを追加してもよい(MAY)。製作者は、独自のプリフィックスを定義することによって新しい値を作ってもよい(MAY)。詳細は、語彙の関連付けメカニズムを参照されたい。
次の例は、情報の Web ページを関連付けるために使用される link
要素を示している。foaf は定義済みプリフィックスではなく、prefix 属性で宣言する必要があることに注意されたい。
<package … prefix="foaf: http://xmlns.com/foaf/spec/">
<metadata>
…
<link rel="foaf:homepage"
href="http://example.org/book-info/12389347" />
…
</metadata>
…
</package>
リンクされたメタデータ レコードの場合、リーディング システムは、パッケージ ドキュメントに表れているメタデータの処理をスキップしてはならなず(MUST NOT)、レコードに表れている情報のみを使用する。リンクされたレコードは、リーディング システムで利用可能な情報の強化を意図しており、パッケージのメタデータは、典型的に、重要なレンダリングの情報を含む。リーディング システムは、複数のリンクされたレコードからメタデータをコンパイルしてもよい(MAY)。単一のレコードのみを選択する必要はない。
パッケージ ドキュメントに表れるメタデータとリンクされたメタデータ レコード間の矛盾や衝突を回避するとき、リーディング システムは、優先順位を確立するために、パッケージ ドキュメントにある link
要素のドキュメント順を使用しなければならない(MUST)。(つまり、最初に遭遇したリンクされたレコード内のメタデータは、最も高い優先順位を持ち、パッケージ ドキュメント内のメタデータは、link
要素が、パッケージ メタデータ要素の前後に発生するかどうかにかかわらず、最低である)
次の例は、metadata
要素内に発見されるメタデータに比べ、高い優先順位を持つ順番であるところの、ローカルのレコードよりも高い優先順位を持つリモート レコードであることを示している。
<metadata>
…
<link rel="record"
href="http://example.org/onix/12389347"
media-type="application/xml"
properties="onix" />
<link rel="record"
href="meta/meta.jsonld"
media-type="application/ld+json" />
…
</metadata>
リーディング システムは、EPUB 出版物のレイアウトとレンダリングに関係するリンクされたリソースに含まれた全ての指示を無視しなければならない(MUST)。
EPUB 出版物にリンクすることができるメタデータ レコード フォーマットとシリアライゼーションの多様性、そしてそれら間のメタデータプロパティの比較に起因して、この仕様は、リンクされたレコードを処理することをリーディング システムに要求しない。
manifest
要素は、それぞれが item
要素によって表される、レンディションを構成する出版物リソースの完全なリストを提供する。
この仕様は国際化されたリソースの命名規則をサポートし、要素と属性は、参照する出版物リソースは IRI をそれらの値として受け入れている。URI のみを受け入れる古いリーディング システムとの互換性のためにリソース名は ASCII 文字セットに制限する必要がある。
item
要素は、出版物リソースを表している。
item
manifest
の子要素。
duration
[条件付きで必須]
fallback
[条件付きで必須]
href
[必須]
id
[必須]
media-overlay
[省略可能]
media-type
[必須]
properties
[省略可能]
空
manifest
の各 item
要素は、href
属性で提供されてる IRI [RFC3987] で出版物リソースを識別する。IRI は、絶対 IRI または相対 IRI でもよい(MAY)。相対 IRI の場合、リーディング システムは絶対 IRI を解決するときに、ベースとしてパッケージ ドキュメントの IRI を使用しなければならない(MUST)。結果として生成された絶対 IRI は manifest
のスコープ内で一意でなければならない(MUST)。
全ての出版物リソースは、それらがローカルまたはリモート リソースであるかどうかにかかわらず、manifest
から参照されなければならない(MUST)。リソースの場所に関するメディアタイプ固有の要件については出版物リソースの配置 [EPUB 3.1] を参照されたい。
manifest
は自己参照でないことに注意されたい。それは、パッケージ ドキュメント自身の参照を item
要素に包含してはならない(MUST NOT)。
item
要素で識別される出版物リソースは、media-type
属性で提供される MIME メディア タイプから推測される該当する仕様に準拠しなければならない(MUST)。コア メディア タイプ リソースは、[Core Media Types] で指定されたメディア タイプを使用しなければならない(MUST)。
fallback
属性は、item
要素から参照される出版物リソースのフォールバックを識別する IDREF [XML] を取る。フォールバックは、(例えば、スクリプト コンテンツ ドキュメントに静的な代替を提供するために)コア メディア タイプ リソースに対して提供されてもよい(MAY)。管理外リソースのためのフォールバック要件は、マニフェスト フォールバックに定義されている。
この仕様は、properties
属性に使用するための [Manifest Vocab] を予約しない。他の語彙からの用語は、プリフィックスを持っている限り、使用してもよい(MAY)。(宣言の必要がないプリフィックスのリストは予約済みのプリフィックスを参照されたい)
製作者は、リーディング システムが、設定されたプロパティに応じてレンダリングを最適化してもよい(MAY)ように(つまり、レンダリングの処理を無効にしたりフォールバックに使用するなど)、この属性に各パブリケーション リソースのために利用できる全ての説明を含むメタデータのプロパティを宣言しなければならない(MUST)。リーディング システムは、認識しない全ての記述的なメタデータのプロパティを無視しなければならない(MUST)。
正確にひとつの item
が、nav プロパティを使用して EPUB ナビゲーション ドキュメントとして宣言しなければならない(MUST)。
media-overlay
属性は、この item
によって記述されたリソースのためのメディア オーバーレイ ドキュメントを識別する IDREF [XML] を取る。詳細はパッケージング [Media Overlays 3.1] を参照されたい。
duration
属性は、メディア オーバーレイ ドキュメントから参照された音声メディアの全持続時間または、時限のメディアについては、参照されたメディア ファイルの全持続時間を提供する [SMIL] のクロック値を取る。詳細は、パッケージ メタデータ [Media Overlays 3.1] を参照されたい。
manifest
における item
要素の順序は重要ではない。コンテンツ ドキュメントの提示順序は spine
によって提供される。
次の例は、コア メディア タイプ リソースのみが含まれている manifest
を示している。
<manifest>
<item id="nav"
href="nav.xhtml"
properties="nav"
media-type="application/xhtml+xml"/>
<item id="intro"
href="intro.xhtml"
media-type="application/xhtml+xml"/>
<item id="c1"
href="chap1.xhtml"
media-type="application/xhtml+xml"/>
<item id="c1-answerkey"
href="chap1-answerkey.xhtml"
media-type="application/xhtml+xml"/>
<item id="c2"
href="chap2.xhtml"
media-type="application/xhtml+xml"/>
<item id="c2-answerkey"
href="chap2-answerkey.xhtml"
media-type="application/xhtml+xml"/>
<item id="c3"
href="chap3.xhtml"
media-type="application/xhtml+xml"/>
<item id="c3-answerkey"
href="chap3-answerkey.xhtml"
media-type="application/xhtml+xml"/>
<item id="notes"
href="notes.xhtml"
media-type="application/xhtml+xml"/>
<item id="cover"
href="./images/cover.svg"
properties="cover-image"
media-type="image/svg+xml"/>
<item id="f1"
href="./images/fig1.jpg"
media-type="image/jpeg"/>
<item id="f2"
href="./images/fig2.jpg"
media-type="image/jpeg"/>
<item id="css"
href="./style/book.css"
media-type="text/css"/>
<item id="pls"
href="./speech/dict.pls"
media-type="application/pls+xml"/>
</manifest>
次の例は、二つの管理外リソースの参照およびコンテンツの選択肢を提供するフォールバック チェーン メカニズムのメカニズムを使用している manifest
を示している。フォールバック チェーンはコア メディア タイプで終了する。
<manifest>
<item id="item1"
href="chap1_docbook.xml"
media-type="application/docbook+xml"
fallback="fall1"/>
<item id="fall1"
href="chap1.xml"
media-type="application/z3998-auth+xml"
fallback="fall2" />
<item id="fall2"
href="chap1.xhtml"
media-type="application/xhtml+xml"/>
…
</manifest>
次の例は、マニフェストから参照する必要のある外部の音声ファイルへの参照を示している。(それは出版物リソースなので、音声は、XHTML コンテンツ ドキュメント内にインラインでレンダリングされる)。
XHTML:
<audio src="http://www.example.com/book/audio/ch01.mp4" controls="controls"/>
Manifest:
<item id="audio01"
href="http://www.example.com/book/audio/ch01.mp4"
media-type="audio/mp4"/>
次の例は、同じ音声ファイルへのリンクを示しているが、この場合、(ハイパーリンクされた外部リソースは、出版物リソースではないので)マニフェストに記載されていない。音声ファイルは、上記のように、(すなわち、出版物リソースとして使用されるところのコンテクストにおいて)製作者が [HTML] 埋め込まれたコンテンツ要素からそれもまた参照される場合、マニフェスト内のみに記載されるかもしれない。
XHTML:
<a href="http://www.example.com/book/audio/ch01.mp4">Go to audio file</a>
Manifest:
No Entry
次の例は、音声ファイルのローカル バージョンへのリンクを示している。音声ファイルは、EPUB コンテンツ ドキュメントではないので、EPUB コンテンツ ドキュメントへのフォールバックが必要である(それはまた、スパインに記載されている必要がある)。
XHTML:
<a href="audio/ch01.mp4">Open Audio File</a>
Manifest:
<item id="audio01"
href="audio/ch01.mp4"
media-type="audio/mp4"
fallback="#audio01-xhtml"/>
管理外リソースは、固有のフォールバックコンテンツを(例えば、スパイン itemref
要素からや、XHTML コンテンツ ドキュメントの [HTML] img
や iframe
、link
要素から、EPUB スタイル シートの @import ルールから直接などから)提供されないコンテクストで参照されてもよいし(MAY)、そのようなケースのときはマニフェスト フォールバックを提供しなければならない(MUST)。
マニフェスト フォールバックは、出版物リソースを表すマニフェスト item
要素上の fallback
を使用して提供される。fallback
属性の IDREF [XML] 値は、manifest
内の他の item
へ解決しなければならない(MUST)。このフォールバック item
は、それ自体は別のフォールバックの item
を指定してもよい(MAY)。
指定されたアイテムの fallback
属性から始まり到達できる全ての ID の参照の順序付きリストは、その項目のフォールバック チェーンを表している。フォールバック チェーン内のリソースの順序は、製作者の好みのフォールバックの順序を表している。
指定された出版物リソースのメディア タイプをサポートしていないリーディング システムは、サポートされていないリソースの代わりに使用する少なくともひとつのサポートされている出版物リソースを識別するまでフォールバック チェーンを辿らなければならない(MUST)。リーディング システムがフォールバック チェーン内の複数の出版物リソースをサポートしている場合、それはそのリソースの特定のプロパティに基づいて使用するリソースを選択してもよく(MAY)、それ以外の場合は製作者の好みのフォールバックの順序を優先するべきである(SHOULD)。
フォールバック チェーンは、必要に応じて、次の要件のいずれかに準拠しなければならない(MUST)。
スパイン itemref
要素から直接参照される管理外リソースのために、チェーンは、少なくともひとつの EPUB コンテンツ ドキュメントを含まなければならない(MUST)。
固有のフォールバックコンテンツが提供されない管理外リソースのために、チェーンは少なくともひとつのコア メディア タイプ リソースを含まなければならない(MUST)。
フォールバック チェーンは、チェーン内の item
要素に循環参照または自己参照を含んではならない(MUST NOT)。
フォールバックは EPUB コンテンツ ドキュメントである トップレベル コンテンツ ドキュメントのために提供されてもよい(MAY)。リーディング システムは、指定されたコンテキストでレンダリングするコンテンツ ドキュメントの最適なバージョンを見つけるためにこのようなフォールバックを利用してもよい(MAY)。スクリプト コンテンツのフォールバック [Content Docs 3.1] を提供する場合が、この機能を利用できる場合の例である。
spine
要素は、特定のレンディションにおけるデフォルトの読み上げ順序を表す、マニフェスト item
参照の順序付きリストを定義する。
spine
id
[省略可能]
page-progression-direction
[省略可能]
toc
[省略可能]
[廃止予定]
0個以上の itemref
[ひとつ以上]
リーディング システムは、1)デフォルトの読み上げ順の開始として最初の主要な itemref
を認識し、2)spine
で指定された順序で連続的に主要な項目のレンダリングを包含する spine
で定義された順序でレンディションをレンダリングする手段を提供しなければならない(MUST)。
spine
内の出版物リソースからハイパーリンクされた全ての出版物リソースは、現在のリソースから離れるユーザーが必要とする任意のリンクメカニズムにハイパーリンクが定義されている場合は、それら自身が spine
に記載されなければならない(MUST)。一般的なハイパーリンクのメカニズムは、[HTML] a
と area
要素の href
属性、(例えば、DOM イベントおよび/またはフォーム要素を使用する)スクリプトのリンクを包含する。ハイパーリンクされたリソースを記載する要件は、再帰的に適用する(すなわち、ハイパーリンクされた出版物リソースからハイパーリンクされた全ての出版物リソースもまた、記載される)。
EPUB ナビゲーション ドキュメントからハイパーリンクされた全ての出版物リソースはまた、ナビゲーション ドキュメント自身が spine
に記載されているかどうかに関わらず、spine
に記載されなければならない(MUST)。
ハイパーリンクから参照されたリモート リソースは、出版物リソースではないので、(例えば、Web ページやリソースなど)スパインに包含する要件の対象ではない。
(例えば、[HTML] iframe
要素を介す)埋め込まれた出版物リソースは、spine
に記載する必要はない。
page-progression-direction
属性は、コンテンツ フローの全体の送り方向を設定する。許可された値は ltr
(左から右)、rtl
(右から左)と default
である。default
値が指定されている場合、製作者の望む送り方向を表しておらず、リーディング システムは、レンダリング方向を選ぶことができる。属性が指定されていない場合は、default
値を想定しなければならない(MUST)。
page-progression-direction
属性はグローバルな流れの方向を定めているが、個々のコンテンツ ドキュメントとコンテンツ ドキュメントの部分は、この設定を(例えば、direction と writing-mode の CSS プロパティを介して)上書きしてもよい(MAY)。リーディング システムは(例えばボタンまたは代替スタイルシートの適用を可能にする設定で)の初期設定の方向を上書きするためのまたメカニズムを提供してもよい(MAY)。
リーディング システムは、pre-paginated
を持つ XHTML コンテンツ ドキュメントで定義されているページ進行方向を無視しなければならない(MUST)。page-progression-direction
属性は、ある固定レイアウトページから次のページへの流れの方向を定義する。
spine
の子要素の itemref
要素は、出版物リソース(典型的な EPUB コンテンツ ドキュメント)の順次リストを表している。itemref
要素の順序は、指定されたレンディションのデフォルトの読み上げ順序を定義する。
itemref
spine
の子要素。繰り返し可
id
[省略可能]
idref
[必須]
linear
[省略可能]
properties
[省略可能]
空
各 itemref
要素は、idref
属性の IDREF [XML] を介して、マニフェストにある一意な item
の ID [XML] を参照しなければならない(MUST)(すなわち、二つ以上の itemref
要素は、同じ item
を参照できない)。
参照される各マニフェストの item
は、コア メディア タイプ リソースまたは管理外リソースであるかどうか関係なく、a)EPUB コンテンツ ドキュメントまたは b)出版物リソースの別の型のいずれかでなければならず(MUST)、そのフォールバック チェーンの中に EPUB コンテンツ ドキュメントが含まれていなければならない(MUST)。
EPUB 出版物は、EPUB ナビゲーション ドキュメントを包含する必要があるが、それを spine
に包含することは必須ではない。
linear
属性は、参照された item
が最初に読む順序の提供や連続的に読まれる(「yes
」)コンテンツなのか、重要なコンテンツの強化または増補や順序とは関係なくアクセス(「no
」)できる補助的なコンテンツなのかを示す。補助的なコンテンツは、注釈や説明、解答を包含する。
linear
属性は、リーディング システムに、例えば、ポップアップウィンドウに表示されたり、聴覚リーディングで省略されるかもしれない補足的なコンテンツから、ユーザーが標準的に読む順番の一部としてアクセスする必要があるコンテンツを区別することができる。
EPUB 出版物をレンダリングするとき、リーディング システムは、デフォルトの読み上げ順序に表示されないように非線形コンテンツを抑制しても、EPUB 出版物のコンテンツ全体へユーザーのアクセスを提供するために linear
属性を無視してもよい(MAY)。この仕様は、リーディング システムが使用する何れのモデルも強制しない。リーディング システムはまた、二つのモデルを切り替えるために、ユーザーへオプションを提供をしてもよい(MAY)。
各レンディションは、linear
属性の値が明示的または暗示的に「yes
」に設定されている少なくともひとつの itemref
を包含しなければならない(MUST)。linear
属性を省略する itemref
は、「yes
」値を持つことが想定されている。
著者は、(例えば、コンテンツや EPUB ナビゲーション ドキュメントからのハイパーリンクなど)全ての非線型コンテンツにアクセスする方法を提供しなければならない(MUST)。
この仕様は、properties
属性で使用するために [Spine Vocab] を予約する。他の全ての語彙からの用語は、プリフィックスを持っている限り、使用してもよい(MAY)。(宣言の必要がないプリフィックスのリストは予約済みのプリフィックスを参照されたい)
[Spine Vocab] で定義されている全ての利用可能な説明を含むメタデータのプロパティは、宣言するべきである(SHOULD)。
リーディング システムは、認識しない properties
属性で表現される全てのメタデータ プロパティを無視しなければならない(MUST)。
次の例は、上記のマニフェストの例に対応する spine
の要素を示している。
<spine page-progression-direction="ltr">
<itemref idref="intro"/>
<itemref idref="c1"/>
<itemref idref="c1-answerkey" linear="no"/>
<itemref idref="c2"/>
<itemref idref="c2-answerkey" linear="no"/>
<itemref idref="c3"/>
<itemref idref="c3-answerkey" linear="no"/>
<itemref idref="notes" linear="no"/>
</spine>
collection
要素は、リソースの関連したグループを定義する。
collection
package
の六番目の省略可能(OPTIONAL)な要素。繰り返し可。
記述順序:metadata
[0 または 1]
、(collection
[1個以上]
または ( collection
[0個以上]
、link
[1個以上]
))
collection
要素は、リソースを、意味を持つ単位へと再構築される複数の EPUB コンテンツ ドキュメント間に分割された(すなわち、複数のドキュメント間に分割されたインデックス)有効なコンテンツまたは、特殊な処理(すなわち、プレビュー コンテンツ)のために識別されるリソース、指定されたレンディションに関する追加情報を表現する集約リソースなど、潜在的な数々の用途のために論理的なグループに整理することを許可する。
このセクションで定義されているように、collection
要素は、(例えば、IDPF のサブ仕様を介して)特性が引き出されることを目的とされ、そこから一般的なフレームワークを表現する。このような特性は、レンディション内の collection
要素の目的だけでなく、妥当な生産物と用途(以下に表現される一般的なフレームワークと異なる特定の任意の要求)のための全ての要求のために定義しなければならない(MUST)。
各特性は、全ての適合する collection
要素を一意に識別する役割の値を定義しなければならない(MUST)。パッケージ ドキュメントのそれぞれ collection
要素の役割は、role
属性で識別されなければならず(MUST)、値は、ひとつ以上の NMTOKEN [XSD-DATATYPES] と/または絶対 IRI [RFC3987] でなければならない(MUST)。NMTOKEN 値の用途は、[Role Registry] でメンテナンスされるところの、IDPF が定義する役割で予約されている。レジストリで定義されていない NMTOKEN 値は、妥当ではない。役割のないものはこのセクションでは定義しない。
サード パーティは、collection
要素に特殊な役割を定義してもよい(MAY)が、このような役割は、絶対 IRI を使用して識別されなければならない(MUST)。特殊な役割は、これらを識別する IRI のホスト コンポーネント内に文字列「idpf.org
」を組み込んではならない(MUST NOT)。
リーディング システム全体で特殊な役割の相互互換性を容易にするために、実装は、[Role Extensions] にある collection
要素の使用をドキュメント化することが強く推奨される。
collection
の省略可能(OPTIONAL)な metadata
要素の子は、構文とセマンティクスに次の差異があるパッケージの metadata
要素を適合したものである。
メタデータは、デフォルトでは必須でない。
メタデータ要素の使用におけるパッケージレベルの制限は、上書きしてもよい(MAY)。
collection
は、ひとつ以上の子 collection
要素を包含することによってサブコレクションを定義してもよい(MAY)。
collection
の link
要素の子は、構文とセマンティクスに次の差異があるメタデータの link
要素を適合したものである。
rel
属性は省略可能(OPTIONAL)である。
properties
属性はまた、(例えば、コレクションは、独自にナビゲーション ドキュメントやカバー画像を宣言できるように)プリフィックスのない マニフェスト item
プロパティ [Manifest Vocab] を受け入れる。
それぞれの link
要素は、グループのメンバーであるリソースを参照しなければならない(MUST)。link
要素の順序は、重要ではない。
collection
要素の特性は、よりよくこれらの要求(例えば、メタデータを要求したり、要素と属性の利用にさらなる制限を課したり、link
要素の順序を重視)を反映するために上記で定義されている要求を調整してもよい(MAY)。しかしながら、結果として生じたコンテンツモデルは、このセクション(例えば、特性は、新しい要素や属性を取り入れたり、上記で明確に禁止されているそれらを再度取り入れることはできない)で定義されたひとつの妥当なサブセットを表現しなければならない(MUST)。特性は、manifest
と spine
の要件を上書きする方法でコレクションを定義してはならない(MUST NOT)。
この仕様のコンテクスト内では、リーディング システムのコレクションのサポートは、省略可能(OPTIONAL)である。リーディング システムは、認識できない役割を定義した collection
要素を無視しなければならない(MUST)。
レンディションのレンダリングは、collection
要素の認識に依存してはならない(MUST NOT)。コンテンツは、全ての情報の損失や他の重大な劣化をすることなくユーザーによって消費できなければならない(MUST)。
次の例は、単一の構成を表す二つの XHTML コンテンツ ドキュメントの組み立て方を示している。
<package …>
…
<collection role="http://example.org/roles/unit">
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:title>Foo Bar</dc:title>
</metadata>
<link href="EPUB/xhtml/foo-1.xhtml"/>
<link href="EPUB/xhtml/foo-2.xhtml"/>
</collection>
…
</package>
製作者は、唯一の EPUB 出版物に一意であるパッケージ ドキュメントのメタデータに主要な識別子を包含する責任がある。一意識別子は選択または割り当てられているかどうかに関わらず、dc:identifier
要素に格納する必要があり、package
要素の unique-identifier
属性の一意識別子として参照されなければならない(MUST)。
静的(固定)ではないが EPUB 出版物の一意識別子の変更はできる限り、めったに行わないようにするべきである(SHOULD)。メタデータを更新するときや誤植を直すとき、EPUB 出版物に他のマイナーな変更をするときは、新しい識別子を付与するべきではない(SHOULD NOT)。
リーディング システムは、唯一の EPUB 出版物をユニークとするため、一意識別子に依存してはならない(MUST NOT)。 同じ一意識別子を持つ二つの EPUB 出版物が、同じ出版物の異なるバージョンを表しているのか(リリース識別子を見よ)、それとも異なる出版物かどうかを決定するために、例えばタイトルや製作者のような、他のメタデータを調査する必要があるだろう。
通常、EPUB 出版物の一意識別子は、一意識別子が参照と配布目的のために両方の最大の永続性を持つように意図されているので、パッケージまたはその内容にそれぞれのマイナーリビジョンで変更するべきではない(SHOULD NOT)。通常、EPUB 出版物の各リリースは新しいバージョンを一意に識別できる必要があるが、これは結果として変更可能であり、かつ信頼性の高い一意識別子という相反する要求が生じる。
一意識別子を変更せずにマイナーな修正とリリースを識別する課題を是正するために、この仕様はリリース識別子のセマンティクスを定義して、または同じ一意識別子を持つ出版物を識別し、連続した順序を示す手段を定める。
リリース識別子は、パッケージの metadata
セクションの実際のプロパティではなく、メタデータの二つの他の必須の部分である。一意識別子とレンディションの最終更新日から得られる値である。
一緒になる合計値は EPUB 出版物の任意の特定のバージョンを区別するために使用できる一意の識別子を表している。
リリース識別子が構築されることを保証するために各レンディションは最終更新日を含む [DCTERMS] modified プロパティを正確にひとつ含まれなければならない(MUST)。このプロパティの値は、[XSD-DATATYPES] 最終更新日に準拠する日付の形でなければならない(MUST)。
CCYY-MM-DDThh:mm:ssZ
変更日は協定世界時(UTC)で表現されなければならなず(MUST)、「Z
」(Zulu)タイム ゾーン インジケータで終了しなければならない(MUST)。
パッケージ メタデータの一部でないが、識別子の全ての文字列表現は参照と他の目的のために、区切り文字としてアットマーク(@
)を使用して(すなわち id@
date の形)構成されなければならない(MUST)。
文字列を連結するときに空白が含まれてはならない(MUST NOT)。
次の例は、一意識別子と変更日がリリース識別子を形成するために組み合わされる方法を示している。
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:identifier id="pub-id">urn:uuid:A1B0D67E-2E81-4DF5-9E67-A64CBE366809</dc:identifier>
<meta property="dcterms:modified">2011-01-01T12:00:00Z</meta>
…
</metadata>
results in the Package ID:
urn:uuid:A1B0D67E-2E81-4DF5-9E67-A64CBE366809@2011-01-01T12:00:00Z
これらの識別子は任意の文字列の値でもよく(MAY)、区切り文字が一意識別子の中に生じてもよい(MAY)可能性があることに注意されたい。その故にリリース識別子はその構成部分に分解するときに最後の @ 記号の箇所で分割しなければならない(MUST)。
リリース識別子は一意識別子を優先しないが、同じ EPUB 出版物の異なるバージョンを区別し、流通チャネルやリーディング システムによって識別することができる手段を意味する。タイムスタンプの形式を受け継ぐことで、識別子の正確な知識なしに EPUB 出版物を連続する年代順に配置することもできる。
従って EPUB 出版物のセットはリリース識別子によって、それらが同じ EPUB 出版物の同じバージョンか、ひとつの出版物の異なるバージョンか、異なっていて類似した EPUB 出版物の組合せをかどうかを判断する為に調べられることができる。
EPUB コンテナが、EPUB 出版物のレンディションをひとつ以上包含するとき、リーディング システムが初期設定のレンディションのみ処理する必要があり、それらが更新されていない場合でも、各リリースの初期設定のレンディションの最終更新日をアップデートすると、EPUB 出版物は、以前のリリースと同じバーションが表示されないことを担保するのを助けるであろう。
このセクションは規定ではない。
property
、properties
、rel
と scheme
属性はメタデータ語彙の用語を表すためにプロパティ データ タイプを使用する。CURIE [RDFa 1.1] と同様に、プロパティ データ タイプはコンパクトなフォームで IRI [RFC3987] を表し、標準化された語彙のメタデータ作成を簡略化する。
プロパティ値はプリフィックスと参照の組み合わせにより表現される。プリフィックスとは、(リテラルまたは暗黙的かを問わず)一般的にある用語の語彙に解決される IRI の簡略マッピングである。プリフィックスをその IRI 表現に変換し参照と組み合わせると、結果として IRI は通常、用語についての人間および/または機械可読な情報を含んでいる語彙内のフラグメントに解決される。
プロパティ値の処理においてリーディング システムを支援するために、この仕様は、プリフィックスをマップする IRI を確立する3つのメカニズムを定義している。
デフォルトの語彙 — がプリフィックスを含んでいないときのマッピングを定義し、
予約済みプリフィックス — これらのマッピングはあらかじめ定義されており(すなわち全てのリーディング システムがそれらを認識する)、宣言することなく使用することができ、そして、
デフォルトの語彙はその用語を使用するために宣言する必要がない語彙であり、その用語は常にプリフィックスが付かないようにしなければならない(MUST)。
パッケージ ドキュメントは、メタデータの用語に対し複数の関連性のない使い方があるように、単一のデフォルトの語彙は、全ての属性のために定義されていない。その代わりに、異なるデフォルトの語彙は、次のようにプロパティ データ タイプを受け入れる属性の使い方が定義されている。
EPUB Meta Properties Vocabulary [Meta Vocab] は、meta
properties
属性のためのデフォルトの語彙として定義される。
属性値にプリフィックスが包含されていない場合、次の IRI [RFC3987] ステムは、結果として生じる IRI:http://idpf.org/epub/vocab/package/meta/#
を生成するために使用されなければならない(MUST)。
EPUB Metadata Link Vocabulary [Link Vocab] は、link
rel
と properties
属性のためのデフォルトの語彙として定義される。
属性値の何れかにプリフィックスが包含されていない場合、次の IRI [RFC3987] ステムは、それらの結果として生じる IRI:http://idpf.org/epub/vocab/package/link/#
を生成するために使用されなければならない(MUST)。
EPUB Manifest Properties Vocabulary [Manifest Vocab] は、item
properties
属性のためのデフォルトの語彙として定義される。
属性値の何れかにプリフィックスが包含されていない場合、次の IRI [RFC3987] ステムは、それらの結果として生じる IRI:http://idpf.org/epub/vocab/package/item/#
を生成するために使用されなければならない(MUST)。
EPUB Spine Properties Vocabulary [Spine Vocab] は、itemref
properties
属性のためのデフォルトの語彙として定義される。
属性値の何れかにプリフィックスが包含されていない場合、次の IRI [RFC3987] ステムは、それらの結果として生じる IRI:http://idpf.org/epub/vocab/package/itemref/#
を生成するために使用されなければならない(MUST)。
それらの語彙に関連付けられた IRI は、prefix
属性を使用してプリフィックスを割り当ててはならない(MUST NOT)。
この仕様は、製作者が宣言することなくパッケージ メタデータに使用してもよい(MAY)プリフィックスのセットを予約する。これらのプリフィックスは、[予約済みのプリフィックス]で定義されている。
このドキュメントで定義されているプリフィックスは、この仕様から独立してメンテナンスや更新され、いつでも変更を受けることがある。
リーディング システムは、ローカルのプリフィックスが宣言されていない限り、定義済み URI を使用してパッケージ ドキュメントに使用されている全ての予約済みのプリフィックスを解決しなければならない(MUST)。予約済みのプリフィックスは、prefix
属性を上書きするべきではない(SHOULD NOT)が、リーディング システムは、遭遇したときにローカルでの上書きを使用しなければならない(MUST)。
予約済みのプリフィックスとリーディング システムの更新は常に同期して起こるわけではなく、リーディング システムは、認識されていないプリフィックス(つまり、prefix
属性を使用して予約も宣言もしていない)に遭遇したとき失敗してはならない(MUST NOT)。
prefix
属性は、この仕様で予約されていない追加のプリフィックスのマッピングを定義する。
prefix
属性の値は、ひとつまたは複数のプリフィックスから IRI へのマッピングの空白で区切ったリストの形である。
prefixes | = |
mapping , { whitespace, { whitespace } , mapping } ; | |
mapping | = |
prefix , ":" , space , { space } , ? xsd:anyURI ? ; | |
prefix | = |
? xsd:NCName ? ; | |
space | = |
#x20 ; | |
whitespace | = |
(#x20 | #x9 | #xD | #xA) ; |
次の例は、フレンドのフレンド(foaf)と prefix
属性を使用して宣言されている DBPedia (dbp) 語彙の prefix
属性を示している。
<package …
prefix="foaf: http://xmlns.com/foaf/spec/
dbp: http://dbpedia.org/ontology/">
…
</package>
衝突を回避するために、prefix
属性は、デフォルトの語彙にマップされるプリフィックスを宣言するために使用してはならない(MUST NOT)。prefix
属性が定義済みプリフィックスのための宣言を包含する場合、リーディング システムは、定義済みプリフィックスとして同じ URI にマップされているかどうかに関わらず、prefix
属性を定義する URI マッピングを使用しなければならない(MUST)。
プリフィックス '_' は、RDFa [RDFa 1.1] の処理に伴う将来的な互換性のために予約済みなので、宣言してはならない(MUST NOT)。
パッケージ ドキュメントの代替シリアライゼーションとの将来の互換性のために、ダブリン コア /elements/1.1/ 名前空間 [DCTERMS] のプリフィックスは、prefix
属性で宣言してはならない(MUST NOT)。製作者は、パッケージ ドキュメント メタデータで許可された [DCMES] 要素のみ使用しなければならない(MUST)。
プロパティ データ タイプは、IRI [RFC3987] を表現するコンパクトな手段であり、コロンで参照から分離された省略可能(OPTIONAL)なプリフィックスで構成されている。
property | = |
[ prefix , ":" ] , reference; | |
prefix | = |
? xsd:NCName ? ; | |
reference | = |
? irelative-ref ? ; | /* as defined in [RFC3987] */ |
プロパティ データ タイプは、[RDFa 1.1] で定義されている CURIE のデータ型から派生し、CURIE のサブセットを表している。
次の例は、プリフィックスの dcterms とリファレンスの modified で構成されるプロパティの値を示している。
<meta property="dcterms:modified">2011-01-01T12:00:00Z</meta>
処理後のプロパティは次の IRI のように展開される。
http://purl.org/dc/terms/modified
dcterms: プリフィックスは、IRI 「http://purl.org/dc/terms/
」にマップしている予約済みのプリフィックスである。
プリフィックスがプロパティの値から省略された場合、表現される基準は、この属性のためのデフォルトの語彙の用語を表している。
次の例は、マニフェストの item
要素にある [Manifest Vocab] mathml プロパティを示している。
<item … properties="mathml"/>
このプロパティは以下のように展開される。
http://idpf.org/epub/vocab/package/item/#mathml
これは語彙の IRI が参照と連結されている場合である。
上記の定義が妥当であっても、空の文字列は妥当なプロパティの値ではない。
リーディング システムは、プロパティから IRI [RFC3987] を作成するために、次の規則を使用しなければならない(MUST)。
プロパティが参照のみで構成されている場合、IRI はデフォルトの語彙に関連する IRI の語幹を参照に連結することによって得られる。
プロパティがプリフィックスと参照から構成されている場合は、IRI がプリフィックスに関連付けられた IRI の語幹を参照に連結することによって得られる。一致するプリフィックスが定義されていない場合、プロパティは無効であり、無視しなければならない(MUST)。
結果の IRI は [RFC3987] に妥当でなければならない(MUST)。しかしながら、リーディング システムは、この IRI を解決する必要はない。
このセクションは規定ではない。
全てのレンダリング情報を、EPUB 上で構築されている基本的な技術を通じて表現できるわけではない。例えば、CSS を持つ HTML は強力なレイアウト機能を提供するけれども、これらの機能は、レンダリングされているドキュメントの範囲に制限されている。
このセクションは、製作者にパッケージレベルのレンダリング意図の表現を許可する汎用的なプロパティを定義する(すなわち、EPUB リーディング システムによってのみ実行することができる機能)。リーディング システムが要求したレンダリングをサポートするとき、これらのプロパティは、ユーザーへ製作者が最適にデザインしたままのコンテンツの提示を可能にする。
rendition:flow プロパティ [Rendition Vocab] が meta
要素に指定されているとき、それは、オーバーフローコンテンツを処理するための製作者による全体の設定(すなわち、全てのスパイン項目)を示している。製作者は、動的なページ分割またはスクロールための設定を示してもよい(MAY)。
スクロールするコンテンツのために、それは、連続した EPUB コンテンツ ドキュメントは、連続したスクロール表示としてレンダリングされるか、それともそれぞれが、別々に(すなわち、それぞれの間が動的な改ページとして)レンダリングされるかどうかの指定もまた可能にする。
リーディング システムが指定されたレンダリングをサポートするとき、それは、オーバーフローコンテンツの処理方法を使用するべきである(SHOULD)が、要求されたレンダリングを上書きするユーザーのためのオプションを提供してもよい(MAY)。
meta
要素が、metadata
セクションに発生するこのプロパティを運ばないならば、初期設定値 auto
は、グローバル値としてリーディング システムによって想定されなければならない(MUST)。リーディング システムは、この初期設定値のみサポートしてもよい(MAY)。
リーディング システムが rendition:layout プロパティをサポートするならば、rendition:layout 値の pre-paginated
の指定もまたスパインの項目にセットされているとき、rendition:flow プロパティを無視しなければならない(MUST)。
二つのリフロー可能な EPUB コンテンツ ドキュメントが、スパインに連続して発生する場合、これら [HTML] body
要素のデフォルトのレンダリングは、page-break-before プロパティ [CSS Snapshot] に、always
が設定されていることと一致していることに注意されたい。rendition:flow プロパティを使うことに加えて、リーディング システムがこのような上書きをサポートする場合、製作者は、適切なスタイル シートの宣言を介して振る舞いを上書きしてもよい(MAY)。
rendition:flow プロパティは、複数回宣言してはならない(MUST NOT)。
次の値は、rendition:flow プロパティで使用するために定義されている。
リーディング システムは、全てのオーバーフロー コンテンツを動的にページ分割するべきである(SHOULD)。
リーディング システムは、オーバーフロー コンテンツはスクロール可能であるようにコンテンツ ドキュメントをレンダリングするべきであり(SHOULD)、指定されたレンディションによって表現された EPUB 出版物は、(ただし局所的に上書きすることを除いて)スパイン項目からスパイン項目へと、ひとつの連続したスクロールとして示すべきである(SHOULD)。
この仕様の将来のバージョンでは、scrolled-continuous のためのリーディング システムの振る舞いに関する詳細情報を提供することが期待される。
リーディング システムは、オーバーフローコンテンツはスクロール可能であるようにコンテンツ ドキュメントを表現するべきであり(SHOULD)、それぞれのスパイン項目は、別々にスクロール可能なドキュメントとして示すべきである(SHOULD)。
製作者は、オーバーフロー処理の設定をしない。リーディング システムは、初期設定の方法または適用可能なユーザーの設定を使用してオーバーフローコンテンツのレンダリングしてもよい(MAY)。
rendition:flow-auto、rendition:flow-paginated、rendition:flow-scrolled-continuous と rendition:flow-scrolled-doc プロパティ [Rendition Vocab] は、スパイン itemref
要素に局所的に指定されてもよく(MAY)、そして、そのような場合は、指定されたスパイン項目のためのグローバル値を上書きする。
これらの上書きのうちひとつのみが、全ての特定されたスパイン項目に適用される。
rendition:flow-scrolled-continuous プロパティの場合、スクロール方向は、itemref
要素によって参照される XHTML コンテンツ ドキュメントのルート要素におけるブロック フロー方向に関連して定義される。ブロック フロー方向が下向き(上から下)の場合、スクロール方向は縦である。ルート要素のブロック フロー方向が右向き(左から右)または左向き(右から左)の場合、水平である。
次の例は、スクロール可能な目次のあるページ分割されたレンディションを持つ製作者の意図を示してる。
<metadata>
<meta property="rendition:flow">paginated</meta>
</metadata>
<spine>
<itemref idref="toc" properties="rendition:flow-scrolled-doc"/>
<itemref idref="c01"/>
</spine>
rendition:align-x-center プロパティ [Rendition Vocab] がスパイン項目にセットされているとき、それはレンダリングされたコンテンツが、必要に応じて、ビューポートまたは見開き内で水平方向の中央にするべき(SHOULD)ことを示している。このプロパティは、結果として生じたコンテンツ ボックスの配置のみで、スパイン項目のレンダリングには影響を与えない。
リフロー可能なコンテンツの場合、各仮想ページは、中央でなければならない(MUST)。
この仕様のバージョンでは、このプロパティをサポートまたは指定しないときの、初期設定のレンダリングの挙動を定義しない。リーディング システムは、独自のデザインでスパイン項目をレンダリングしてもよい(MAY)。
このプロパティは主に、コンテンツのレンダリングで信頼性の高いセンタリングのコントロールが存在しない場合に、"Naka-Tobira (中扉)"(章タイトルページ)を処理するために開発された。ページメディアのサポートが、CSS で進化するにつれて、このプロパティは、廃止予定になることが予想される。製作者は、有効な CSS ソリューションの使用を勧める。
このセクションは規定ではない。
EPUB ドキュメントは、印刷書籍や PDF ファイルとは異なり、変化するように設計されている。コンテンツは画面やユーザーの要求に合わせてフローまたはリフローをする。レンディションと CSS [EPUB3 Overview] は、“コンテンツの表現は、ユーザーがコンテンツの特定の表現に合わせるのではなく、ユーザーに合わせる”と述べている。
しかしこの原則は全ての形式のドキュメントに適用されるわけではない。コンテンツとデザインは切り離すことができず、結び付けられている時がある。ささいな見た目の変更で意味が変化し、意味を失う危険がある。固定レイアウトドキュメントは、リフロー可能な EPUB がコンテンツに適していないとき、製作者が表現をより詳細に制御できるようにする。
このセクションは、EPUB 3.1 のコンテキスト内で固定レイアウト ドキュメントが意図しているレンダリング動作の宣言の語句を許可しているメタデータ要素の組を定義する。
EPUB 3.1 は、固定レイアウトのコンテンツを表現する複数のメカニズムを提供する。固定レイアウトのコンテンツが必要な場合、著者が選択するメカニズムは、望む精度、ファイル サイズ、アクセシビリティなどを含む複数の要因に依存するだろう。このセクションは、著者らが選択するメカニズムを指示することを意図するものではない。
rendition:layout プロパティ [Rendition Vocab] が meta
要素に指定されている時、ページ分割またはリフロー可能なレイアウト形式が、それが指定されたレンディション(例えば全てのスパイン項目)に包括的に適用されることを示している。
metadata
セクション内に、このプロパティを含んでいる meta
要素が現れない場合は、初期設定値の reflowable
がグローバル値として EPUB リーディング システムによって想定されなければならない(MUST)。
rendition:layout プロパティに pre-paginated
が設定されているとき、リーディング システムは、レンダリングしている合成見開きの隣接したコンテンツの隙間に間隔を包含してはならない(MUST NOT)。
プロパティが、スパイン項目に pre-paginated
がセットされているとき、そのコンテンツの寸法は、固定レイアウト [Content Docs 3.1] に定義されているように設定されなければならない(MUST)。
rendition:layout プロパティは、複数回宣言してはならない(MUST NOT)。
さらにレンダリングのリーディング システム最適化を容易にするための、パッケージメタデータ内で寸法を宣言する方法については rendition:viewport プロパティを参照されたい。
次の値は rendition:layout プロパティの用途で定義されている。
指定されたレンディションはあらかじめページ分割されない。リーディング システムは、レンダリングするときは動的な改ページを適用してもよい(MAY)。
指定されたレンディションはあらかじめページ分割されている。リーディング システムはレンダリングする時は、厳密にスパイン itemref
毎にひとつのページを生成しなければならない(MUST)。
リーディング システムは一般的に、動的なスタイルの変化は意図しない結果をもたらす可能性が高いので、そうしたドキュメントの固有のプロパティがもたらす結果として、あらかじめページ分割されたドキュメントにユーザースタイルシートやユーザーエージェントスタイルシートの適用を制限または拒否する。製作者は、リフロー可能なコンテンツの代わりにあらかじめページ分割を使用を選択したときに、こうした制約があることや、ユーザビリティやアクセシビリティに良くない影響があることを説明する必要がある。関連する情報は、Guideline 1.4 - Provide text configuration [UAAG 2.0] を参照されたい。
rendition:layout-pre-paginated と rendition:layout-reflowable プロパティ [Rendition Vocab] は、スパインの itemref
要素へ局所的に指定してもよく(MAY)、そして、そのような場合、指定されたスパイン項目のためのグローバル値を上書きする。
これらの上書きのうちひとつのみが、全ての特定されたスパイン項目に適用される。
次の例は、[Media Queries] を使用して、三種類の異なるデバイスのカテゴリのために、異なるスタイルシートを適用する、完全な固定レイアウトコンテンツを示している。メディア オーバーレイは、ドキュメントに適用されるスタイルシートのみ影響を与えることに注意されたい。viewport meta
タグで設定されたコンテンツ領域のサイズは、静的である。
<meta property="rendition:layout">pre-paginated</meta>
<head>
<meta name="viewport" content="width=1200, height=900"/>
<link rel="stylesheet" href="eink-style.css" media="(max-monochrome: 3)"/>
<link rel="stylesheet" href="skinnytablet-style.css" media="((color) and
(max-height:600px) and (orientation:landscape), (color) and (max-width:600px)
and (orientation:portrait))"/>
<link rel="stylesheet" href="fattablet-style.css" media="((color) and
(min-height:601px) and (orientation:landscape), (color) and (min-width:601px)
and (orientation:portrait)"/>
</head>
rendition:orientation プロパティ [Rendition Vocab] が meta
要素に指定されている時、意図された回転方向が、指定されたレンディション(例えば全てのスパイン項目)に包括的に適用されることを示している。
metadata
セクション内に、このプロパティを含んでいる meta
要素が現れない場合は、初期設定値 auto
がグローバル値としてリーディング システムによって想定されなければならない(MUST)。
rendition:orientation プロパティは、複数回宣言してはならない(MUST NOT)。
次の値は、rendition:orientation プロパティの用途で定義されている。
指定されたレンディションは横長(ランドスケープ)に表示されるのを意図している。
指定されたレンディションは縦長(ポートレート)に表示されるのを意図している。
指定されたレンディションの向きは制限されていない。
複数の回転方向をサポートしているリーディング システムは、指定された値が auto
でない限り、ユーザーに指定された回転方向を伝えるべきである(SHOULD)。意図を伝える手段は実装固有である。
rendition:orientation-landscape と rendition:orientation-portrait、rendition:orientation-auto プロパティ [Rendition Vocab] は、スパインの itemref
要素に局所的に指定してもよく(MAY)、そして、その場合は、指定されたスパイン項目のためのグローバル値を上書きする。
これらの上書きのうちひとつのみが、全ての特定されたスパイン項目に適用される。
次の例は、完全な固定レイアウトのコンテンツは、合成見開きなしでレンダリングされ、横向きに固定されることを意図を示している。
<metadata>
<meta property="rendition:layout">pre-paginated</meta>
<meta property="rendition:spread">none</meta>
<meta property="rendition:orientation">landscape</meta>
</metadata>
rendition:spread プロパティが meta
要素に指定されている時、意図した合成見開きの動作は、指定されたレンディション(例えば全てのスパイン項目)に包括的に適用されることを示している。
metadata
セクション内に、プロパティを含む meta
要素が現れない場合は、初期設定値 auto
がグローバル値としてリーディング システムによって想定されなければならない(MUST)。
rendition:spread プロパティは、複数回宣言してはならない(MUST NOT)。
次の値は、rendition:spread プロパティの用途で定義されている。
リーディング システムは、合成さした見開きに、スパイン項目を取り入れてはならない(MUST NOT)。
リーディング システムは、デバイスが横長(ランドスケープ)の方向の場合にのみ、スパイン項目のために合成見開きをレンダリングするべきである(SHOULD)。
リーディング システムは、デバイスの回転方向に関わらず合成見開きをレンダリングするべきである(SHOULD)。
明確な合成見開きの動作は定義していない。リーディング システムは、コンテンツ表示領域の利用最適化プロセスの一部として、特定または全てのデバイスの回転方向に合成見開きを使用してもよい(MAY)。
合成見開きが HTML コンテンツ ドキュメントと SVG コンテンツ ドキュメントのコンテキストの中で使用された時、viewport meta
要素 [Content Docs 3.1] と viewBox
属性 [Content Docs 3.1] を介して与えられた寸法は、それぞれの見開きの1ページのサイズを表現する。
page-progression-direction
属性を使用して全体の流れの方向性の宣言と、コンテンツ ドキュメントに含まれている局所的な page-progression-direction についての情報はスパインを参照されたい。
rendition:spread-landscape と rendition:spread-both、rendition:spread-auto、rendition:spread-none プロパティ [Rendition Vocab] は、スパインの itemref
要素に局所的に指定してもよく(MAY)、そして、その場合は、指定されたスパイン項目のためのグローバル値を上書きする。
これらの上書きのうちひとつのみが、全ての特定されたスパイン項目に適用される。
次の例は、完全な固定レイアウトのコンテンツは、横長の方向で合成見開きを使用してレンダリングされ、縦長の方向で見開きにならないことを示している。
<metadata>
<meta property="rendition:layout">pre-paginated</meta>
<meta property="rendition:spread">landscape</meta>
</metadata>
単一の固定レイアウトのタイトルページを持つリフロー可能なコンテンツで、固定レイアウトページは、デバイスが合成したた見開きを表示するとき、右手の位置に配置されるのを意図している。
<metadata>
<meta property="rendition:layout">reflowable</meta>
<meta property="rendition:spread">auto</meta>
</metadata>
<spine>
<itemref idref="titlepage" properties="page-spread-right rendition:layout-pre-paginated"/>
</spine>
リーディング システムが合成見開きをレンダリングするとき、初期設定の挙動は、指定されたページ進行方向もしくはコンテンツ ドキュメント内の局所的な宣言によって決定された以降の何も存在しないビューポートに、次の EPUB コンテンツ ドキュメントをレンダリングすることによって見開きを追加することである。
スパインの itemref
要素に rendition:page-spread-left または rendition:page-spread-right、rendition:page-spread-center プロパティ [Rendition Vocab] のいずれかを提供することにより、製作者はドキュメントを特定のビューポートに配置することを強制し、自動的な集団挙動(population behavior)を上書きしてもよい(MAY)。
rendition:page-spread-left プロパティは、指定されたスパイン項目が見開きの左手側のスロットでレンダリングされるべきであり(SHOULD)、rendition:page-spread-right は、右手側のスロットでレンダリングされるべきである(SHOULD)ことを示している。rendition:page-spread-center プロパティは、合成見開きモードは、上書きされると、単一のビューポートは、画面の中央でレンダリングされ、配置されるべきである(SHOULD)ことを示している。
rendition:page-spread-left と rendition:page-spread-right、rendition:page-spread-center プロパティはページ区切りコンテンツとリフロー可能なコンテンツの両方に適用され、それらはリーディング システムが合成見開きを生成するときのみ適用する。
rendition:page-spread-* プロパティは、XHTML コンテンツ ドキュメントのために設定された page-break-before プロパティ [CSS Snapshot] のどの値よりも優先的する。
rendition:page-spread-center の存在はビューポートの寸法を変更しないことに注意されたい。特に、それは全体の見開きの大きさを持つビューポートを作成する必要があることを示すものではない。重要なのは倍率が通常のページと中央見開きページの間で一致し続けることである。
リフロー可能なスパイン項目が、ページ区切りに続くとき、リフロー可能なそのスパイン項目は、rendition:page-spread-* プロパティ値が欠けているとき、(page-progression-direction
によって定義されている)次のページから開始するべきである(SHOULD)。リフロー可能なスパイン項目が rendition:page-spread-* 仕様を含んでいるなら、それは(空白ページを挿入するなどして)尊重しなれなければならない(MUST)。
同様に、ページ区切りのスパイン項目が、リフロー可能なスパイン項目に続くとき、ページ区切りのスパイン項目は、rendition:page-spread-* プロパティ値が欠けているとき、(page-progression-direction
によって定義されている)次のページから開始するべきである(SHOULD)。ページ区切りのスパイン項目が rendition:page-spread-* 仕様を含んでいるなら、それは(空白ページを挿入するなどして)尊重しなれなければならない(MUST)。
製作者はしばしば、(すなわち、2ページ構成の地図のような、読みやすくするために並んでレンダリングされている二つの連続するページなど)特定のデバイスの向きにおいて見開きを使用するために示すとはいえ、コンテンツ自身は、真に見開きを表現するものではない。二つの隣接するページが、真に見開きを表現することを示すために、製作者は、二つの隣接する EPUB コンテンツ ドキュメントのため、スパイン項目にある rendition:page-spread-left と rendition:page-spread-right プロパティを使用するべきであり(SHOULD)、そして、1ページだけまたは2ページの見開きが等しい条件を満たしている場合には、スパイン項目にあるプロパティを省略する。リーディング システムが、真に見開きを表す二つのスパイン項目と遭遇したとき、それは、隣接するページ間のスペースを入れずに見開きを作成するべきである(SHOULD)。
ひとつの page-spread-* プロパティのみが、任意の特定されたスパイン項目に宣言することができる。
rendition:page-spread-left と rendition:page-spread-right プロパティは、page-spread-left と spread-right プロパティ [Spine Vocab] の別名である。それらは、全ての固定レイアウト プロパティのために単一の語彙で使用することができる。製作者はいずれかのプロパティ セットを使用できるが、古いリーディング システムは、プリフィックスのないバージョンのみ認識するかもしれない。[Spine Vocab] はもはや、パッケージをレンダリングするメタデータとして拡張されていないため、プリフィックスの無い page-spread-center は、利用できない。
次の例は、2ページの固定レイアウトのセンタープレートを持つリフロー可能なコンテンツが、任意のデバイスの向きで合成見開きを使用してレンダリングされることを意図している。rendition:spread のグローバル値は、初期設定の auto
に初期化されるので、製作者は、レンディションが未定義の他の(リフロー可能な)部分の動作は見開きのままになることに注意されたい。
<spine page-progression-direction="ltr">
…
<itemref idref="center-plate-left"
properties="rendition:spread-both rendition:page-spread-left"/>
<itemref idref="center-plate-right"
properties="rendition:spread-both rendition:page-spread-right"/>
…
</spine>
次の例は、合成見開きは、使用するとき、センタープレートのために無効にする完全な固定レイアウトのコンテンツを示している。rendition:page-spread-center プロパティが、既に合成見開きを無効することを指示するセマンティクスを指定しているように、rendition:spread 宣言の none
表現は、センタープレート項目に必要でないことに注意されたい。
<metadata>
<meta property="rendition:layout">pre-paginated</meta>
<meta property="rendition:spread">auto</meta>
</metadata>
<spine>
<itemref idref="center-plate" properties="rendition:page-spread-center"/>
</spine>
この補足は、仕様の廃止予定(deprecated)と置き換え(superseded) [EPUB 3.1] 機能の一覧である。
メタの refines
属性の使用は、廃止予定(deprecated)である。duration と opf:alt-rep
、opf:authority
、opf:file-as
、opf:role
、opf:scheme
、opf:term
属性によって置換された。
この属性に関するより詳細な情報は、[Publications 3.0.1] の定義を参照されたい。
rendition:spread プロパティの portrait 値の使用は、廃止予定(deprecated)である。
rendition:spread-portrait のスパインによる上書きは、同様に廃止予定である。
この値に関する詳細情報は、[Publications 3.0.1] の定義を参照されたい。
rendition:viewport プロパティの使用は、廃止予定(deprecated)である。
このプロパティに関する詳細情報は、[Publications 3.0.1] の定義を参照されたい。
[OPF2] NCX ファイルは、置き換え(superseded)と除去のマークがされた。
NCX は、EPUB 2 リーディング システムへの後方互換性の手段を提供するが、EPUB 3 にはない機能である。これは、EPUB ナビゲーション ドキュメントに取って代わられた。EPUB3 リーディング システムは、NCX を無視しなければならない(MUST)。
スパイン toc
属性は、置き換え(superseded)と除去のマークがされた。
この属性は、[OPF2] NCX を識別するために許可される。
パッケージ ドキュメントのスキーマは http://www.idpf.org/epub/31/schema/package-30.nvdl で入手できる。
このスキーマを使用する検証は [NVDL]、[RelaxNG]、[ISO Schematron] と [XSD-DATATYPES] をサポートするプロセッサが必要になる。
単独で埋め込まれた RELAX NG とISO Schematron スキーマを使用しているマルチ・パス検証によって NVDL スキーマ層が代えられることができる点に注意されたい。
この付録では EPUB パッケージ ドキュメントのメディア タイプ application/oebps-package+xml
を登録する。この登録は [RFC4839] を置き換える。
パッケージ ドキュメントは EPUB 出版物のレンディションを記述する XML ファイルである。それはレンディション内のリソースを識別し、メタデータの情報を提供する。パッケージ ドキュメントとその関連規格を維持し国際電子出版フォーラム(IDPF)によって定義される。
application
oebps-package+xml
なし。
なし。
パッケージ ドキュメントは UTF-8 または UTF-16 でエンコードされた XML。
パッケージ ドキュメントは、XML1.0 仕様に準拠した整形式の XML が含まれている。
明らかに、たとえば不正な形式のデータを含む悪意のあるファイルを作ることができる。大部分の XML パーサーは、適合を厳しく実施することによって、そのような発生発作を予防する。
パッケージ ドキュメントを読む全てのプロセッサは厳密に取得されたデータのサイズと有効性を確認すべきである。
パッケージ ドキュメントの形式で使用可能な暗号化や署名、認証は EPUB Publications 3.0 規格おいて現在は提供されていない。
なし。
このメディアタイプの登録は http://www.idpf.org/epub/30/spec/epub30-publications.html にある EPUB Publications 3.0 仕様で記述された EPUB パッケージ ドキュメントのためのものである。
EPUB Publications 3.0 仕様は http://www.idpf.org/epub/20/spec/OPF_2.0.1_draft.htm にある application/oepbs-package+xml
メディアタイプを使用している Open Packaging Format 2.0.1 を置き換える。
このメディアタイプは EPUB フォーマットの電子ブックの配布に広く使用されている。以下のアプリケーションのリストは全てを網羅していない。
Adobe Digital Editions
Aldiko
Azardi
Apple iBooks
Barnes & Noble Nook
Calibre
Google Books
Ibis Reader
MobiPocket reader
Sony Reader
Stanza
なし。
.opf
TEXT
IDPF は http://www.idpf.org/epub/linking/
でスキームをリンクのレジストリを維持する。これらのスキームの一部は application/oebps-package+xml
ドキュメントに解決されるカスタム フラグメント識別子を定義する。
William McCoy, bmccoy@idpf.org
COMMON
International Digital Publishing Forum (http://www.idpf.org)
このセクションは規定ではない。
EPUB は、出版社、ベンダー、ソフトウェア開発者、および関連する標準規格の専門家を集め、協力的な努力で国際電子出版フォーラム(International Digital Publishing Forum, IDPF) によって開発されました。
EPUB3.1 仕様は下に述べるリーダーシップにより2015年7月のメンバーシップによって承認された憲章の下で動作し国際電子出版フォーラム(International Digital Publishing Forum, IDPF)の EPUB Maintenance Working Group によって調整した。
ワーキング グループのアクティブメンバー:
より詳細な承認と EPUB の各バージョンへの貢献者については謝辞と貢献者 [EPUB3 Overview] を参照されたい。
[Authority Registry] EPUB Subject Authorities Registry.
[BCP 47] Tags for Identifying Languages; Matching of Language Tags. September 2009.
[CSS Snapshot] CSS Snapshot .
[Content Docs 3.1] EPUB Content Documents 3.1 .
[Core Media Types] EPUB 3 Core Media Types.
[DCTERMS] DCMI Metadata Terms .
[DateTime] Date and Time Formats . 15 September 1997.
[EPUB 3.1] EPUB 3.1 .
[EPUB Accessibility] EPUB Accessibility .
[HTML] HTML .
[ID Registry] EPUB Identifiers Registry.
[ISO Schematron] ISO/IEC 19757-3: Rule-based validation — Schematron . 2006-06-01.
[ISO8601] ISO 8601:2004 Data elements and interchange formats -- Information interchange -- Representation of dates and times . 2004-12-01.
[Link Vocab] EPUB Metadata Link Vocabulary .
[MARC Relators] MARC Code List for Relators.
[Manifest Vocab] EPUB Manifest Properties Vocabulary .
[Media Overlays 3.1] EPUB Media Overlays 3.1 .
[Media Queries] Media Queries .
[Meta Vocab] EPUB Meta Properties Vocabulary .
[NVDL] ISO/IEC 19757-4: NVDL (Namespace-based Validation Dispatching Language) . 2006-06-01.
[OCF 3.1] Open Container Format 3.1 .
[ONIX] ONIX for Books .
[OPF2] Open Packaging Format 2.0.1 .
[Publications 3.0.1] EPUB Publications 3.0.1 .
[RDFa 1.1] RDFa Core 1.1 - Second Edition . Syntax and processing rules for embedding RDF through attributes. 22 August 2013.
[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.
[RFC3987] Internationalized Resource Identifiers (IRIs) (RFC 3987) . January 2005.
[RFC4839] Media Type Registrations for the Open eBook Publication Structure (OEBPS) Package File (OPF) (RFC 4839) . April 2007.
[RelaxNG] ISO/IEC 19757-2: Regular-grammar-based validation — RELAX NG. Second Edition . 2008-12-15.
[Rendition Vocab] EPUB Package Rendering Vocabulary .
[Reserved Prefixes] EPUB Package Document Reserved Prefixes.
[Role Registry] EPUB Collection Roles Registry.
[SMIL] SMIL Version 3.0 . 01 December 2008.
[Spine Vocab] EPUB Spine Properties Vocabulary .
[Structure Vocab] EPUB 3 Structural Semantics Vocabulary .
[UAAG 2.0] User Agent Accessibility Guidelines 2.0 . 17 December 2002.
[Unicode] The Unicode Consortium. The Unicode Standard..
[XML] Extensible Markup Language (XML) 1.0 (Fifth Edition) . 26 November 2008.
[XMLNS] Namespaces in XML (Third Edition) . 8 December 2009.
[XSD-DATATYPES] XML Schema Part 2: Datatypes Second Edition . 28 October 2004.
[EPUB3 Changes] EPUB 3.1 Differences from EPUB 3.0.1 .
[EPUB3 Overview] EPUB 3.1 Overview .
[JSON-LD] JSON-LD 1.0: A JSON-based Serialization for Linked Data. 16 January 2014..
[Role Extensions] EPUB Collection Element Role Extensions.
[Types Registry] EPUB Publication Types Registry.