公開日: 2010/04/28 (April 28, 2010) 翻訳者: 佐藤直樹 (http://naoki.sato.name/) その他の関連文書日本語訳 (翻訳者: ろす さん) |
無断複写・転載を禁止する。本書は合衆国法典第17編の下に保護されている。 International Digital Publishing Forum の書面による許可を得た場合を除き、内容の変化を伴う複製と再頒布を禁止する。
目次 ............................................................................................................................ ii
1 概説 ...................................................................................................................... 1
1.4.1 コンテナの適合性 ................................................................................. 4
1.4.2 リーディングシステムの適合性 ......................................................... 4
2 OCFの概要 ........................................................................................................... 5
2.3.2 一つのコンテナが複数の表示形式を持つ場合 .................................. 7
3 OCFコンテナコンテンツ .................................................................................... 8
3.5.1 コンテナ – META-INF/container.xml (必須) ..................................... 11
3.5.2 マニフェスト – META-INF/manifest.xml (オプション) .................. .13
3.5.3 メタ情報 – META-INF/metadata.xml (オプション) ......................... 13
3.5.4 デジタル署名 – META-INF/signatures.xml (オプション) ............... 13
3.5.5 暗号化 – META-INF/encryption.xml (オプション) ........................... 15
3.5.6 著作権管理 – META-INF/rights.xml (オプション) ............................ 16
4 ZIPコンテナ.......................................................................................................... 17
附録 A: RELAX NG OCFスキーマ.......................................................................... 19
附録 B: 例.................................................................................................................... 20
OCFコンテナ [OCF CONTAINER]
本仕様書にて定義する形式に従うコンテナファイル。
OCF
本仕様書にて定義されるOEBPS Container Format。
コンテンツプロバイダ [CONTENT PROVIDER]
出版社、著者、個人およびその他情報の供給者で、本仕様書にて示されたOCFを利用して出版物を配布元、販売元、あるいは直接一つ以上のOCFリーディングシステムに提供する者を指す。
ODF
Open Document Format (http://www.oasis-open.org/committees/download.php/12572/OpenDocument-v1.0-os.pdf)。
OEBPS
Open eBook Publication Structure (http://www.idpf.org/oebps/oebps1.2/index.htm)。
OEBPSドキュメント [OEBPS DOCUMENT]
OEBPS 1.2の仕様に従うXMLマークアップドキュメント。一般的にはOEBPS出版物のテキストコンテンツを含む。
OEBPSパッケージ [OEBPS PACKAGE]
OEBPS出版物 [OEBPS PUBLICATION]
OCFリーディングシステム [OCF READING SYSTEM]
MIME
RFC
字義では「Request For Comments」の意であるが、一般的にはInternet Engineering Task Force (IETF)により出版されたドキュメントを指す。 http://www.ietf.org/rfc.html 参照。
RELAX NG
XMLのスキーマ言語 (http://www.relaxng.org/)。
ルートファイル [ROOTFILE]
XML
ZIP
業界のデファクトスタンダードであるバンドルおよび圧縮形式 (http://www.pkware.com/business_and_developers/developer/appnote)。
他の仕様との関係
本仕様では他の仕様のサブセットおよびアプリケーションが組み合わされている。これらは互いに、電子文書の構築、編成、表示および明確な変換を容易にしている。
OEBPS 1.2出版物:
Great Expectations.opf
cover.html
chapters/
chapter01.html
chapter02.html
... 各章のHTMLファイル ...
抽象コンテナ:
META-INF/
container.xml
[manifest.xml]
[metadata.xml]
[signatures.xml]
[encryption.xml]
[rights.xml]
OEBPS/
Great Expectations.opf
cover.html
chapters/
chapter01.html
chapter02.html
... 各章のHTMLファイル ...
ファイルシステムコンテナ:
...ファイルシステム内のディレクトリ.../
META-INF/
container.xml
[manifest.xml]
[metadata.xml]
[signatures.xml]
[encryption.xml]
[rights.xml]
OEBPS/
Great Expectations.opf
cover.html
chapters/
chapter01.html
chapter02.html
... 各章のHTMLファイル ...
ZIPコンテナ:
mimetype
META-INF/
container.xml
[manifest.xml]
[metadata.xml]
[signatures.xml]
[encryption.xml]
[rights.xml]
OEBPS/
Great Expectations.opf
cover.html
chapters/
chapter01.html
chapter02.html
... 各章のHTMLファイル ...
抽象コンテナ:
META-INF/
container.xml – 注: 複数の <rootfile> 要素を持つ
[manifest.xml]
[metadata.xml]
[signatures.xml]
[encryption.xml]
[rights.xml]
OEBPS/
Great Expectations.opf
cover.html
chapters/
chapter01.html
chapter02.html
... 各章のHTMLファイル ...
PDF/
Great Expectations.pdf
<img src="image1.jpg" alt="…" …/>
<?xml version="1.0"?>
<container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OEBPS/Great Expectations.opf"
media-type="application/oebps-package+xml" />
</rootfiles>
</container>
(以下、規定。)
(例: 参考情報。)
(例: 参考情報。)
(例: 参考情報。)
<?xml version="1.0"?>
<container version="1.0"
xmlns="urn:oasis:names:tc:opendocument:xmlns:container"
foo:xmlns="..."
foozle:xmlns="..." />
<foo:bar />
<rootfiles foozle:identifier="bar"]]>
...
</rootfiles>
</container>
(例: 参考情報。)
mimetype
META-INF/container.xml
META-INF/manifest.xml
META-INF/metadata.xml
META-INF/signatures.xml
META-INF/encryption.xml
META-INF/rights.xml
OEBPS rootfile (OEBPSパッケージファイル)
(例: 参考情報。)
The mimetype file:
The META-INF/container.xml file:
<?xml version="1.0"?>
<container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OEBPS/As You Like It.opf"
media-type="application/oebps-package+xml" />
<rootfile full-path="OEBPS/As You Like It.pdf"
media-type="application/pdf" />
</rootfiles>
</container>
The META-INF/signatures.xml file:
<?xml version="1.0"?>
<signatures xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<Signature Id="AsYouLikeItSignature" xmlns="http://www.w3.org/2000/09/xmldsig#">
<!-- SignedInfo is the information that is actually signed. In this case -->
<!-- the SHA1 algorithm is used to sign the canonical form of the XML -->
<!-- documents enumerated in the Object element below -->
<SignedInfo>
<CanonicalizationMethod
Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/>
<Reference URI="#AsYouLikeIt">
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue>
</Reference>
</SignedInfo>
<!-- The signed value of the digest above using the DSA algorithm -->
<SignatureValue>MC0CFFrVLtRlk=...</SignatureValue>
<!-- The key to use to validate the signature -->
<KeyInfo>
<KeyValue>
<DSAKeyValue>
<P>...</P><Q>...</Q><G>...</G><Y>...</Y>
</DSAKeyValue>
</KeyValue>
</KeyInfo>
<!-- The list documents to sign. Note that the canonical form of XML -->
<!-- documents is signed while the binary form of the other documents -->
<!-- is used -->
<Object>
<Manifest Id="AsYouLikeIt">
<Reference URI="OEBPS/As You Like It.opf">
<Transforms>
<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
</Transforms>
</Reference>
<Reference URI="OEBPS/book.html">
<Transforms>
<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
</Transforms>
</Reference>
<Reference URI="OEBPS/images/cover.png" />
<Reference URI="PDF/As You Like It.pdf" />
</Manifest>
</Object>
</Signature>
</signatures>
The META-INF/encryption.xml file:
<?xml version="1.0"?>
<encryption
xmlns="urn:oasis:names:tc:opendocument:xmlns:container"
xmlns:enc="http://www.w3.org/2001/04/xmlenc#"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<-- The RSA encrypted AES-128 symmetric key used to encrypt the data -->
<enc:EncryptedKey Id="EK”>
<enc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5"/>
<ds:KeyInfo>
<ds:KeyName>John Smith</ds:KeyName>
</ds:KeyInfo>
<enc:CipherData>
<enc:CipherValue>xyzabc...</enc:CipherValue>
</enc:CipherData>
</enc:EncryptedKey>
<!-- Each EncryptedData block identifies a single document that has been -->
<!-- encrypted using the AES-128 algorithm. The data remains stored in it’s -->
<!-- encrypted form in the original file within the container. -->
<enc:EncryptedData Id="ED1">
<enc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#kw-aes128"/>
<ds:KeyInfo>
<ds:RetrievalMethod URI="#EK"
Type="http://www.w3.org/2001/04/xmlenc#EncryptedKey"/>
</ds:KeyInfo>
<enc:CipherData>
<enc:CipherReference URI="OEBPS/book.html"/>
</enc:CipherData>
</enc:EncryptedData>
<enc:EncryptedData Id="ED2">
<enc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#kw-aes128"/>
<ds:KeyInfo>
<ds:RetrievalMethod URI="#EK"
Type="http://www.w3.org/2001/04/xmlenc#EncryptedKey"/>
</ds:KeyInfo>
<enc:CipherData>
<enc:CipherReference URI="OEBPS/images/cover.png"/>
</enc:CipherData>
</enc:EncryptedData>
<enc:EncryptedData Id="ED3">
<enc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#kw-aes128"/>
<enc:KeyInfo>
<enc:RetrievalMethod URI="#EK"
Type="http://www.w3.org/2001/04/xmlenc#EncryptedKey"/>
</enc:KeyInfo>
<enc:CipherData>
<enc:CipherReference URI="PDF/As You Like It.pdf"/>
</enc:CipherData>
</enc:EncryptedData>
</encryption>
The OEBPS/As You Like It.opf file:
<?xml version="1.0"?>
<!DOCTYPE package PUBLIC "+//ISBN 0-9673008-1-9//DTD OEB 1.2 Package//EN"
"http://openebook.org/dtds/oeb-1.2/oebpkg12.dtd">
<package unique-identifier="Package-ID">
<metadata>
<dc-metadata xmlns:dc="http://purl.org/dc/elements/1.0"
xmlns:oebpackage="http://openebook.org/namespaces/oeb-package/1.0">
<dc:Identifier id="Package-ID">ebook:guid-6B2DF0030656ED9D8</dc:Identifier>
<dc:Title>As You Like It</dc:Title>
<dc:Creator role="aut">William Shakespeare</dc:Creator>
<dc:Identifier>0-7410-1455-6</dc:Identifier>
<dc:Subject></dc:Subject>
<dc:Type></dc:Type>
<dc:Date event="publication">3/24/2000</dc:Date>
<dc:Date event="copyright">1/1/9999</dc:Date>
<dc:Identifier scheme="ISBN">0-7410-1455-6</dc:Identifier>
<dc:Publisher>Project Gutenberg</dc:Publisher>
<dc:Language></dc:Language>
</dc-metadata>
</metadata>
<manifest>
<item id="4915" href="book.html" media-type="text/x-oeb1-document"/>
<item id="7184" href="images/cover.png" media-type="image/png" />
</manifest>
<spine>
<itemref idref="4915"/>
</spine>
</package>
The OEBPS/book.html file:
<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC
"+//ISBN 0-9673008-1-9//DTD OEB 1.2 Document//EN"
"http://openebook.org/dtds/oeb-1.2/oebdoc12.dtd">
<html>
<head>
...
</head>
<body>
...
<img src="images/cover.png" alt="Cover image: a picture of the Bard of Avon" />
...
</body>
</html>
The OEBPS/images/cover.png file:
cover.pngを暗号化したバイナリファイルとなる。
The OEBPS/As You Like It.pdf file:
本仕様書は出版社、リーディングシステムのベンダー、ソフトウェア開発者、関連する標準規格の専門家たちの協力によって生み出された。
Kelley L. Allen (Random House)
Angel Ancin (iRex Technologies)
Ryan Bandy (Random House)
Richard Bellaver (Ball State University)
Nick Bogaty (IDPF) - Working Group Secretary
Thierry Brethes (Mobipocket)
Janice Carter (Benetech/Bookshare.org)
Richard Cohn (Adobe Systems Inc.)
Garth Conboy (eBook Technologies) - Working Group Co-Chair
Jon Ferraiolo (IBM) - Working Group Vice-Chair
Neil De Young (Hachette Book Group USA)
Linh N. Do (Random House, Inc.)
Geoff Freed (WGBH)
Liang Gang (TriWorks Asia)
Peter Ghali (Motricity, ereader.com)
Markku T. Hakkinen (DAISY Consortium)
Gillian Harrison (NetLibrary)
Jonathan Hevenstone (Publishing Dimensions)
Theresa Horner (HarperCollins)
Karen Iannone (Houghton Mifflin)
Claire Israel (Simon & Schuster)
Mattias Karlsson (Dolphin Computer Access)
Bill Kasdorf (Apex Publishing)
George Kerscher (DAISY Consortium)
Steve Kotrch (Simon & Schuster)
Bill McCoy (Adobe Systems, Inc.)
Bill McKenna (Follett)
Bonnie Melton (Houghton Mifflin College Division)
Jon Noring (OpenReader Consortium) - Invited Expert
Sayu Osayande (Motricity, ereader.com)
Lee Passey - Invited Export
Steve Potash (OverDrive)
John Rivlin (eBook Technologies) - Working Group Co-Chair
Tyler Ruse (Codemantra)
Mike Smith (Harlequin)
Kimi Sugeno (John Wiley & Sons)
Gary Varnell (Osoft.com)
Xin Wang, Ph.D. (ContentGuard, Inc.)
Andrew Weinstein (Lightning Source)
Tom Whitcomb (NetLibrary)
Andy Williams (Cambridge UniversityPress)
Eli Willner (Green Point Technology Services)