Open Packaging Conventions

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索
Open Packaging Conventions
開発者 マイクロソフトEcmaISO/IEC
初版 2006年12月7日(10年前) (2006-12-07
最新版
ISO/IEC 29500-2:2012
(2012年8月22日(5年前) (2012-08-22)
種別 ファイルアーカイブデータ圧縮
包含物 電子文書
包含先 ZIP
派生元 XML, ZIP
国際標準 ECMA-376, ISO/IEC 29500
ウェブサイト ECMA-376,
ISO/IEC 29500-2:2012

 Open Packaging Conventions (OPC) はマイクロソフトによるファイル格納に関する技術で、XMLと非 XML ファイルをパッケージするための規格である。Open XML Paper Specification (OpenXPS) ドキュメントやOffice Open XML (OOXML) で採用されている。 OPC形式でファイルをパッケージ化する利点は、独立したファイルをそのままの形でドキュメントに添付でき、XMLをそのまま使用するより小さいファイルを生成できることである。

仕様[編集]

OPC 仕様はOffice Open XML標準(ISO/IEC 29500:2008 およびECMA-376)のPart 2に定義されている[1][2]

ISO/IEC 29500-2:2008規格とECMA-376の第2版以降では PKWARE社.のZIP ファイルフォーマット仕様 バージョン 6.2.0 (2004)を引用規格としており、追補として規範例が付属する。.注意: ECMA-376 の第1版では上記より新しいPKWareのZIPファイルフォーマット仕様 バージョン6.2.1 (2005)を参照している[1]。この版のZIPファイル形式は国際標準に定義されていないが、コミュニティと開発者間には広く普及している。

マイクロソフトが2006年に Internet Engineering Task Forceに提出したドラフトではOPC形式のパッケージへの参照として "pack" URI スキーム (pack://) を使用するよう記述していたが、このドラフトは 2009年に失効している。この記述方法は Internet Standard の URI スキーム(STD 66, RFC 3986)に適合しておらず[3]、このスキームは現在historicalと分類されている[4]

使い方[編集]

XML Paper Specification (XPS)[5]Office Open XML (OOXML) はともにZIPを利用したOpen Packaging Conventions (OPC) を使用している。XMLマークアップファイルのほかに、ZIPパッケージに含められるファイルには PNGBMPAVIPDFRTF のようなテキスト、バイナリファイルのほかに、すでにパッケージ化されたODFファイルを含むこともできる。OPC ではファイルの命名規則も定義しており、バイナリとXMLファイルがZIP書庫ファイル内の格納場所に依存しないよう間接参照方法も定義している。

OPCファイルは一般的なZIPユーティリティで開くことができる。OPC allow indirection, chunking and relative indirection.[6]

OPCを利用するファイルフォーマット[編集]

OPCは、多数の新しいファイルフォーマットの基盤技術となっている:[7]

ファイル形式 拡張子 内容 規格
オートデスク AutoCAD Design Web Format (DWFX) ファイルフォーマット[8] .dwfx CADデザインデータ (2D/3Dコンピュータグラフィックス および 製図).
回路図[9] .cddx 回路図 containing layout, connections and embedded components
Family.Show file format[10] .familyx 系譜学 : 家族データ、ストーリー、写真など
Microsoft Application Virtualization file format .appv ポータブルアプリケーション
Microsoft Semblio ファイルフォーマット .semblio インタラクティブ学習素材, such as e-books containing images, audio, and video
Microsoft Visual Studio 2010 機能拡張 ファイルフォーマット .vsix 統合開発環境 向け機能拡張
Microsoft Visio 2013 drawing file format .vsdx replaces .vsd (Visio binary file) and .vdx (Visio XML Drawing) formats used in earlier versions. [11]
Microsoft Windows 8, Windows 8.1 および Windows Phone 8.1 アプリケーションパッケージ [12] .appx マイクロソフトの Windows Store および Windows Phone Store で展示されるアプリのパッケージソフトウェア [13]
Microsoft Windows 8.1 および Windows Phone 8.1 アプリ バンドル[14] .appxbundle パッケージソフトウェア that bundles hardware platforms, languages, and resources for an application listed on Microsoft's Windows Store and Windows Phone Store.
Microsoft Windows Azure C# パッケージ .cspkg クラウドコンピューティング 向けデータ
Microsoft XML Paper Specification .xps fixed document for document exchange
NuGet パッケージ .nupkg パッケージ管理システム 向け パッケージソフトウェア
Office Open XML Document .docx ワードプロセッサ document ECMA-376, ISO/IEC 29500:2008
Office Open XML プレゼンテーション .pptx プレゼンテーション ECMA-376, ISO/IEC 29500:2008
Office Open XML ワークブック .xlsx 表計算ソフト ワークブック ECMA-376, ISO/IEC 29500:2008
Open XML Paper Specification .oxps fixed document for document exchange ECMA-388
Siemens PLM Software file format .jtx
MathWorks Simulink model file .slx Dynamic system specification for Model-based design
SMPTEメディアパッケージ .smpk Storage format for distribution and playback of multimedia video and audio files. SMPTE ST 2053-2011
SpaceClaim 3D ソリッドモデリングファイル [15] .scdoc Embedded 3D CAD data files include Standard ACIS Binary (SAB) solid model files

プログラミング[編集]

OPCは.NET Framework 3.0でネイティブにサポートされており、System.IO.Packaging ネームスペースで利用できる。他言語のためにオープンソースのライブラリが存在する。

Windows 7より、OPCはWindows APIとしてもサポートされるようになり、COMインタフェースを通じて利用できる。Packaging API という名称で参照できる。

別の方法として、ZIPライブラリを使ってOPCファイルを作成、開くことができる。この場合ZIP内に名称規約に従ったファイルが正しく格納されている必要がある。

パッケージ、パーツ、およびリレーションシップ[編集]

Container structure of Part 2 of the Ecma Office Open XML standard, ECMA-376

In OPC terminology, the term package corresponds to a ZIP archive and the term part corresponds to a file stored within the ZIP. Every part in a package has a unique URI-compliant part name along with a specified content-type expressed in the form of a MIME media type. A part's content-type explicitly defines the type of data stored in the part, and reduces duplication and ambiguity issues inherent with file extensions.

<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
  <Relationship Id="R0" Type="http://schemas.microsoft.com/xps/2005/06/fixedrepresentation" Target="/FixedDocumentSequence.fdseq"></Relationship>
  <Relationship Id="R1" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail" Target="/Documents/1/Metadata/Page1_Thumbnail.JPG"></Relationship>
</Relationships>

脚注[編集]

関連項目[編集]

  • OPC UA

外部リンク[編集]