2014 Volume 57 Issue 9 Pages 618-628
EPUBは電子出版物の交換および配信フォーマットの標準である。今日,主要な電子書籍ストアのほとんどは,何らかの形でEPUBを利用している。EPUBの普及を支えた要因には,(1)Web標準をベースにしていること,(2)オープンでロイヤルティーフリーであること,(3)多様な読書環境に対応していること,があげられる。本稿ではEPUBの特徴,データ構造,表現力を紹介し,課題と近年の動向についても触れる。EPUBは電子出版にかかわるさまざまな要件を満たしており,今後も重要なフォーマットであり続ける可能性が高い。
米国の電子書籍の市場規模は2008年から2011年にかけて急速な成長を遂げ,現在も拡大を続けている。この分野の代表的なサービスには,2007年末に開始したAmazonのKindleをあげることができる。Kindleの利用者は購入した本をクラウド上からダウンロードして,デスクトップ/ノート型コンピューター,タブレット端末,スマートフォンなど,さまざまな環境で楽しむことができる。AmazonのみならずSonyのReader StoreやAppleのiBooks Storeなど,同様のサービスの形態は電子書籍販売事業の主流となっており,日本においても2012年ごろから本格的なものになりつつある。このような市場の中で広く採用されているフォーマットがEPUBである。本稿ではEPUBの特徴とデータ構造について解説し,今後の課題と動向についても述べる。
EPUBは,電子出版物の交換と配信に用いられるフォーマットの標準である。このフォーマットは1999年にOpen eBook Publication Structure(OEBPS)1.01)として発表され,EPUB 2.0(2007年),EPUB 3.0(2011年)と2度のメジャーバージョンアップを経ている。本稿執筆時点での最新バージョンはEPUB 3.0.12)である。EPUBの仕様を管理するInternational Digital Publishing Forum(IDPF)は,電子出版の普及と促進を目的とした標準化団体で,出版社や印刷会社,ソフトウェア/ハードウェアベンダーなど300を超える企業や団体を会員に抱えている。
EPUBの用途である配信と交換について簡単に述べておく。交換とは,出版者と電子書店のように異なるシステムの間で,データをやり取りすることを指す。電子書店がEPUBのような共通のフォーマットに対応していれば,出版者は販売先の書店ごとに異なるデータを作成せずに済む。配信とは,データを読者の閲覧に供することを指す。EPUBの閲覧にはEPUBに対応したソフトウェアまたはハードウェアが必要となる。これらをリーディングシステム(Reading system)と呼ぶ。AmazonのKindleでは,出版者からデータを受け取る交換フォーマットとしてのみEPUBを利用し,配信には同社独自のフォーマットに変換したものを利用している。一方,前述したReader StoreやiBooks Storeなど多くの書店では,配信にもDRM注1)を施したEPUBを利用している。
EPUBの特徴には,(1)広く普及したWebの標準技術をベースにしていること,(2)オープンで利用料の発生しないロイヤルティーフリーなフォーマットであること,(3)多様な閲覧環境を前提にしたアクセシブルなフォーマットであること,の3点をあげることができる。これらの特徴について,順次述べる。
2.1 EPUBとWeb標準本の内容をデジタルデータで表現するには,どのような方法があるだろうか。紙面を画像データにしてしまうのも1つの方法であるし,PDFのように紙面を忠実に再現できるフォーマットもある。しかしEPUBが選択したのは,Webで使われるHTMLを用いて構造化された文書として表現する方法であった。レイアウトにCSS(Content Scrambling System)を利用する点もWebサイトと同様である。EPUBではほかにも,XMLやJavaScriptといったWebの世界で広く使われている技術を数多く取り入れている。これら一連の技術はWeb標準と呼ばれている。EPUBはWeb標準をベースにしたフォーマットなのである。
EPUBの制作にあたって,制作者は未知の新しい技術をゼロから学ぶ必要はない。HTMLやCSSは現代社会に広く浸透しており,学校の授業の中でも学ぶ機会がある。こうした知識はEPUBの制作にそのまま役立つため,学習コストを抑えることができる。また開発者にも恩恵がある。Webサイトの制作にかかわるさまざまなソフトウェアやライブラリ,閲覧用のブラウザエンジンなどは,EPUBの制作/閲覧ソフトウェアを利用することで開発コストを低減することができる。その中にはオープンソースのものも少なくない。
2.2 オープン性とロイヤルティーフリー古来より人類は文書や書物の保存に労力を費やしてきた。これはデジタルデータの世界でも例外ではない。長期保存はフォーマットにとって重要な課題である。HTMLとXMLの源流にあたるSGML注2)は,軍事技術を長期保存するためのオープンスタンダードな規格であった。特定の独占的なワープロソフトに依存した文書では生存が脅かされる危険があるため,SGMLはテキストとタグだけを使って文書を記述するマークアップ言語として考案されている。データの長期保存は技術上の安定性と,知的財産権による排他的な独占の回避を考慮しなければならない。
この点においても,EPUBがWeb標準をベースとしたのは必然的だったといえる。Web標準の多くを策定するW3C注3)は,その仕様のみならず策定の過程までも公開する形で運営されており,その技術については利用料を徴収しないロイヤルティーフリーを基本方針としているためである。W3Cの技術と同様に,IDPFもまたEPUBの仕様やその策定の過程を公開しており,利用料を徴収することはない。
2.3 多様な閲覧環境とアクセシビリティ現在,われわれはデスクトップ/ノート型コンピューター,タブレット端末,スマートフォンなど,それぞれに異なるスクリーンサイズをもった機器に囲まれて暮らしている。これらはいずれもWebやEPUBの閲覧環境となりうるが,スクリーンサイズが異なるため読みやすいレイアウトも変化するものである(図1)。
Webブラウザでは描画の際に,要素の大きさや位置を再計算する「リフロー(reflow)」と呼ばれる処理が行われるが,これは多様な環境での読書にも役立つ。一般的なEPUBのリーディングシステムでは,読者が自由に文字の大きさを変えることができる。そしてその都度リフローによって行の折り返し位置が変化し,最適な表示が得られるのである。このほかにもEPUBは,スクリーンリーダーや録音済み音声による読み上げなど,視覚によらない読書のサポートにも力を入れており,アクセシブルな読書の実現を目指している。
ここからはEPUBファイルの構造について解説する。EPUBはさまざまなファイルをzip圧縮したコンテナフォーマットであり,内部は図2のような構造をなす。
はじめに本の内容を印刷した紙面を思い浮かべてほしい。EPUBでこれに相当するものが,HTML文書であることはすでに述べた。この文書をEPUBの仕様では「コンテンツ文書(Content Document)」と呼ぶ。コンテンツ文書はXHTMLのシンタックス(構文規則)で記述したHTML5の文書である。拡張子には.xhtmlを使用することが推奨される。コンテンツ文書は,すべての内容を記述した単一ファイルとして作成するよりも,「章」などの内容区分ごとにそれぞれ作成するのが一般的である。コンテンツ文書の大まかなタグ構造を図3に示す。
なお,コンテンツ文書にはHTML文書の代わりにSVG文書注4)を利用してもよいが,対応しているリーディングシステムが少なく,本格的に利用されるには至っていない。
コンテンツ文書のレイアウトに用いるCSSファイルを「EPUBスタイルシート(EPUB Stylesheet)」と呼ぶ。EPUBスタイルシートが利用するCSSは,CSS2.1がベースラインとなっているが,CSS3に含まれるモジュールも一部含まれている。CSS3のモジュールの中でも,勧告に至らない不安定なプロパティには-epub-の接頭辞を加えて用いる。例としてCSS Writing Modes Module Level 33)のプロパティを利用して日本語の縦書きを指定したものを図4に示す。
EPUBでは,コンテンツ文書のほかに「ナビゲーション文書(Navigation Document)」と呼ばれるHTML5の文書が必要となる。ナビゲーション文書は,目次をはじめとするナビゲーションをもった,いわば特殊なコンテンツ文書で,他のコンテンツ文書へのハイパーリンクを含んでいる。読者はナビゲーションを,リーディングシステムが提供する専用のユーザーインターフェースを介して利用する(図5,図6)。ナビゲーション文書には目次ナビゲーションが必須である。ほかに図版やページ番号などに基づいたナビゲーションなどを加えてもよい。
ナビゲーションの記述には,HTML5のnav要素にepub:typeという属性を加えて表現する。epub:typeは,HTML5の要素を意味的に拡張するEPUB独自の属性であり,目次を意味するtocをはじめ,出版物を表現するためのさまざまな値が定義されている。目次を含んだナビゲーション文書の例を図7に示す。
メディアオーバーレイは,コンテンツ文書とオーディオを同期させて音声読み上げを実現する仕組みである。「メディアオーバーレイ文書(Media Overlay Document)」はコンテンツ文書の読み上げ位置とオーディオの再生位置をSMIL注5)のサブセットによって記述した文書となっている。
メディアオーバーレイ文書はEPUBの必須ファイルではないが,対応したリーディングシステムでは,再生/停止ボタンを操作したり,コンテンツ文書の任意の箇所に触れたりすることで読み上げ,読書をアクセシブルなものにできる(図8)。また読み上げ中の箇所をハイライトするなど,視覚的な読書の補助も可能である。
Webサイトと同様に,コンテンツ文書でもテキスト以外に画像をはじめとするさまざまなメディアを利用することができる。EPUBの中での利用が期待されるメディアは,仕様によって定義されており,これを「コアメディアタイプ(Core Media Type)」と呼ぶ。コアメディアタイプの一覧を表1に示す。
なお,コアメディアタイプには含まれていないが,EPUBではビデオを扱うこともできる。コアメディアタイプとならなかった理由は,ビデオを符号化するコーデック注6)のサポートがブラウザによって異なっており,策定の過程で意見を統一できなかったためである。ビデオコーデックについての仕様では,H.264またはVP8のサポートを推奨している。
メディアタイプ | 備考 |
---|---|
Image Types | |
image/gif | GIF画像 |
image/jpeg | JPEG画像 |
image/png | PNG画像 |
image/svg+xml | SVG画像 |
Application Types | |
application/xhtml+xml | XHTML(コンテンツ文書/ナビゲーション文書) |
application/x-dtbncx+xml | NCX(EPUB 2系の目次ファイル)注7) |
application/vnd.ms-opentype | OpenTypeフォント |
application/font-woff | WOFFフォント注8) |
application/smil+xml | SMIL(メディアオーバーレイ文書) |
application/pls+xml | PLS(TTS発音情報辞書)注9) |
Audio Types | |
audio/mpeg | MP3オーディオ |
audio/mp4 | AAC LCオーディオ + MP4コンテナ |
Text Types | |
text/css | CSS |
text/javascript | JavaScript |
「パッケージ文書(Package Document)」は,書誌情報やコンテンツの表示に関するメタデータを記述した必須ファイルである。3.1のコンテンツ文書は本の内容を記述したものであるが,パッケージ文書はその本自体の情報を記述したものと考えればよい。パッケージ文書はXMLで記述されており,拡張子は.opfである。
パッケージ文書はルート要素にあたるpackage要素の中に,それぞれ役割の異なる複数の子要素を含む。最初の子要素metadata(図9)は書誌情報を記述する箇所である。記述にはDCMES注10)を利用し,identifier,title,languageが必須となる。またDCTERMS注11)の更新日時を記述したmeta要素も含める。
続くmanifest要素(図10)は,本を構成するリソースの一覧である。これによってリーディングシステムは,必要なリソースがすべてそろっているか確認することができる。原則として,すべての構成ファイルをそれぞれitem子要素として記述する。リソースによっては,properties属性を加えてその特性を明示する必要がある。たとえば,ナビゲーション文書はプロパティにnavを指定しなければならない。
次のspine要素(図11)はリーディングシステムがコンテンツ文書を表示する順番を指定するものである。子要素itemrefに,コンテンツ文書のidを表示順に従って記述する。また本のページ進行方向を指定するには,spine要素のpage-progression-direction属性を利用する。たとえば,縦書きの本はrtl(right to left)を指定する。
package要素の子要素にはほかに,意味論に基づくナビゲーションを提供するguide,独自メディアのハンドラとなるbindings,リソースをグループ化するcollectionがあるが,いずれも必須要素ではない。
ここまでに述べた一式のファイル群を,配信用のシングルファイルにzip圧縮して,拡張子を.epubとしたものがEPUBファイルである。ただしこのzip圧縮は,仕様によって定められた「EPUBコンテナ(EPUB Container)」のフォーマットに準拠しなければならない。
まずコンテナのルートにはMETA-INFディレクトリが存在しなければならない。その中にはパッケージ文書の位置をリーディングシステムに伝えるcontainer.xmlが必要となる。また,コンテナのルートにはmimetypeファイルも必要だ。これはEPUBのメディアタイプapplication/epub+zipを記述したテキストファイルである。このファイルはzipファイルの先頭に無圧縮状態で配置しなければならない。これは専用ツールを利用するか,zipコマンドにオプションを指定するなどして行う。Windows系OSに標準搭載されているzipでは実現できないため注意が必要である。ほかにMETA-INFディレクトリには,電子署名用のsignatures.xml,暗号化用のencryption.xml,DRM用のrights.xmlなどのファイルが置かれることもある。
EPUBコンテナは,リーディングシステムがすみやかにEPUBファイルを処理するためのものである。リーディングシステムはファイルの先頭のmimetypeを読み込んで,そのファイルがEPUBだと判別し,次にcontainer.xmlにアクセスしてパッケージ文書の位置を知る。そしてパッケージ文書のメタデータに基づいて,読者に本の内容を提示するのである。
3.8 EPUBの仕様との関係ここまでEPUBのファイル構造について簡略に述べた。文中に登場する「仕様」とは,EPUB 3.0.1の仕様を指すが,実際には複数の仕様の集合となっている。それぞれの仕様の名称と対象について表2に示すので,参考にされたい。
仕様の名称 | 対象 |
---|---|
EPUB Content Documents 3.0.1 | コンテンツ文書, ナビゲーション文書, EPUBスタイルシート |
EPUB Publications 3.0.1 | パッケージ文書 |
EPUB Media Overlays 3.0.1 | メディアオーバーレイ文書 |
EPUB Open Container Format 3.0.1 | EPUBコンテナ |
現在流通しているEPUBは,バージョン番号によってEPUB 2とEPUB 3の2つの系統に分けられる。前者はEPUB 2.0(2007年)をベースとする系統,後者はEPUB 3.0(2011年)をベースとする系統である。本稿の扱うEPUB 3.0.1(2014年)はEPUB 3.0のバグ修正版という位置付けにある。
EPUB 2は米国の電子書籍市場の成長とともに普及し現在も広く使われている。しかし高い表現力をもつタブレット端末の登場,市場拡大による国際化の要望,アクセシビリティ向上の必要性などを背景として,IDPFではEPUB 3を開発することになった。EPUB 3が新しく取り入れた代表的な機能には,(1)国際化,(2)マルチメディア対応,(3)JavaScriptのサポート,(4)メディアオーバーレイ,(5)固定レイアウト,があげられる。
(1) 国際化EPUBの国際化においては,日本語の出版物の表現にとりわけ大きな向上がみられた。具体的には,ルビ,縦書き,縦中横,圏点,文字の正立・横転の指定,右綴じの指定が新たに取り入れられている。この国際化の過程と尽力については,村田真氏の「電子書籍フォーマットEPUBと日本語組版」4)に詳しく述べられている。
(2) マルチメディア対応コンテンツ文書をHTML5で記述するEPUB 3ではvideoやaudioタグが利用可能になった。つまりビデオやオーディオをページの中に埋め込むことができる。
(3) JavaScriptのサポートEPUB 2では禁止されていたJavaScriptであったがEPUB 3では利用が認められている。ただし制作者はJavaScriptが動作しない環境でも,読者が本の内容にアクセスできるように配慮しなければならない。
(4) メディアオーバーレイ3.4で既述したメディアオーバーレイもEPUB 3によって新しく追加された機能である。録音済みのオーディオを利用した読み上げは,音声合成エンジンを利用する場合に比べて制作に手間がかかるが,自然で正確なものになる。また朗読のように読み上げ自体が価値をもつコンテンツも表現できる。
(5) 固定レイアウト従来のEPUBは,リフローを利用した文字の読みやすさを長所としていた反面,複雑なレイアウトを表現するには適していなかった。しかし雑誌,絵本,マンガ,写真集などレイアウトを維持することが重要な出版物への対応を求める声は大きく,固定レイアウトの表現方法が仕様化された。固定レイアウトはコンテンツ文書とパッケージ文書にいくつかのメタデータを加えることで実現する。このほかにページを巻物状に表示する指定も可能である。
EPUB 3の先進的な機能を活用した出版物の事例として,柴咲コウのアーティストブック『Lyrical*World』注12)をあげることができる。固定レイアウトのEPUBとして作られたこの本には,インタビュー(図12)やムービークリップ,試聴可能なディスコグラフィー,読者が触れることで変化する写真集,物理演算によって演出される詩(図13)など,多彩なコンテンツが収録されている。
電子書籍市場における主流のフォーマットとなったEPUBであるが,課題も抱えている。代表的な課題を次に述べる。
(1) 仕様に関する課題EPUBに取り入れられた時点でのHTML5やCSS3のモジュールには,勧告前の段階のものが含まれている。これらに変更が生じた場合には,EPUBのバージョンを上げて追随しなければならない。次バージョンでは2014年10月に勧告となったHTML5への対応が含まれるはずである。EPUBがWeb標準をはじめとする多くの技術を取り入れて進化すればするほど,このような調整に費やすコストは大きくなっていくことだろう。
(2) 普及に関する課題EPUBは仕様策定の過程に実装テストフェーズを含まないため,仕様が完成しても制作ツールやリーディングシステムの実装が現れなければ使うことはできない。EPUB 3に対応した実装はいまだ途上の段階にある。制作ツールやリーディングシステムの不在は,制作ノウハウの不在にもつながっている。筆者の周囲にある制作会社ではEPUB 3の制作ツールを内製によって賄うところが少なくない。また不安定なリーディングシステムの実装に振り回されることもある。不具合が生じた場合にも,EPUBファイルの作り方に問題があるのか,リーディングシステム側に問題があるのか,正しく切り分けられる人間はまだそれほど多くは育っていない。
(3) 書誌情報に関する課題EPUBの内部に記述する書誌情報は十分に活用されているとは言い難い。書誌情報をどのような形式でどこまで詳細に記述すればよいのか,標準的な見解はなく,制作ツールの機能や出版者の方針によってまったく異なっているのが現状である。電子出版物を識別するための統一的な識別子の不在も,豊かな読書体験を実現する足かせになっている。Webサイトのパーマリンクに相当する識別子が電子出版物にもあれば,出版物同士をリンクさせたり,注記を共有したりすることが格段に容易になるのだが,実現には至っていない。識別子の問題はEPUBのみならず電子出版物が広く抱える問題である。
(4) DRMに関する課題EPUBによるフォーマットの標準化が,出版者や販売事業者に恩恵をもたらしたことはすでに述べた。読者もEPUBのリーディングシステムさえあれば,購入したあらゆる本を読めると期待するだろうが,これを阻むのがDRMである。DRMによって暗号化されたEPUBは,読者にとっては独自フォーマットと変わるところがない。またDRMには,(1)特許技術の固まりであり訴訟リスクを抱えかねない,(2)堅牢(けんろう)なDRMは高価である,(3)リーディングシステムに負担をかけ,読書体験やアクセシビリティを阻害する,といった問題点がある。一方で,図書館の貸し出しのようにDRMが重要な役割をもつ分野もある。IDPFでは過去に,軽量で安価なパスワードベースのDRMを開発して標準化する動きがあったが,今のところ目立った進展はみられない。
4.3 EPUBの近年の動向最後にEPUBをめぐる近年の動向についてかいつまんで述べる。
(1) 国際標準化EPUBの政府調達や教育機関での活用を促進すべく,2013年から国際規格化が進められている。規格化は,ISO/IEC JTC 1/SC 34が行っており,国際標準番号DTS-30135が付与されている。
(2) 索引,辞書,注記IDPFの策定中の規格としては,索引を扱うEPUB Indexes5),辞書や用語集を扱うEPUB Dictionaries and Glossaries6),注記を扱うOpen Annotation in EPUBがある。EPUB Indexesは勧告を控えた仕様が公開されており,EPUB Dictionaries and Glossariesも草稿が公開されている。Open Annotation in EPUBは2013年11月にワーキンググループが発足し,策定作業を行っている最中である。
(3) EDUPUB2013年からIDPFではW3CやIMS/GLC注13)といった標準化団体の協力を受けながら,教育分野におけるEPUB活用をテーマにした「EDUPUB」と呼ばれるワークショップを継続的に開催している。このワークショップについては,過去に田村恭久氏によるレポート「電子教科書の現状」7)がある。2014年に草稿が公開されたEPUB 3 EDUPUB Profile8)は教育分野に必要と考えられる拡張をEPUBに定義したもので,前述したOpen Annotation in EPUBのほかに,テストの実現,Widgetの利用,学習管理システムとの連携などが含まれている。
Webを介してさまざまな人や企業が情報をやり取りしながら,高度な社会を構成する現代である。このような社会の共通ルールとして,Web標準の重要性はかつてないほど高まっている。電子出版もまた出版者,販売事業者,ソフトウェアベンダー,読者といったさまざまなプレーヤーによって構成される世界であり,これらをつなぐ共通ルールが求められてきた。このことを踏まえると,EPUBがWeb標準をベースとしたのは正しい選択であったといえる。
表現力,長期保存性,相互運用性,可搬性,アクセシビリティ,セキュリティー,コストなど電子出版物のフォーマットに求められる要件は多岐にわたる。誰もが制約なく利用できる汎用的なフォーマットを目指すEPUBは,こうした要件に向き合いながら作り上げられてきた。課題や欠点を抱えながらもEPUBが市場のフォーマットの主流となりえたのは,それがさまざまな要件をもつプレーヤーの間の絶妙な落としどころとなっているからにほかならない。これらの要件をよりよく満たす方法が登場しない限り,EPUBは電子出版における重要なフォーマットであり続けるだろう。