2006/04/18XMP仕様の概要ライセンスまず、XMPの仕様書とツールキットは、アドビシステムズからオープン・ソースライセンスで提供されています。ライセンス文書によりますと、ツールキットについては誰でもソースコートを改良してアプリケーションに組み込んで再頒布できるとされています。概要XMPはXMLドキュメントです。ルート要素はxmpmeta(オプション)でその下位の唯一の要素としてrdf:RDFをもちます。(恐らく、xmpmetaは旧バージョンとの互換性のために残されているもので、最新版では、rdf:RDFがルート要素として取り扱われると思います)。rdfの名前空間宣言は、xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'です。Framework)を利用しています。rdf:RDFの子供の要素としてrdf:Descriptionを複数記述できます。このrdf:Description毎にひとつのメタデータ・スキーマを利用して、リソースの属性を記述することができます。現在のXMPの仕様書では、メタデータ・スキーマとして、次のものが定義されています。Schemasこれ以外にも、独自の新しいスキーマを定義したり、既存のスキーマを拡張することができます。XMP仕様書(72ページ)に載っている記述例をひとつ紹介しておきます。EXIFリソースのXMPによる記述例EXIFはデジタルカメラで使用するイメージファイルの標準です。上の例はEXIFで作成されたリソースの特性について、TIFFのスキーマによる属性、EXIFのスキーマによる属性のふたとおりで記述されていることが分かります。XMPのリソースへの埋め込みXMPの仕様書では、さらに、(2)メタデータをリソースに埋め込むための仕様、および、(3)ファイルのフォーマットについて知らないアプリケーションが、ファイルをスキャンしてメタデータを取得する方法などについて記述しています。XMPの仕様書でメタデータを埋め込む方法を説明しているリソースの種類は次のものです。..?>という命令で囲ってパケット化します。end="w"?>上のバイト・オーダー・マークの部分は、U+FEFFをXMPメタデータと同じ符号化方式(UTF-8、UTF-16、UTF-32)で符号化したデータとなります。XMPパケットのスキャンパケット化したデータは、各リソース・ファイルの中に埋め込むことが推奨されています。画像ファイルのようなバイナリ・ファイルに埋め込んだ場合、画像ファイルの形式について知らない場合でもファイルのバイナリ・データをスキャンしてXMPパケットを見つけ出すことができなければなりません。..?>命令を見つけてXMPメタデータを認識するための、スキャンの方法についても説明されています。XMPパケットのリンクまた必要であれば、XMPメタデータを埋め込まずに、リソースの外部においてリソースと関係つけることもできます。タイプが必要な場合は、application/rdf+xmlを使うことになっています。PDFへの埋め込みPDFの仕様では文書全体、または、PDF文書の中の部品にメタデータを付加することができます。PDFのコンテンツの種類の一つにストリーム・オブジェクトというものがあります。ストリームオブジェクトは、簡単に言いますと一塊のデータに相当します。streamを使います。これもストリーム・オブジェクトの中の一種類です。Streamを参照してください。streamをどのように作成するかは、XMP仕様書の中の、XMPパケットをPDFに埋め込むという項を参照してください。streamを付けることもできますし、PDFドキュメントを構成する部品単位でもメタデータを付与することができます。原則として、実際の情報を含むような、あらゆるPDFのストリームにはメタデータを付与することができるとされます。このため、却って、どのストリームにメタデータを付与するべきかが曖昧になってしまいますので、データを実際に持っているオブジェクトにできるだけ近い位置にメタデータをつけるべきとされています。Referenceに示されていないコンポーネントにメタデータを付与することも可能です。content(タグ付)というコンテンツにメタデータを関連付けることもできます。streamをPDF中のコンポーネント・データ毎に付与して、大きな文書の中に埋め込む部品単位にメタデータを持たせることができるのは、PDFワークフローを構築する際に部品の管理などに使うことを意図しているようです。米国及びその他の国における商標です。