]>
この文書は「EPUB Indexes 1.0」の日本語訳である。最新の文書は http://www.idpf.org/epub/idx/epub-indexes.html である。原文もしくは完全な情報は、http://www.idpf.org/epub/idx/epub-indexes.html を参照されたい。
この日本語訳は参考である。公式な文書ではなく、翻訳・解釈の正確性を保証していない。
また本文内の訳注は翻訳者の主観による補足である。
2015年8月26日 勧告仕様
このドキュメントの改訂履歴は、レビュー用として利用できる。
この文書(いくらかの規範的な訂正を含むかもしれない)のために、正誤表(英語)を参照されたい。
Copyright © 2010-2015 International Digital Publishing Forum™
無断複写・転載を禁止する。本作品は合衆国法典第17編の下に保護されている。変更を伴うこの著作物の複製と頒布は、International Digital Publishing Forum (IDPF) の書面による許可を得ない限り禁止されている。
EPUB は International Digital Publishing Forum の登録商標である。
このセクションは、公開時におけるこのドキュメントのステータスを説明している。他のドキュメンには、このドキュメントを置き換えるかもしれない。
このドキュメントは、IDPF メンバーによってレビューされており、勧告仕様として IDPF Board よって承認されている。このドキュメントは、安定しているとみなされ、他の仕様やドキュメントから参照されてもよい。
このドキュメントへのフィードバックは、EPUB ワーキンググループのメーリングリストか課題管理で提供することができる。
このドキュメントは、IDPF Policies and Procedures によって管理されている。
目次
この仕様は、EPUB Publications 3.0.1 [Publications301] について言及している。ここで言及されている要素は、[HTML5] である。
このセクションは有益な情報である。
この仕様の目的は、すべての EPUB リーディングシステムでレンダリングされるインデックスを可能にする方法で、EPUB 出版物のインデックスの構造とコンテンツをエンコードの一貫性のある方法を定義し、仕様に準拠している EPUB リーディングシステム上で最適な方法で取り扱うことである。リーディングシステムは、印刷物の索引の利点だけでなくインタラクティブな機能や印刷書籍では不可能な機能を提供するために、このエンコーディングを生かすことができる。
出版されたコンテンツ内の情報を発見する四つの方法には、目次の使用、(順次読み込みを含む)閲覧、検索、インデックスの使用がある。これらの四つの手法は、異なる特徴を持ち、異なる目的を果たす。目次は、コンテンツ自身と同じ順序と同じ言葉を掲載し、出版物で取り上げられているコンテンツの構造の概要を提供する。閲覧は、ユーザーが出版物全体の流し読みと、興味ある部分の拾い読みを可能にする。検索は、ユーザーが検索文字列に一致(またはほぼ一致)する単語が出版物内のどの場所にあるのかを発見することを可能にするが、多くの場合、重要性や独自性を考査していないものを提供するか、あまりにも多くの結果を返すか、ほぼ同義語または階層的に異なる用語のいずれかを採用することで対象を間違えるなどする(例えば、“戦争”を検索すると“紛争”や“戦闘”が見つからなかったり、“犬”を検索すると“スパニエル”や“レトリバー”、“ダックスフント”が見つからなかったり)。
インデックスは、他の三つの方法を同時に区別する独自の重要な特性を持っている。第一に、インデックスは、出版物のコンテンツを通じてダイレクトにトピックに基づくアクセスを提供する。第二に、インデックスは、一般的(広範囲)と特定の両方の精度の異なる程度よるトピックを包含する。第三に、インデックスは、トピック間の関連性を示す。第四に、インデックスは、(人間の)索引作製者によって選択と整理された名詞であると考えられたコンテンツのためだけのエントリを含む。
インデックスは、閲覧可能な文書である。索引は、ユーザーが注意深く選択した用語を提供するだけでなく、推奨または関連する用語にユーザーを導く相互参照のネットワークを介し、トピックの考察のよりきめ細かい分析を提供するサブエントリの使用により、必要とする情報の発見を助ける。こうした理由で、索引もまた本のトピック範囲の深度の要点を提供し、有用なマーケティングツールとなりえる。
インデックスは、(検索など)単純な文字列ではなく意味にフォーカスされており、アクセスポイントとして出版物で明確に使用される単語だけでなく、ユーザーが考えるであろう代替の用語も包含するので、“そのような用語はありません”とユーザーが取り残されることは少ない。インデックスは、しばしばリンクを辿るときに、期待されるコンテンツの種類を事前にユーザーに表示するための特別な機能を採用している(例えば、イタリック体のロケータは、ロケータの対象が図であることを示してもよい)。
インデックスは、出版されたコンテンツをよりアクセシブルにする非常に有用で専門的なナビゲーションツールである。EPUB 規格は、インデックスは検索などの追加のナビゲーションのアプローチで統合することと、印刷本では不可能な革新的なアクセスの手段を可能にすることで、出版物のすべての部分からそれらへのアクセスが提供されることにより、さらに便利にしている(例えば、図の参照のみを見せる索引のフィルタリングや、テキストの選ばれた範囲に適用できるすべての索引の表示)。
このドキュメントは、インデックスとリーディングシステムの検索の両方の相互作用に取り組んでいないが、それらが相互作用できる方法のいくつかの提案は、付録 C. リーディングシステムの実装提案の C.3 と C.4 で見ることができる。
このドキュメントは、インデックスのコンテンツや表現に取り組んでいない。インデックスのコンテンツ、制作、構成のためのガイドラインは、ISO 999: 情報及びドキュメンテーション - インデックスの内容、構成及び表示の指針 [ISO999] と NISO Technical Report 2: インデックスと関連情報検索デバイスのガイドライン [NISOTR02] で見つけることができる。
このセクションで掲載されている用語が、後のセクションでより詳細に説明または定義されている場合、セクション番号は丸括弧で示している。
以下の定義は、この仕様のコンテクスト内のみで明確にするために意図されており、他のコンテクストでの利用は異なるかもしれない。
他のエントリの直接の子孫であるエントリで、これらは、大抵の場合、出版業界ではサブエントリと呼ばれている。
EPUB Publication [Publications301] で使用されている XHTML コンテンツドキュメント [ContentDocs301]。
相互参照は、同じインデックスまたは他のインデックスのひとつ以上の相互参照の対象へユーザーを誘導する。それは、ある用語から (1) (追加の情報を提供する)ひとつ以上の関連する用語または用語カテゴリまたは (2) (ユーザーがある用語を検索するが、概念的に異なる用語の下にインデックスされているとき)ひとつ以上の推奨する用語または用語カテゴリへユーザーを誘導する。相互参照は、通常、例えば“を見よ(see)”または“も見よ(see also)”のリードインの単語で始まる。
以下の例では、メインエントリは並字で、相互参照は太字である。
北京(Peking). 北京(Beijing)を見よ. [推奨する用語へユーザーを誘導]
戦闘(battles). 特定の戦闘の名称を見よ. [推奨する用語カテゴリにユーザーを誘導]
サツマイモ(sweet potatoes), 63. サツマイモ(yams)も見よ. [関連する用語へユーザーを誘導]
ジャガイモ(potatoes), 55-59, 61. 特定のジャガイモの品種も見よ. [関連する用語カテゴリにユーザーを誘導]
サツマイモ(yams), 82. サツマイモの品種の名前も見よ; イモの祭り(Yam Festival)(ガーナ); サツマイモの粉(yam powder) [関連する用語カテゴリと二つの関連する用語へユーザーを誘導]
用語を伴う説明文。時には“編集後記(editorial note)”や“スコープノート(scope note)”と呼ばれる。
任意の関連するロケータ、相互参照、編集者注、子エントリ加えた用語。用語はエントリとして単独で存在することはできず、少なくともひとつのロケータ、相互参照、編集者注、子エントリを持たなければならない(must)。
インデックスグループのタイトル。
任意(Optional)の有益なコンテンツは、インデックスタイトル、使用方法の説明、ロケータの形式、情報の範囲、レジェンドなどのように、インデックスの最適化をしてユーザーが利用できるように、インデックスの最上部に出現する。
例えば、全てメインエントリは、任意(optional)のグループタイトルで文字“A”で始まるような、インデックス内の連続したメインエントリのシリーズ。
例えば“最初の行のインデックス”や“名前のインデックス”のような、インデックスのタイトル。
(ロケータ、特殊な記号、特殊なテキストの書式、イニシャルや略語などの接頭語としての)インデックスやその意味で使用される略語または特別な記号のリスト。
用語と索引を付けられたコンテンツの位置との間を接続する。
ロケータによって指されているコンテンツの一部。これは、単一の点またはコンテンツの範囲のどちらかである。
親エントリを持たないエントリ。
プロパティ [Publications301]は、この仕様で定義されている epub:type 属性を介して暗黙的かそれとも明示的な、意味論的に変化している [ContentDocs301] 最も近い祖先の要素によって持たれる。
単語、語句、文字列、グリフやインデックス可能なトピックを表す画像。例えば、名前、場所、コンセプトなど。
カテゴリは、それら間を関連付けを作成するために用語に適用する、例えば、用語カテゴリ“花”は、インデックス用語の“デイジー”や“ユリ”、“バラ”に関連付けのに使用されてもよい。これらの用語カテゴリは、統制語彙から引き出されてもよく(may)、特定のインデックスの必要に応じて発展されてもよい(may)。
この文書内のキーワード、MUST、MUST NOT、REQUIRED、SHALL、SHOULD NOT、SHOULD、SHOULD NOT、RECOMMENDED、MAY、OPTIONAL は、[RFC2119] の記述に従って解釈される。
この仕様のすべてのセクションは、例または“このセクションは有益な情報である”という参考情報状態ラベルで識別されるセクションを除いて規定である。セクションと付録への参考情報状態の適用は、含まれる可能性のあるすべての子コンテンツおよびサブセクションに適用される。
この仕様は、すでに EPUB Structural Semantics Vocabulary [StructureVocab] に包含されているインデックスのセマンティクスとの後方互換性を維持し、さらに改良と拡張をしている。
次の表記上の規則は、この仕様に用いられる:
markup
すべてのマークアップ(要素、属性、プロパティ)、コード(JavaScript、擬似コード)、機械処理可能な値(文字列、文字、メディアタイプ)とファイル名は、赤橙色の等幅フォントで示している。
markup
マークアップとコードの定義へのリンクは、下線と赤橙色の等幅フォントで示している。各セクションの最初のインスタンスのみリンクがされている。
http://www.idpf.org/
URI は紺色の等幅フォントで示している。
ハイパーリンクは、青い下線で示している。
規範的で参考情報は、角括弧で囲まれている。
用語集で定義されている用語は、キャピタルケースで示している。
用語の定義へのリンクは、点線の青い下線である。各セクションの最初のインスタンスのみリンクがされている。
規範的な要素、属性とプロパティの定義は、青いボックスにある。
有益なマークアップ例は、白いボックス内にある。
有益な注記は、"Note"の見出しがある黄色いボックス内にある。
有益な警告は、"Caution"の見出しがある赤いボックス内にある。
このセクションは有益な情報である。
簡単に述べると、インデックスは、おそらく人間のユーザーが効果的にインデックスを利用する追加情報(ヘッドノード)を伴うひとつ以上のエントリで構成されている。例1は、すべての予想される構成部品を持つエントリを示している。エントリは、次のひとつ以上続く“猫”などの用語から構成されている:(1)どこでそのトピックの議論が出版物のコンテンツ内で発生したかと示しているロケータ(例えば、“77-80”)、(2)詳細または限定的なトピックのサブエントリ(例えば、“ダイエット”)、(3)他のエントリへユーザーを向かわせる参照(例えば、“野生の猫も参照されたい”)、(4)編集後記(例えば、“ネコ亜目の家猫”)。サブエントリ(すなわち、子孫や子エントリ)はトピック構造の階層を提供し、彼ら自身が上記の四つの項目のひとつ以上が続いていることに注意されたい。
例 1、可能な限りすべてのコンポーネントを持つエントリ:
cats Ed. Note: domestic cats from the subfamily Felinae coat types, 7:5-7:6 diet, 7:1 lifespan, 7:7-7:9 training, 8:1 see also wildcats
インデックスのエントリは、インデックスファイルに出現した順番でリーディングシステムによって表示される。
ユーザーは、本の章(“章のようなインデックス”)を読んだり辞書をめくるのと同様に、望む情報を見つけるために順番にインデックスを閲覧することができるが、この仕様は、ユーザーとインデックス、テキスト間のさらなる相互作用を実現するエンコーディングもまた提案している(詳細は、2.2.6 ロケータの対象の構造的セマンティクスと 2.2.8 用語カテゴリと一般的な相互参照の対象、付録 C. リーディングシステムの実装提案を参照されたい)。
EPUB 出版物は、ひとつ以上のインデックスを含んでもよい(may)。インデックスは、ひとつ以上のコンテンツドキュメントから成り立ってもよく(may)、またそれは他のインデックスや他のコンテンツの型式(例えば、章)を含むコンテンツドキュメント内に埋め込まれてもよい(may)。どこで発生しても、インデックスは、index
値を持つ epub:type
属性の要素内に包まれなければならない(must)。インデックスが、ひとつ以上の完全なコンテンツドキュメントでマークアップされている場合、body
要素(<body epub:type="index">
)が使用されなければならない(must)。インデックスまたはインデックスの一部が、コンテンツの他の型式を含むようなコンテンツドキュメントに埋め込まれている場合、任意の [HTML5] セクショニングコンテンツ要素は、それを包む(例として、<section epub:type="index">
)に使用されてもよい(may)。
index
index のための最も外部の epub:type
値
インデックスを包む要素は必須である
任意の [HTML5] セクショニングコンテンツ要素または body
を使用する
[HTML5] ヘッディングコンテンツ要素をひとつのみ含んでもよい(may)
子セマンティクスの index-headnotes
を持つ要素をひとつのみ含んでもよい(may)
子セマンティクスの index-entry-list
または index-group
を持つ要素をひとつ含まなければならない(must)
この仕様で定義されている子セマンティクスプロパティを持つ他のいかなる要素も含んではならない(must not)
epub:type
属性値に index
を包含している要素は、epub:type
属性値に index-headnotes
を包含する要素をひとつ含んでもよい(may)。ヘッドノートは、しばしばインデックスの使用をより効果的にするため、ユーザーに必要な追加情報を伝達するためにインデックスに使用される。ヘッドノートのセクションは省略可能である(optional)。
使用する場合、それは epub:type
属性値に index-headnotes
を包含する [HTML5] header
要素か [HTML5] セクショニングコンテンツ要素から構成される。この要素は、レジェンドか任意の他の適切か有益な情報を含んでもよい(may)。
index-headnotes
インデックスの情報を解釈または使用してユーザーを支援する物語調または他のコンテンツ
index
[HTML5] header
またはセクショニングコンテンツ要素を使用する
子セマンティクスの index-legend
を持つひとつ以上の要素を含んでもよい(may)
任意の妥当な [HTML5] 要素を含んでもよい(may)
例 2、物語調のテキストとインデックスのタイトルを含んでいる典型的なヘッドノートのセクション:
<header epub:type="index-headnotes"> <h1>Subject Index</h1> <p>This is an index to the main text of the book; content in the appendices has not been indexed. References are to section and paragraphs. The number preceding the colon is the number of the section; the number following the colon is the paragraph number within the section.</p> <p>Alphabetization is word-by-word: New York comes before Newtown.</p> </header>
ヘッドノートは、epub:type
属性値 index-legend
を使用して示されている(略称や記号、インデックスで使用されている特別なフォーマットとそれらの意味を掲載している)レジェンドを含んでもよい(may)。レジェンドデータはひとつ以上の名前または値のペアで構成されているため、データ自体は、[HTML5] 定義リスト(dl
、dt
、dd
)構造を使用してエンコードされるべきである(should)。これはレジェンドを機械可読にし、リーディングシステムでの操作を可能にする。
index-legend
インデックスで使用されている記号や略称、特別なフォーマットとそれらの意味を掲載
index-headnotes
任意の [HTML5] セクショニングコンテンツ要素または dl
で使用する
例 3、dl
要素のレジェンド:
<header epub:type="index-headnotes"> <p>The following abbreviations are used in this index.</p> <dl epub:type="index-legend"> <dt>Civ. R.</dt><dd>Civil Rule</dd> <dt>Crim. R.</dt><dd>Criminal Rule</dd> <dt>§</dt><dd>Statute</dd> </dl> <p>The following formatting conventions are used in this index-</p> <dl epub:type="index-legend"> <dt>bold text</dt><dd>main discussion/definition of topic</dd> <dt>italic text</dt><dd>indicates figure</dd> <dt>'t' following a locator</dt><dd>indicates table</dd> </dl> </header>
例 4、section
要素のレジェンド:
<header epub:type="index-headnotes> <p>The following abbreviations are used in this index.</p> <section epub:type="index-legend"> <h2>Abbreviations and definitions</h2> <dl> <dt>Civ. R.</dt><dd>Civil Rule</dd> <dt>Crim. R.</dt><dd>Criminal Rule</dd> <dt>§</dt><dd>Statute</dd> </dl> </section> </header>
以下の省略可能なヘッドノートは、以下のセクション 2.2.2 と 2.2.3 に記載されているようなひとつ以上のエントリが含まれているインデックスの集合である。
例 5、インデックスヘッドノートを持ち、コンテンツドキュメント全体から成るインデックス:
<body epub:type="index"> <header epub:type="index-headnotes"> ... </header> ...<!-- entries go here --> </body>
例 6、インデックスヘッドノートを持たず、コンテンツドキュメント全体から成るインデックス:
<body epub:type="index"> ...<!-- entries go here --> </body>
例 7、インデックスヘッドノートを持ち、コンテンツドキュメントの一部分から成るインデックス:
<section epub:type="index"> <header epub:type="index-headnotes"> ... </header> ...<!-- entries go here --> </section>
例 8、インデックスヘッドノートを持たず、コンテンツドキュメントの一部分から成るインデックス:
<section epub:type="index"> ...<!-- entries go here --> </section>
インデックスグループは、例えば、すべてのエントリが“A”で始まる連続したメインエントリのグループを包むために使用されてもよい(may)。インデックスグループは、epub:type
属性値 index-group
の使用で生成される。
インデックスグループが使用されたとき、すべてのエントリは、グループの一部でなければならない(must)。言い換えれば、epub:type
属性値に index
を包含する任意の要素のために、(1) エントリが含まれているすべての子は、index-group
の epub:type
属性値か (2) エントリが含まれている唯一の子がなければならない(must)、そしてそれは epub:type
属性値が、暗黙的に index-entry-list
値を持つ ul
要素でなければならない(must)(エントリ・リストの情報は 2.2.3 エントリと用語を参照されたい)。
インデックスグループは、最初の子として、そのグループのタイトルを含んでもよい(may)。
index-group
共通の特徴を共有する連続したメインエントリのシリーズ
index
任意の [HTML5] セクショニングコンテンツ要素を使用する
[HTML5] ヘディングコンテンツ要素に含まれてもよい(may)
子セマンティクス index-entry-list
を持つ要素をひとつのみ含まなければならない(must)
この仕様で定義されている子セマンティクスプロパティを持ついかなる他の要素も含んではならない(must not)
例 9、インデックスグループ:
... <section epub:type="index"> ... <section epub:type="index-group"> <h1>A</h1> ...[entries beginning with "A"] </section> <section epub:type="index-group"> <h1>B</h1> ...[entries beginning with "B"] </section> </section> ...
上記に記載されているようにメインエントリがグループ化されているかされていないか関わらず、インデックスエントリの一覧は、ul
要素を使用してエンコードされなければならず(must)、各インデックスエントリは、li
要素を使用してエンコードされなければならない(must)。
(1) ul
が index-headnotes
内側で発生するか、(2) 異なる値が明示的に与えられるか、そうでなければこの仕様によって暗示されていない限り、index-entry-list
の epub:type
属性値は、インデックス内のすべての ul
要素に暗黙的に指定される。
index-entry-list
index
または index-group
、index-entry
ul
要素で使用する
祖先が、index-headnotes
内を除き、index
型のとき暗黙である
子セマンティクス index-entry
を持つひとつ以上の要素を含まなければならない(must)
この仕様で定義されている子セマンティクスプロパティを持ついかなる他の要素も含んではならない(must not)
index-entry
の epub:type
属性値は、その親の ul
が暗黙的または明示的に index-entry-list
の epub:type
属性値を包含するところのすべての li
要素に暗黙的に示される。
index-entry
ひとつのエントリ
index-entry-list
li
要素で使用する
親 ul
が index-entry-list
型のとき暗黙である
子セマンティクス index-term
を持つひとつの要素を含まなければならない(must)
以下の少なくともひとつを含まなければならない(must):
子セマンティクス index-entry-list を持つ唯一の要素 |
子セマンティクス index-locator-list を持つ唯一の要素または子セマンティクス index-locator と index-locator-range を持つひとつ以上の組み合わせ |
子セマンティクス index-editor-note を持つ唯一の要素 |
子セマンティクス index-xref-preferred を持つひとつ以上の要素または子セマンティクス index-xref-related を持つひとつ以上の要素 |
この仕様で定義されている子セマンティクスプロパティを持ついかなる他の要素も含んではならない(must not)
index-term
インデックス可能なコンテンツを表す単語、語句、文字列、グリフまたは画像
index-entry
または index-xref-preferred
、index-xref-related
もうひとつの方法として、index-entry
または index-xref-preferred
、index-xref-related
として同じ要素を持ってもよい(may)
任意の [HTML5] フレージングコンテンツ要素、典型的に span
を使用する
エントリは、index-term
の epub:type
属性値を持つ唯一の要素に加えて、以下のひとつ以上を含まなければならない(must):(1)(epub:type
属性に index-entry-list
を包含する要素内の)ひとつ以上のサブエントリ;(2) ひとつ以上のロケータ(2.2.4 ロケータを参照されたい);(3) ひとつの編集者注(その要素は epub:type
属性値に index-editor-note
を包含する);(4) ひとつ以上の 相互参照(2.2.7 相互参照を参照されたい)。
例 10 は、サブエントリが含まれているエントリの最初の事例を示している。上記のように、epub:type
値 index-entry-list
と index-entry
は、特定の場合で暗示されており、明示的に記述する必要なく、例 10 は、説明のために明示的に記述しているが、以降の例ではそうしていない。
例 10、サブエントリを追加した用語:
ユーザーへ表示されるようなエントリ:
Black, John, birth, 75 death, 78
すべての epub:type 値に明示的な記述を持つコード化されたエントリ:
<ul epub:type="index-entry-list"> <li epub:type="index-entry"> <span epub:type="index-term">Black, John</span> <ul epub:type="index-entry-list"> <li epub:type="index-entry"> <span epub:type="index-term">birth</span> <a epub:type="index-locator">¶75</a> </li> <li epub:type="index-entry"> <span epub:type="index-term">death</span> <a epub:type="index-locator">¶78</a> </li> </ul> </li> </ul>
例 11 から 13 は、エントリで使用することができる他の三つの epub:type
値を示している。上記のように、特定のエントリは、任意の組み合わせで、これらの値のいくつかを持つ要素を含んでもよい(may)。以下の例は、epub:type
属性値 index-entry-list
と index-entry
が暗黙的に示され、表示はされない。
例 11、ロケータを追加した用語(ロケータの仕様については 2.2.4 ロケータを参照されたい):
<ul> <li> <span epub:type="index-term">Heston, Charlton</span> <a epub:type="index-locator" href="...">¶53</a> </li> </ul>
<ul> <li> <span epub:type="index-term">Heston, Charlton</span> <span epub:type="index-editor-note">Charlton Heston (1923-2008), actor in numerous American films.</span> </li> </ul>
例 13、相互参照を追加した用語(仕様については 2.2.7 相互参照を参照されたい):
<ul> <li> <span epub:type="index-term">Peking</span> <span epub:type="index-xref-preferred">See <a epub:type="index-term" href="...">Beijing</a>. </span> </li> </ul>
標準的なインデックスの異形である“glindex”は、後付けの結合と/または空白を節約する手段として時々使用される用語集(glossary)とインデックスを組み合わせたものである。glindex では、メインエントリの一部またはすべては、用語集に見られるような定義に続いている。この場合、EPUB Structural Semantics Vocabulary [StructureVocab] の用語集のプロパティは、例 14 に示しているように、この仕様で概説されているインデックスのプロパティと組み合わせて使用されるべきである(should)。
例 14、用語集とインデックスの組み合わせ(“glindex”):
<body epub:type="glossary index"> ... <ul epub:type="index-entry-list"> <li><!-- implied epub:type of index-entry --> <span epub:type="index-term glossterm">adjective</span> <span epub:type="index-locator-range">75-77</span> <span epub:type="glossdef">A word that modifies, quantifies, identifies, or describes a noun or words acting as a noun.</span> </li> </ul> </body>
ロケータは、暗黙的もしくは明示的に index-locator
の epub:type
値を持つ [HTML5] a
要素で表される。ロケータは、典型的に EPUB 出版物のいくつかの場所を指定している [HTML5] href
属性を持っており、それが href
属性値を持っていない場合、ロケータは実用的でないであろう。リーディングシステムは、一般的な [HTML5] ハイパーリンクとして明示的または暗示的な epub:type
なしでアンカーを解釈しなければならない(must)。
紙の本は、一般的にロケータとしてページや節、段落番号を使用する。電子書籍は、従来のページ番号や段落番号、節番号、単純な通し番号、用語、アイコン、ロケータを表す部分として必要な何か他のものを使用してもよい(may)。
index-locator
インデックス化されたコンテンツへの参照
index-entry
や index-locator-list
、index-locator-range
[HTML5] a
要素で使用する
親コンテクストが index-locator-list
または index-locator-range
の時に暗示的である
href
属性を持ってもよい(may)
例 15、href
を持たないロケータ:
コード:
<a epub:type="index-locator"><img alt="phone" src="phone-icon.png"/></a> ... <a epub:type="index-locator">35</a> ... <a epub:type="index-locator">II:14</a>
表示(ひとつの可能性のある方法):
例 16、href
を持つロケータ:
コード:
<a epub:type="index-locator" href="..."><img alt="phone" src="phone-icon.png"/></a> ... <a epub:type="index-locator" href="...">35</a> ... <a epub:type="index-locator" href="...">II:14</a>
表示(ひとつの可能性のある方法):
インデックスの用語はまた、ロケータを人間が読む文字列として機能してもよい(may):
例 17、ロケータのテキストとして機能する用語:
コード:
<span epub:type="index-term"> <a epub:type="index-locator" href="...">Berlin</a> </span> <span epub:type="index-term"> <a epub:type="index-locator" href="...">Paris</a> </span>
表示(ひとつの可能性のある方法):
Berlin Paris
epub:type
属性値 index-locator
は、上記の例で示すように、各 a
要素に明示的に設定されてもよい(may)。もうひとつの方法として、index-locator
の epub:type
は、a
要素が index-locator-list
または index-locator-range
の親コンテクストを持つとき暗示的に示される。ロケータのリストは、以下で説明されている。ロケータの範囲をコード化するのはセクション 2.2.5 ロケータの範囲を参照されたい。
index-locator-list
連続した index-locator
または index-locator-range
のシリーズ
index-entry
[HTML5] ul
要素で使用する
子セマンティクス index-locator
を持つひとつ以上の要素を含めなければならない(must)
例 18、明示的に設定された index-locator
の値:
<ul epub:type="index-entry-list"> <li epub:type="index-entry"> <span epub:type="index-term">Heston, Charlton</span> <a epub:type="index-locator" href="...">53</a> <a epub:type="index-locator" href="...">76-79</a> </li> <li> <span epub:type="index-term">Howard, Leslie</span> <a epub:type="index-locator" href="...">62</a> </li> </ul>
例 19、index-locator-list
を使用することで、index-locator
の値を暗示的に示している:
<ul epub:type="index-entry-list"> <li epub:type="index-entry"> <span epub:type="index-term">Heston, Charlton</span> <!-- locators wrapped in locator-list --> <ul epub:type="index-locator-list"> <!-- epub:type value index-locator is implied for all a elements due to ancestor with epub:type value locator-list --> <li><a href="...">53</a></li> <li><a href="...">76-79</a></li> </ul> </li> <li epub:type="index-entry"> <span epub:type="index-term">Howard, Leslie</span> <ul epub:type="index-locator-list"> <li><a href="...">62</a></li> </ul> </li> </ul>
ロケータのリストのネストは、例えば、例 20 に示されるように、ロケータの異なるサブセットに異なるクラスを適用するなど、いくつかの理由が求められるときに許可されている。
例 20、ネストされたリスト内のロケータ:
<ul epub:type="index-locator-list"> <li> <ul class="..."> <!-- epub:type value index-locator is implied for all a elements due to ancestor with epub:type value locator-list --> <li><a href="...">3:5</a></li> <li><a href="...">9</a></li> <li><a href="...">14</a></li> </ul> </li> <li> <ul class="..."> <li><a href="...">5:7</a></li> <li><a href="...">9</a></li> </ul> </li> </ul>
上記の例では、他のコンテンツの範囲(<a href="...">7:6-7:9</a>
)を参照しながら、ロケータのいくつかは単一のポイント(<a href="...">3:5</a>
)を参照する。ロケータの範囲は、epub:type の locator-range
を使用することで識別されるべきである(should)。例 21 から 23 は、ロケータの範囲をコード化する様々な方法を示している。
例 21、範囲は、範囲の開始のみを指定する単一の a
要素でタグ付けされ、範囲の終わりがどこかの識別は提供されていないことに注意されたい:
<ul epub:type="index-locator-list"> <li epub:type="index-locator-range"> <a href="chap2.xhtml#p076">76-79</a> </li> </ul>
例 22、範囲は、Canonical Fragment Identifiers [EPUBCFI] を使用して、範囲全体を指定する単一の a
要素でタグ付けされる:
<ul epub:type="index-locator-list"> <li epub:type="index-locator-range"> <a href="epubcfi(/6/4[chap01ref]!/4[body01], /156[para76]/1:0, /170[para79]/1:0)">76-79</a> </li> </ul>
範囲は、index-locator-range
の epub:type
属性値を持つ要素に包まれた、範囲の開始を指定するひとつ目と範囲の終わり指定する二つ目の二つの a
要素を使用してコード化されてもよい(may)。
例 23、範囲は二つの a
要素でタグ付されている:
<ul epub:type="index-locator-list"> <li epub:type="index-locator-range"> <a href="chap2.xhtml#p07.6">7.6</a>-<a href="chap2.xhtml#p07.9">7.9</a> </li> </ul>
ロケータは、例えば図、表、脚注などへのロケータポイントかどうか、それが指しているオブジェクトに関する情報を含んでもよい(may)。各ロケータ対象の構造的セマンティクス(structural semantics)は、epub:type
属性の値によって示されてもよい(may)。
インデックスのロケータは、a
要素に包含するために EPUB Structural Semantics Vocabulary [StructureVocab] の用語の推奨された XHTML コンテクストを拡張し、他の関連した語彙からの用語は、語彙の関連性 [ContentDocs301] ガイドラインに従って使用してもよい(may)。
例 24、構造的セマンティクス情報を持つロケータ:
<!-- note use of "figure" "table" and "footnote" --> <a href="..." epub:type="index-locator figure">18</a> <a href="..." epub:type="index-locator table">345-349</a> <a href="..." epub:type="index-locator footnote">28</a>
相互参照は、(1) (推奨または関連する)相互参照の型式と (2) 目的となる用語または用語カテゴリの二つの型式の情報を伝達する。それ故に、二つの別個の epub:type
値は必須である(required)。
この推奨と関連する相互参照の両方の特徴は、[DocBook] の see
と seealso
要素、[DITA] の index-see
と index-see-also
要素、そして [TEI] の参照要素のさらなる活用のための type
属性の使用と同等である。
相互参照は、通常、例えば(推奨する相互参照のための)“見よ”または(関連する相互参照のための)“も見よ”など、どの型式かをユーザーに示すために異なるリードインテキストで始まる。
相互参照が、関連か推奨なのかを示すために、以下の epub:type
値のひとつを使用する:
index-xref-preferred は、推奨する用語または用語カテゴリにユーザーを誘導する |
index-xref-related は、関連する用語または用語カテゴリにユーザーを誘導する |
加えて、参照された用語が、用語なのか用語カテゴリなのかを示すために、以下の epub:type
値のひとつを使用する:
index-term は、用語を参照する |
index-term-category は、用語カテゴリを参照する |
index-term-category
用語のカテゴリ(例えば、“特定の戦いの名前”)を表している単語、語句、文字列、グリフまたは画像
index-xref-preferred
または index-xref-related
もうひとつの方法として、index-xref-preferred
または index-xref-related
として同じ要素に持ってもよい(may)
[HTML5] a
要素で使用する
このセクションの例 25 から 32 はすべて、ドキュメント内に決め打ちでリードインテキスト(例えば、“見よ”または“も見よ”)を持っていることに注意されたい。望むならば、これらはその代わりに [CSS2.1] スタイルシートで削除と生成ができる。これについての詳細は 2.2.9 句読点とリードインワードを参照されたい。
単一の要素は、例 25 に見られるように、これらが単一の相互参照の対象であるとき、両方に必要な epub:type
値を持ってもよい(may)。
例 24、単一の要素でコード化された相互参照:
<a href="..." epub:type="index-xref-preferred index-term">Beijing</a>
もうひとつの方法として、例 26 に見られるように、これらが複数の相互参照の対象である場合、二つの epub:type
値は、それぞれのために“推奨”と“関連”する情報の繰り返しを避けるのに異なる要素で持ってもよい(may)。
例 26、分割した要素でコード化された相互参照:
<span epub:type="index-xref-related>See also <a href="..." epub:type="index-term">glucose</a>, <a href="..." epub:type="index-term">sucrose</a>. </span>
相互参照は、href
属性に [RFC3987] を包含してもよく(may)、リーディングシステムでそれを実行可能にしてもよい(may)。
以下の三つの例は、特定の用語にユーザーを向かわせる相互参照のオプションを示している。いずれの場合にも、相互参照内の href
属性の値は、対応する index-entry
の id
属性に一致するので、リンクが実行可能であることに注意されたい。
例 27、推奨する用語への相互参照:
<!-- note id attribute beij --> <li epub:type="index-entry" id="beij"> <span epub:type="index-term">Beijing</span> <a epub:type="index-locator">113-120</a> </li> ... <li epub:type="index-entry"> <span epub:type="index-term">Peking</span> <span epub:type="index-xref-preferred">See <!-- note href attribute #beij --> <a epub:type="index-term" href="#beij">Beijing</a> </span> </li>
例 28、関連する用語への相互参照:
<li epub:type="index-entry"> <span epub:type="index-term">sweet potatoes</span> <span epub:type="index-xref-related">See also <!-- note href attribute #yams --> <a epub:type="index-term" href="#yams">yams</a> </span> </li> ... <!-- note id attribute yams --> <li epub:type="index-entry" id="yams"> <span epub:type="index-term">yams</span> <a epub:type="index-locator">93-97</a> </li>
例 29、複数の用語への相互参照:
<!-- note id attribute --> <li epub:type="index-entry" id="blig"> <span epub:type="index-term">blight (potato)</span> <a epub:type="index-locator">72-73</a> </li> ... <!-- note id attribute --> <li epub:type="index-entry" id="gray"> <span epub:type="index-term">gray mold</span> <a epub:type="index-locator">85</a> </li> ... <li epub:type="index-entry"> <span epub:type="index-term">potato diseases</span> <a epub:type="index-locator">21-25</a> <span epub:type="index-xref-related">See also <!-- href attributes matching id's --> <a epub:type="index-term" href="#blig">blight (potato)</a>, <a epub:type="index-term" href="#gray">gray mold</a>, <a epub:type="index-term" href="#powd">powdery mildew</a> </span> </li> ... <!-- note id attribute --> <li epub:type="index-entry" id="powd"> <span epub:type="index-term">powdery mildew</span> <a epub:type="index-locator">93-97</a> </li>
例 30 から 31 は一般的な相互参照の対象を見られたい。
それらを実行可能にする唯一の妥当な href
を必要とする上の例とは異なり、実行可能な一般的な相互参照の対象は、同様に、ナビゲーションドキュメント [ContentDocs301] の特定のコンテンツを必要とする。詳細については 2.2.8 用語カテゴリと一般的な相互参照の対象を参照されたい。
例 30、推奨する用途のカテゴリへの相互参照:
<li epub:type="index-entry"> <span epub:type="index-term">battles</span> <span epub:type="index-xref-preferred">See <a epub:type="index-term-category" href="nav.xhtml#battles">names of specific battles</a> </span> </li>
例 31、関連する用語のカテゴリへの相互参照:
<li epub:type="index-entry"> <span epub:type="index-term">battles</span> <a epub:type="index-locator" href="...">18-25</a> <a epub:type="index-locator" href="...">28-32</a> <span epub:type="index-xref-related">See also <a epub:type="index-term-category" href="nav.xhtml#battles">names of specific battles</a> </span> </li>
最後に、相互参照は、用語とカテゴリ両方へユーザーを向かわせてもよい(may)。
例 32、三つの用語とひとつの用語カテゴリへの相互参照:
<li epub:type="index-entry"> <span epub:type="index-term">yams</span> <a href="..." epub:type="index-locator">82</a> <span epub:type="index-xref-related">See also <!-- references to specific index terms --> <a epub:type="index-term" href="#yfes">Yam Festival (Ghana)</a> <a epub:type="index-term" href="#ypow">yam powder</a> <a epub:type="index-term" href="#yrec">yam recipes</a> <!-- reference to category of terms --> <a epub:type="index-term-category" href="nav.xhtml#yamcult">names of yam cultivars</a> </span> </li>
このセクションは有益な情報である。
参照が一般的な相互参照の場合――つまり、対象のひとつは用語よりはむしろ用語カテゴリ――の参照は、実行可能か実行不可能である。上記の例 31 を考慮してみると、アメリカの南北戦争の本に登場するかもしれない。href
属性が不足していることで明らかなように実行不可能な相互参照である:
<li epub:type="index-entry"> <span epub:type="index-term>battles</span> <span epub:type="index-xref-preferred">See <a epub:type="index-term-category">names of specific battles</a></span> </li>
これが実行不可能なままな場合、ユーザーは、すべての戦いの名前を知る(または推測しようとする)か、それらの名前が表れるかどうかを確認するために、インデックスを閲覧したり検索したりする必要がある。ユーザーが正しく推測しない場合は、インデックスに現れないエントリを見つけるために、いくつかの関連性あるエントリを見落としたり、時間を無駄にするかもしれない。印刷物は、このための対処法はないが、電子書籍の技術は、相互参照から容易にアクセスでき、インデックスのすべての戦争の完全なリストをユーザーに提供するよいオプションを提供する。
完全な実装、これは、伝統的な紙のインデックスでは使用することのできない非常に便利な機能を提供する。ユーザーが相互参照のこの型式に遭遇するとき、語句“特定の戦闘の名前”をクリックすると、リーディングシステムは、一致するカテゴリ内の用語の一覧を提供する。その次に、ユーザーが、希望する用語を選択すると、リーディングシステムは、インデックス内の用語を提供する。次に、ユーザーはテキスト内の詳解へ行く望むロケータを選択できる。(この詳細は、C.8 用語カテゴリと一般的な相互参照の対象の拡張を参照されたい)
これを実現するために、(1) ナビゲーションドキュメント [ContentDocs301] は index-term-categories
の epub:type
属性値を持ち、関連性のあるインデックス用語の完全な一覧を含む nav
要素を包含しなければならず(must)、(2) インデックス内の相互参照は、epub:type
属性値 index-term-category
とその一覧を示している href
属性値持たなければならない(must)。ナビゲーションドキュメントの要件は、2.4.2. 用語カテゴリのサポートに概説されている。インデックスドキュメントの要件は、以下に示されている。
例 33、用語カテゴリのためにコード化したインデックスドキュメント:
<li epub:type="index-entry"> <span epub:type="index-term">battles</span> <span epub:type="index-xref-preferred">See <!-- note href attribute, pointing to nav document --> <a epub:type="index-term-category" href="nav.xhtml#battles">names of specific battles</a> </span> </li> ... <!-- note id attribute --> <li epub:type="index-entry" id="chan"> <span epub:type="index-term">Chancellorsville</span> <a epub:type="index-locator" href="...">65</a> </li> ... <!-- note id attribute --> <li epub:type="index-entry" id="man1"> <span epub:type="index-term">First Manassas</span> <a epub:type="index-locator" href="...">58</a> </li> ... <!-- note id attribute --> <li epub:type="index-entry" id="gett"> <span epub:type="index-term">Gettysburg</span> <a epub:type="index-locator" href="...">72-73</a> </li> ...
ユーザーエクスペリエンスの向上と、この仕様によって可能になる一般的な相互参照の対象に関連する他の拡張されたリーディングシステムの機能のために C.8 用語カテゴリと一般的な相互参照の対象の拡張を参照されたい。
このセクションは有益な情報である。
2.2.7 相互参照と 2.2.8 用語カテゴリと一般的な相互参照の対象の例に見られるとおり、インデックスは、多くの場合、エントリの情報の分割(例えば、ロケータの間にコンマ、用語にの後にコロン、エントリの終わりにピリオド)または視覚的要素を区別する(例えば、斜体で書かれた相互参照)ために句読点や特定の書式を採用しているインデックスもまたしばしば一貫したリードインテキスト(例えば、推奨する相互参照のための“見よ”と関連する相互参照のための“も見よ”)を採用している。この句読点と形式、リードインテキストは、インデックス内に明確に決め打ちすることもできるが、もしこれらに一貫性があるなら、これらは [CSS2.1] スタイルシートを介して省略したり、動的に挿入することができる。
例えば、これはエンドユーザーへの望ましい表示であると仮定する。コロン、ピリオド、斜体の使用に注意されたい:
Paris: 53, 76-79, 92-98.
Peking: see Beijing.
例 34、句読点、リードインの単語と決め打ちされた書式:
<li epub:type="index-entry"> <!-- colon following term --> <span epub:type="index-term">Paris</span>: <!-- hard-coded commas separating locators --> <a epub:type="locator" href="...">53</a>, <a epub:type="locator" href="...">76-79</a>, <a epub:type="locator" href="...">92-98</a>. </li> ... <li epub:type="index-entry"> <!-- colon following term --> <span epub:type="index-term">Peking</span>: <!-- hard-coded italics, lead-in word "see" --> <span epub:type="index-xref-preferred"><i>see </i> <!-- period following term --> <a epub:type="index-term" href="...">Beijing</a>. </span> </li>
例 35、句読点の省略:
<li epub:type="index-entry"> <!-- no colon following term --> <span epub:type="index-term">Paris</span> <!-- no commas between locators or period at the end --> <a epub:type="locator" href="...">53</a> <a epub:type="locator" href="...">76-79</a> <a epub:type="locator" href="...">92-98</a> </li> ... <li epub:type="index-entry"> <!-- no colon following term --> <span epub:type="index-term">Peking</span> <span epub:type="index-xref-preferred"><i>see </i> <!-- no period following term --> <a epub:type="index-term" href="...">Beijing</a> </span> </li>
例 36、句読点と書式、リードインの単語の省略:
<li epub:type="index-entry"> <span epub:type="index-term">Paris</span> <a epub:type="locator" href="...">53</a> <a epub:type="locator" href="...">76-79</a> <a epub:type="locator" href="...">92-98</a> </li> <li epub:type="index-entry"> <span epub:type="index-term">Peking</span> <span epub:type="index-xref-preferred"> <a epub:type="index-term" href="...">Beijing</a> </span> </li>
インデックスは、それらが巨大な出版物のコンポーネントであるか出版物自身であることを表しているかに関わらず、パッケージドキュメント内で識別されなければならない(must)。出版物の形式に応じて、パッケージドキュメントの metadata [Publications301] かそれとも manifest [Publications301] でこの性質は識別される。
この情報は、EPUB 出版物を開くときインデックスの任意の必要な前処理を行うためにリーディングシステムによって使用されてもよい(may)。
出版社がインデックスとして出版物の主要な目的を識別したいと望むなら、出版物は、この特定の性質を持つパッケージメタデータの dc:type [DCMIType] 要素に包含されることで、特殊な形式として識別されるべきである(should)。
例 37、出版物全体がインデックス:
<metadata> ... <dc:type>index</dc:type> ... </metadata>
セクション 2.2.1 に記載されているように、インデックスが、完全に単一のコンテンツドキュメントに含まれている場合、インデックスを含んでいる各コンテンツドキュメントは、コンテンツドキュメントの manifest item に index のプロパティ持たなければならない(must)。
例 38、ひとつのコンテンツドキュメントから成るインデックス:
<manifest> <item href="index01.xhtml" properties="index" ... /> </manifest>
index プロパティは、上記の 2.3.1 で説明されている通り、出版物全体がインデックスとして定義されているとき、manifest item で暗黙的に指定される。
collection
要素単一のインデックスが複数のコンテンツドキュメントに分散している場合、インデックスのコンテンツは、インデックス [DCMIType] に設定された role
属性を持つパッケージドキュメントの collection
要素を使用して識別されなければならない(must)。セクション 2.3.1 で説明されている通り、出版物の主要の目的は、インデックスとして識別されている場合でも、これらが実行されなければならない(must)。
この仕様で定義されている index
の役割は、次のように collection
要素を制限する:
子 collection
要素を包含してもよい(may)
子 collection
要素は、index-group
として定義された role
を持たなければならない(must)
リンクは、コンテンツドキュメントかフラグメントに解決されなければならない(must)
collection 内の link 要素の順序は、spine
[Publications301] の要素の表示に影響を及ぼさない。
インデックスは、単一のコンテンツドキュメントかそれとも collection によってグループ化された複数のコンテンツドキュメントは、同様にリーディングシステムによって処理されるべきである(should)。これは、付録 C. リーディングシステムの実装提案で説明されている機能を可能にするものである。
例 39、二つに分割されたインデックスを含む出版物で、それぞれは collection 要素で識別されている:
<package> ... <collection role="index"> <link href="subjectIndex01.xhtml" /> <link href="subjectIndex02.xhtml" /> <link href="subjectIndex03.xhtml" /> </collection> <collection role="index"> <link href="chap1.xhtml#nameIndex1" /> <link href="chap2.xhtml#nameIndex2" /> </collection> ... </package>
この仕様で定義されている index-group
の役割は、次のように collection
要素を制限する:
index-group
は、index
の役割を持つコレクションのサブコレクションでなければならない(must)
さらに深くサブコレクションを含んではならない(must not)
リンクは、コンテンツドキュメントかフラグメントに解決されなければならない(must)
sub-collection 内の link 要素の順序は、spine [Publications301] 内の要素の表示に影響を及ぼさない。
インデックスグループは、単一のコンテンツドキュメントかそれとも sub-collection によってグループ化された複数のコンテンツドキュメントは、同様にリーディングシステムによって処理されるべきである(should)。これは、付録 C. リーディングシステムの実装提案で説明されている機能を可能にするものである。
例 40、その幾つかは複数のコンテンツドキュメントに“またがる” index-groups を持つ index を含む出版物。これらは、role="index-group"
を持つ子 collection 要素を使用することで識別される:
<package> ... <collection role="index"> <collection role="index-group"> <link href="subjectIndex-a01.xhtml" /> <link href="subjectIndex-a02.xhtml" /> <link href="subjectIndex-a03.xhtml" /> </collection> <link href="subjectIndex-b.xhtml" /> <collection role="index-group"> <link href="subjectIndex-c01.xhtml" /> <link href="subjectIndex-c02.xhtml" /> <link href="subjectIndex-c03.xhtml" /> </collection> <link href="subjectIndex-d.xhtml" /> <link href="subjectIndex-e.xhtml" /> ... </collection> ... </package>
ナビゲーションドキュメント [ContentDocs301] は、すべてのインデックスを指すべきである(should)。landmarks nav 要素 [ContentDocs301] は、インデックスだけなく存在している任意のインデックスグループもリンクに包含するべきである(should)。
例 41、インデックスとインデックスグループのデータへのリンクを持つ landmarks
の要素:
<nav epub:type="landmarks"> <h2>Guide</h2> <ol> <li><a epub:type="toc" href="#toc">Table of Contents</a></li> <li><a epub:type="loi" href="content.xhtml#loi">List of Illustrations</a></li> <li><a epub:type="bodymatter" href="content.xhtml#bodymatter">Start of Content</a></li> <li><a epub:type="index" href="index.xhtml#idx1">Subject Index</a> <ol hidden=""> <li><a epub:type="index-group" href="index.xhtml#A">A</a></li> <li><a epub:type="index-group" href="index.xhtml#B">B</a></li> ... </ol> </li> <li><a epub:type="index" href="index.xhtml#idx2">Author Index</a></li> </ol> </nav>
実行可能な一般的な相互参照は、インデックス内に一般的な相互参照の対象とナビゲーションドキュメント [ContentDocs301] 内に関連する用語カテゴリを要求する。セクション 2.2.8 は、インデックスにおける一般的な相互参照の対象を作成する方法を説明する。このセクションは、ナビゲーションドキュメントに用語カテゴリの構造を作成する方法を説明する。
用語カテゴリを含んでいる nav
要素は、epub:type
属性に index-term-categories
を設定していなければならない(must)。
index-term-categories
インデックスの用語カテゴリに関連している用語のリストのためのラッパー
nav
で使用する
繰り返してもよい(may)
EPUB ナビゲーションドキュメント [ContentDocs301] にある index-term-categories
nav
要素は、すべての用語カテゴリの一覧を含み、各用語カテゴリは、そのカテゴリの一部の用語をすべて含む。各 a
は、インデックスドキュメント内の用語エントリを指す href
属性値を持つ。ナビゲーションドキュメント [ContentDocs301] は、epub:type
属性値 index-term-categories
を持つ複数の nav
要素を含んでもよい(may)(例えば、複数のインデックスを持つ出版物で、出版社は、各インデックスのために別々の index-term-categories
を持つことを望んでもよい(may))。
例 42、ナビゲーションドキュメント内でサポートされる用語カテゴリ:
<nav epub:type="index-term-categories" hidden=""> <!-- hidden attribute prevents term categories from being rendered in the content flow --> <ul> <li id="battles">battles <ol> <!-- a's pointing to all terms in this term category --> <li><a href="index.xhtml#chan">Chancellorsville</a></li> <li><a href="index.xhtml#man1">First Manassas</a></li> <li><a href="index.xhtml#gett">Gettysburg</a></li> </ol> </li> ... <!-- more than one term category may be included --> <li id="generals">Confederate generals <ol> <li><a href="index.xhtml#grant">Grant, Ulysses S.</a></li> <li><a href="index.xhtml#lee">Lee, Robert E.</a></li> <li><a href="index.xhtml#pick">Pickett, George</a></li> </ol> </li> </ul>
index-term-categories
nav
要素は、典型的にコンテンツフローの一部としてユーザーに表示されることを意図していないので、それは典型的に hidden [ContentDocs301]
属性を持つべきである(should)。
この仕様に準拠している EPUB Publication [Publications301] は、以下の基準のすべてを満たさなければならない(must):
[Publications301] で定義されている妥当な EPUB 出版物でなければならない(must) |
パッケージドキュメント [Publications301] [MediaOverlays30] は、この仕様のセクション 2.3 に準拠しているメタデータを含まなければならない(must)。 |
ナビゲーションドキュメント [ContentDocs301] [ContentDocs30] は、この仕様のセクション 2.4 に詳しく述べられている追加の必要要件に適合するべきである(should)。 |
epub:type 属性に、この仕様のセクション 2.2.1 に準拠しているコンテンツモデルであるところの index の値を持っている少なくともひとつの要素を持つ少なくともひとつのコンテンツドキュメントを含まなければならない(must)。 |
この仕様は、EPUB 3.0.1 によって要求される(required)以外の追加のリーディングシステムの適合性基準はない。
EPUB Indexes specification に適合している XHTML コンテンツドキュメントの追加スキーマは、http://www.idpf.org/epub/idx/schema/epub-idx-10.sch で入手可能である。
この付録は有益な情報である。
この仕様に適合した最も簡易なインデックスの例を以下に示す。
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xml:lang="en-US" lang="en-US"> <head> <meta charset="UTF-8"/> <title>Simplest Index</title> </head> <body epub:type="index"> <h2>Simplest index</h2> <ul epub:type="index-entry-list"> <!-- epub:type index-entry is implied for all li's, due to ancestor with epub:type of index-entry-list --> <li><span epub:type="index-term">abbreviations</span>, <a epub:type="index-locator" href="...">52</a></li> <li><span epub:type="index-term">accents</span>, <a epub:type="index-locator" href="...">20</a></li> <li><span epub:type="index-term">blogs</span>, <a epub:type="index-locator" href="...">98</a></li> <li><span epub:type="index-term">cold calling</span>, <a epub:type="index-locator" href="...">68</a></li> <li><span epub:type="index-term">Facebook</span>, <a epub:type="index-locator" href="...">viii</a>, <a epub:type="index-locator" href="...">96</a></li> <li><span epub:type="index-term">inversion</span>, <a epub:type="index-locator" href="...">53</a></li> <li><span epub:type="index-term">Twitter</span>, <a epub:type="index-locator" href="...">37-42</a></li> </ul> </body> </html>
サブエントリ、相互参照、用語カテゴリなどを含んでいるより完全なインデックスの例は、ここで入手できる。
関連するサンプルのナビゲーションドキュメントは、ここで入手可能である。2.4.2. 用語カテゴリのサポートで述べたように、item-categories
nav
要素は、実行可能な一般的な相互参照の対象を実演するために非表示にしていない。
その他の例は、付録 E のこの仕様のインデックスもまた参照されたい。
2.2.9 句読点とリードインワードで述べられている通り、句読点とリードインの単語は、インデックスのコードから省略し、:before
擬似要素を使用して [CSS2.1] スタイルシートを介して挿入できる。これは一貫性を確保し、インデックスドキュメントのサイズを減少させる。
この付録は有益な情報である。
実行可能なリンクの有無に関わらず最終章として位置づけられている基本的なインデックスの機能は、すでにいくつかの EPUB 出版物で提供されている。この仕様は、新しい特徴と機能を可能にし、そのいくつかは以下の章で説明している。リーディングシステムのメーカーや開発者が、これらと他の新しい可能性を活用することを期待している。
3.2 リーディングシステムの適合性に述べられている通り、この仕様に従ってエンコードされるインデックスは、最小限の機能――すなわち、それは目次からのアクセスと直線的な方法でページ付けすることができるために、EPUB 3.0.1 で定義されているものと同様のリーディングシステムの適合性基準を持つ。
しかし、インデックスの独自の性質とそれらが持つユーザーとの対話の方法のために、この仕様によって可能な機能の最小のセットを以下に表示する。
リーディングシステムは、
トップに移動することなくインデックス内のどこからでも、もし存在するなら、任意のレジェンドの表示を、
トップに移動することなくインデックス内のどこからでも、もし存在するなら、ヘッドノートの表示を、
ナビゲーションドキュメントや目次(例えば、ユーザーがそのグループに移動するために文字をクリックできるように、持続的なフローティング・アルファベットバーを表示することにより)に戻ることなく特定のインデックスグループに容易に移動するのを、
ナビゲーションドキュメントや目次(例えば、テキスト内からインデックスにワンクリックでアクセスするのを可能にしたり、またはその両方が同時にアクセスできるようにテキストとは別のウィンドウにインデックスを表示することにより)に戻ることなくインデックスに移動するのを、
すなわち、出版物の本文のみ、インデックスのみもしくは両方を検索からインデックスの包含または除外するのを、
上にスクロールすることなく、主なエントリ用語まで、現状当てはまる先祖の用語を表示したりアクセスすることを(C.9 改善されたインデックスナビゲーションを見よ)、
ユーザーが望むように許可する。
パッケージドキュメントは、ひとつ以上のインデックスが EPUB 出版物に存在するとき識別し、インデックスが XHTML ファイルの一部なのか単一の XHTML ファイルなのか複数の XHTML ファイルから構成されているのかに関する情報を提供する。(2.3 (パッケージドキュメント内の)インデックスの識別を見よ)。この情報は、ユーザーが EPUB と相互作用して、どのインデックスを含むべきかについて、ユーザーに選択を提示することをリーディングシステムに許可する。例えば、リーディングシステムは、ユーザーにコンテンツドキュメントとして直接インデックスを閲覧したり、基本的な検索(つまり、テキストのみの検索やインデックスを加えたテキスト検索、インデックスのみの検索、すべてのインデックスの検索など)からインデックスを包含したり除外することを許可する。
目次とは違い、インデックスは、しばしばテキストと結合して“行きつ戻りつ”方式で使用される。つまり、ユーザーはしばしばテキストからインデックスへ移動し、すべての関連情報を探すために再び戻るリーディングシステムは、テキスト内で単語をハイライトにするかそれとも検索を実施し検索用語を入力することによって、テキスト内でこれらの場所を失うことなく、インデックス内の場所へユーザーが直行できるように、ユーザーをサポートできる。
例えば、ユーザーは、テキスト内の単語や語句を選択し、そのとき一致するすべてのインデックスエントリの表示を引き起こすことができ、それから、ユーザーは、インデックスに切り替える用語のひとつをクリックし、テキスト内の他の場所に運ばれるロケータをクリックするか、ディスプレイを閉じて、テキスト内の元の場所に戻るかを選択できる。(“戻る”ボタンを持つリーディングシステムは、すでにこの機能をいくらか提供している。)
リーディングシステムは、ユーザーが検索ボックスを開き、検索語句を入力して、任意の一致するインデックスエントリの表示をもたらすことも許可する。インデックスから見つかったデータは、用語集のような本の本文と他の部分から単独または検索結果と一緒に表示することができる。これは、ユーザーが、一度で最も適したコンテンツを選択することを可能にするワンストップショップを提供するであろう。
リーディングシステムは、テキストの選択した範囲に関連するすべてのインデックスエントリを検索するために、逆方向にインデックス内のロケータとテキスト内のこれらのターゲットをリンクして横断することができる。したがって、例えば、ユーザーは、彼らに関連しているテキストを含んでいるトピックをの範囲を選択し、選択したセグメントのどこかを示すロケータが含まれているすべてインデックスエントリを表示を引き起こすことができる。
リーディングシステムは、便利なさまざまな方法を利用し、実装できる:
リーディングシステムは、インデックスにユーザーに導き、関連用語のみ表示するためにそれをフィルターする
リーディングシステムは、ポップアップウィンドウに関連するインデックス用語を表示し、ユーザーは望む用語を選択し、リーディングシステムは、インデックス内の用語にユーザーを導く
リーディングシステムは、ポップアップウィンドウに関連用語とこれらすべてに関連するロケータを表示し、ユーザーは望むロケータを選択し、リーディングシステムはテキスト内のターゲットにユーザーを導く
リーディングシステム開発者は、疑いなく、他の可能性の考慮をするであろう。
リーディングシステムは、2.2.5 ロケータの範囲で説明したように始点と終点が識別されるとき、ユーザーが、ロケータの範囲をクリックするとき、リーディングシステムは、テキスト内のターゲットにユーザーを導き、特定の範囲をハイライトすることができるように、ロケータの範囲を有効に使うことができる。この明瞭な指示は、ユーザーが素早く関連する文章を特定し、どこから読み初め、どこで読むのを止めるのかを知る手助けする。
2.2.6 ロケータの対象の構造的セマンティクスで簡単に述べたとおり、ロケータの対象の性質に関する情報は、ユーザーがこれら特定の要求に応じてインデックスをフィルタリングすることを許可しているリーディングシステムによって利用できる。例えば、ユーザーは用語や表また図、幾つかの他の構成部品と関連するロケータのみを表示するために、インデックスをフィルタリングすることができる。従って、画像のみを見たいと望むユーザーは、テキストを指している多数のロケータを閲覧することはないであろう。
複数のインデックスは、しばしば非常に複雑なまたは非常に長い書籍で使用される。例えば、第二次世界大戦の歴史は、主題のインデックスや戦闘のインデックス、名前のインデックスを包含するかもしれない。望ましい用語を見つけるために複数のインデックスを行き来しての選択をユーザーに要求することは、恐らく時間と労力の浪費する。用語カテゴリによってフィルタリングされる単一のインデックスはこれらすべてを表示することは、ユーザーエクスペリエンスを簡素化するであろう。
コンテンツドキュメントのサブセットのみを表示/レンダリングするこの機能は、インデックスだけでなく、電子書籍の一般的な関心事である。現時点での最小解決方法は、構造的セマンティクス情報(2.2.6)に関連する代替スタイルシート [CSS2.1] を使用することである:
<!-- a persistent style sheet --> <link rel="stylesheet" href="default.css"> <!-- some alternate style sheets --> <link rel="alternate stylesheet" href="figures.css" title="Show only figure entries/locators" class="figures"/> <link rel="alternate stylesheet" href="tables.css" title="Show only table entries/locators" class="tables"/>
より高機能なリーディングシステムと拡張されたエンコードオプションは、最終的に代替スタイルシートの必要性を削除し、インデックスエントリ自体のメタデータに基づき“オンザフライ”でフィルタリングできることが望まれる。例えば、多くの技術書は、テキストに出現する順にすべての図の一覧を、本の最初に図のリストを包含する。リーディングシステムが epub:type
値によってフィルタリングする能力を組み込んでいるとき、インデックスは、トピックによって分類された図のリストを生成するために、図を指すロケータを持つ用語のみ表示するためにフィルタリングできる。巨大なインデックスの望まれたサブセットのみを表示する能力は、印刷本/インデックスの環境では不可能な機能であり、潜在的にユーザーに有益である。
2.2.6 ロケータの対象の構造的セマンティクスで簡単に述べたとおり、リーディングシステムは、ロケータリンクを横断するときに見つける“物”の形式に関する情報をエンドユーザーに与えるために、ロケータの対象の性質に関する情報の存在を有効に使用することができる。例えば、ユーザが、図を指すために適切にエンコードされた(<a epub:type="index-locator figure">
)ロケータの上をウロウロしたり他の場所をフォーカスしたとき、“ツールチップ”スタイルのポップアップは、ユーザーにこれを知らせるために、合図(例えば、単語“fig”や“table”または文字“f”または“t”)を表示することができる。
リーディングシステムは、ユーザーがロケータの上をウロウロしたり他の場所をフォーカスするとき、プレビューの種類として、ターゲットのどちらか一方の側(または、ターゲットが範囲のとき、範囲のどちらか一方の側)にコンテンツの一部を含んでいるツールチップスタイルのポップアップで表示するためにロケータからテキスト内のそのターゲットとの間のリンクを有効に使用することができる。これは、ユーザーが、ターゲットがその場所に表示されるコンテクストを認識することを可能に、リンクを横断するかどうかを選択をする。(明らかに、テキスト内アンカーの配置の精度が高いほど、この機能の有用性は高い。)ユーザーはそれに慣れているので、多くの検索エンジンは、すでに検索結果のこれらの表示するこの機能を提供している。
セクション 2.2.8 用語カテゴリと一般的な相互参照の対象は、ターゲットとして用語カテゴリの使用を可能にする定義済みリストの使用について説明している。この解決方法は、すぐに実現可能ではあるものの、最終目標に到達するためにユーザーは数回のクリックが必要である。
リーディングシステムは、ユーザーが、インデックス内の元の相互参照とカテゴリ内の用語のリストの両方を見て、望んだ用語の選択ができるようにすることで、ポップアップウィンドウや分割フレームに用語カテゴリを表示することでこの問題を軽減するであろう。
C.6 インデックスのフィルタリングと同様に、より洗練されたリーディングシステムと拡張エンコードオプションは、静的な定義済みの用語カテゴリ一覧の必要性が廃止されることを期待している。例えば、EPUBの将来のバージョンは、実在のインデックス用語(<span epub:type="index-term" category="battle">Gettysburg</span>
のようなもの)にカテゴリ情報を埋め込むことを許可するかもしれないし、将来のリーディングシステムは、特定カテゴリのすべての用語の一覧をユーザーのために動的な配置と表示に使用することができる。
リーディングシステムは、ユーザーが、メインエントリまたはエントリのエントリグループの展開と折りたたみを許可するために、適切な epub:type
値を持つ適切な要素内のメインエントリと子エントリの入れ子になったラッピングを有効に使うことができる。例えば、標準のインデックスの表現は、メインエントリのみ表示でき、それから、ユーザーが調査中の望むメインエントリを発見したとき、彼らはロケータと/またはサブエントリを表示するために展開することができる。リーディングシステムは、インデックスまたはインデックスグループ内のすべてのサブエントリを素早く表示または非表示するために“展開”または“折りたたみ”もまた提供することができる。インデックスの下にまとめるこの能力は、ユーザーが、より素早くメインエントリの用語を通じて閲覧することを可能にする。
入れ子になったラッピングは、ユーザーがインデックスを通じて下にスクロールし、画面の上部に表現された“パンくず”足あとを表示するためにも利用でき、メインエントリの上に位置する現在利用可能なすべての親エントリを示す。これは、ユーザーが常にエントリの完全な階層構造にアクセスできることを確保する。
リーディングシステムは、ユーザーが、ドキュメントの先頭にスクロールして戻ること強いられることなく、インデックスの任意の位置からこの情報にアクセスするのを可能にするヘッドノートやレジェンドのための epub:type
値の存在を有効に利用できる。
リーディングシステムは、ユーザーに、手動で全インデックスをスクロールすることを強いるよりはむしろ、インデックスのグループナビゲーションを可能にする epub:type
値 index-group
の存在を有効に利用できる。例えば、リーディングシステムは、ユーザーが特定の文字をクリックし、そのグループに直接行くことができるように、水平のアルファベットバーを表示できる。
以下の epub:type
値は、この仕様書で定義されている。
この仕様書へのインデックスは作成済みで、Web でシミュレーションされた用語カテゴリを含んでいる。
同じインデックスのコンテンツは、この仕様に従って、EPUB3出版物のためにタグ付けされたものも利用可能で、他の例の代わりとしてもよい(may)。インデックスに関連するナビゲーションドキュメントとパッケージドキュメントから関連した構造もまた利用可能である。
この付録は有益な情報である。
EPUB は、出版社、ベンダー、ソフトウェア開発者、および関連する標準規格の専門家を集め、協力的な努力で国際電子出版フォーラム(International Digital Publishing Forum, IDPF) によって開発されました。
EPUB 3 Indexes Specification 1.0 は以下に述べるリーダーシップにより2011年12月のメンバーシップによって承認された憲章の元で動作し、国際電子出版フォーラム(International Digital Publishing Forum, IDPF)の Indexes Working Group によって調整した:
出版された時点でのワーキンググループのアクティブメンバー:
> IDPF Members
> Invited Experts/Observers
[CSS2.1] Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification. 7 June 2011.
[ContentDocs30] EPUB Content Documents 3.0 .
[ContentDocs301] EPUB Content Documents 3.0.1.
[DCMIType] DCMI Type Vocabulary. DCMI Usage Board, 11 October 2010.
[MediaOverlays30] EPUB Media Overlays 3.0 .
[Publications301] EPUB Publications 3.0.1.
[RFC2119] Key words for use in RFCs to Indicate Requirement Levels (RFC 2119) . March 1997.
[RFC3987] Internationalized Resource Identifiers (IRIs) (RFC 3987) . January 2005.
[StructureVocab] EPUB 3 Structural Semantics Vocabulary.
[DocBook] DocBook Specifications.
[NISOTR02] NISO Technical Report 2: Guidelines for Indexes and Related Information Retrieval Devices.
[TEI] TEI: P5 Guidelines.