Translation:Zip Container

From IDMLWiki

Jump to: navigation, search

1.5 Zipコンテナ

UCFのZipコンテナーはhttp://www.pkware.com/support/zip-application-noteの「application note」で指定されるようなZipフォーマットを(下記の範囲で)サポートします。

UCF Zipコンテナ適合では、「application note」中でZipファイルが多数の記憶メディアをまたいで保存する機能を使用してはなりません(MUST NOT)。UCFユーザエージェント適合では、Zipファイルが間違っているとして、記録メディアをまたいで分離していることを明示するすべてのUCFファイルを扱わなければなりません(MUST)。

UCF Zipコンテナコンテナ適合では、Zipアーカイブ内の無圧縮ファイルあるいはFlate圧縮したファイルを単に含んでいなければなりません(MUST)。UCFユーザエージェント適合では、エラー状態でFlateアルゴリズム以外の圧縮技術を使用するすべてのUCFコンテナを扱わなければなりません(MUST)。

UCF Zipコンテナコンテナ適合では、Zip64を使用してもよい(MAY)し、コンテンツが要求するならば、Zip64を使用するべきです(SHOULD)。 UCFユーザエージェント適合では、Zip64はサポートされなければなりません(MUST)。

UCF Zipコンテナコンテナ適合では、Zipフォーマットによって暗号化してはなりません(MUST NOT):代わりに、暗号化はセクション3.5.5に記述した仕様を使って行われなければなりません(MUST)。UCFユーザエージェント適合では、エラー状態でZip暗号化を使用する他のUCF Zipコンテナを扱わなければなりません(MUST)。

UCFユーザエージェント適合がUCF Zipコンテナからロードと保存処理までの情報を保存するのは、必要要件ではありません。それは、UCF抽象コンテナ中の対応する表現にマップしません。特にUCFユーザエージェント適合はCRC値、コメントフィールド、ファイルシステムに対応する特定のOS(例えば、「External file attributes」や「Extra field」)を保持していません。

UCF Zipコンテナコンテナ適合では、ファイルシステム名にUTF-8エンコーディングにしなければなりません(MUST)。

Zipアーカイブの特別フィールドに関していくつかの詳細を示します:

ローカルファイルヘッダーテーブルでは、UCF Zipコンテナ適合は必要な最大バージョンレベルに合わせるために「version needed to extract」フィールドの値を10、20、45に設定しなければなりません(MUST)。例えば、デフォルトで必要な値は20です。Zip64で必要な値は45です。UCFユーザーエージェント適合では、エラー状態でいかなる値も扱わなければなりません(MUST)。

ローカルファイルヘッダーテーブルでは、UCF Zipコンテナ適合は「compression」メソッドフィールドの値を0か8に設定しなければなりません(MUST)。UCFユーザーエージェント適合では、エラー状態でいかなる値も扱わなければなりません(MUST)。

UCFユーザーエージェント適合では、エラー状態でUCF Zipコンテナ適合の「Archive decryption header」または「Archive extra data record」を信頼しなければなりません(MUST)。

Zipコンテナの最初のファイルは、ZipのMIMEタイプを保持する「mimetype」の ASCII名でなければなりません (MUST)。つまり、「application/epub+zip」のようにゼロパティング、空白文字、大文字小文字の変化がない状態です。このファイルは無圧縮で暗号化もされない'状態でなければなりません(MUST)。また、Zipヘッダのエキストラフィールドが存在してはなりません(MUST NOT)。こうした状態であれば、Zipコンテナは RFC 2048 にあるとおり、便利で有効な「マジックナンバー」をサポートします。

ファイルの始めに、「PK」バイトがあるでしょう。

ポジション30には「mimetype」バイトがあるでしょう。

実際のMIMEの種類(すなわち「application/epub+zip」ASCII文字列)はポジション38から始まるでしょう。

Personal tools