Go to main content
Oracle® Solaris 11.3 デスクトップ管理者ガイド

印刷ビューの終了

更新: 2015 年 10 月
 
 

MIME タイプ XML ファイルの理解

    MIME XML ファイルは、update-mime-database アプリケーションによって MIME データベースにインストールされるすべての情報を提供します。MIME XML ファイルは、<MIME>/packages ディレクトリにあります。MIME XML ファイルに関するいくつかのルール:

  • XML ファイルでは namespace http://www.freedesktop.org/standards/shared-mime-info を指定する必要があります。

  • root 要素は mime-info にする必要があります。

  • mime-info 要素の子として 0 個以上の mime-type 要素を指定できます。type 属性は、定義している MIME タイプを指定するために使用されます。

デフォルトでは、freedesktop.org.xml ファイルがいずれかの <MIME> パス内の packages ディレクトリ (通常は /usr/share/mime/ packages) にインストールされます。

次の表では、mime-type 要素の子にすることができる各要素の簡単な説明を示します。

表 6  <mime-type> の子要素
要素 (および属性)
説明
<glob pattern="*.xyz">
この要素は、ファイル名の glob パターンを指定します。ファイル名が一致する場合、ファイルには親 mime-type 要素の MIME タイプが割り当てられます。
pattern 属性は必須です。
<magic priority="50">
この要素には、match 要素のリストがその子として含まれます。
priority 属性はオプションで、0 - 100 の範囲で優先度を指定します (100 が最高の一致優先度)。各子 match 要素には、3 つの必須属性と 1 つのオプション属性があります。
  • type

  • offset

  • value

  • mask (オプション属性)

これらの属性の詳細については、XDG 共有 MIME 情報仕様を参照してください。
<alias type="media/ subtype">
この要素は、親 mime-type 要素の別名を定義します。たとえば、application/x-pdf は、application/pdf MIME タイプの別名です。
<sub-class-of type="media/subtype">
この要素は、親 mime-type 要素を type 属性で指定された MIME タイプのサブクラスとして定義します。たとえば、image/svgtext/xmltext/plain、および application/octet-stream MIME タイプのサブクラスです。
<comment xml:lang="locale">
この要素は、MIME タイプの読み取り可能な説明を提供します。この要素が 0 個以上出現できるのは、それぞれに xml:lang 属性の一意の値が含まれる場合のみです。
<root-XML namespaceURI="namespace" localName="">
ファイルが XML ファイルであると判断されると、この要素が namespaceURI および localName 属性を使用してファイルの種類をさらに分類することを補助します。namespaceURI 属性はドキュメントの名前空間であり、localName はドキュメントのルート要素の名前です。localName が存在してもその値が空の場合は、ルート要素が任意の名前を持つ可能性がありますが、それでも名前空間は一致する必要があります。

次の例では、text/x-diff MIME タイプを定義します。

使用例 3  diff.xml ソース XML ファイルの例:
<?xml version='1.0'?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="text/x-diff">
	<comment>Differences between files</comment>
	<comment xml:lang="af">verskille tussen lêers</comment>
	<!-- more translated comment elements -->
	<magic priority="50"> <match type="string" offset="0" value="diff\t"/>
		<match type="string" offset="0" value="***\t"/>
		<match type="string" offset="0" value="Common subdirectories: "/>
	</magic>
	<glob pattern="*.diff"/>
	<glob pattern="*.patch"/>
</mime-type>
</mime-info>

この例では、複数の comment 要素で MIME タイプにさまざまな言語の読み取り可能な名前を指定します。text/x-diff MIME タイプには、glob パターンと内容の判別 (「マジックルール」と呼ばれる) の両方を使用したマッチングルールがあります。.diff または .patch 拡張子を持つすべてのファイルがこの MIME タイプへと解決されます。また、match 要素の value 属性で指定された文字列で始まる内容を持つファイルは、text/x-diff MIME タイプへと解決されます。glob パターンとマジックルールの詳細については、XDG 共有 MIME 情報仕様を参照してください。