ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 11.1 デスクトップ管理者ガイド Oracle Solaris 11.1 Information Library (日本語) |
MIME データベースとは、次の情報を含むファイルの集合です。
一連の既知の MIME タイプ
ファイルの MIME タイプを決定する方法
MIME タイプに関するメタ情報
MIME データベースは、$XDG_DATA_HOME/mime および $XDG_DATA_DIRS/mime ディレクトリにある一連のファイルから作成されます。環境変数が設定されていない場合、デフォルト値はそれぞれ ~/.local/share および /usr/local/share:/usr/share です。
このガイドでは、これらのディレクトリを総称的に指す場合に、<MIME> を使用します。同じ MIME タイプに関して競合する情報が見つかった場合、最初に見つかったファイル内の情報が優先します。
たとえば、環境変数がデフォルトパスであるとすると、<MIME>/text/plain.xml ファイルをロードする命令では次のファイルをロードします。
~/.local/share/mime/text/plain.xml
/usr/local/share/mime/text/plain.xml
/usr/share/mime/text/plain.xml
MIME データベースには、次のディレクトリおよびファイルが含まれます。
<MIME>/packages/
<MIME>//media/subtype.xml
<MIME>/globs
<MIME>/magic
<MIME>/XMLnamespaces
<MIME>/aliases
<MIME>/subclasses
次に、MIME データベース内の MIME ディレクトリおよびファイルのリスト、および簡単な説明を示します。
<MIME>/packages/– このディレクトリには、任意の数の XML ファイルを含めることができます。各 XML ファイルは、MIME タイプのコレクションを記述します。<MIME>/packages/ ディレクトリにある freedesktop.org.xml ファイルには、広く使用され認識されているすべてのデフォルト MIME タイプが含まれます。デフォルトで、freedesktop.org.xml ファイルは /usr/share/mime/packages ディレクトリにインストールされます。
新しい MIME タイプに関する情報を提供するアプリケーションは、このディレクトリに新しい XML ファイルを 1 つインストールします。ファイルは、アプリケーションがインストールされる場所のプレフィックスに応じて、/mime/package サブディレクトリ内に作成されます。たとえば、/usr/bin ディレクトリにインストールされるアプリケーションは、新しいソース XML ファイルを /usr/share/mime/packages ディレクトリにインストールするはずです。packages ディレクトリ内の XML ファイルの詳細は、「MIME タイプ XML ファイルの理解」を参照してください。
<MIME>/media/subtype.xml– これらのディレクトリおよびファイルは、update-mime-database アプリケーションによって <MIME>/packages/ サブディレクトリ内の一連のソース XML ファイルから自動的に生成されます。たとえば、/usr/share/mime/packages/freedesktop.org.xml ファイル内の各 mime-type 要素について、MIME タイプのメディアの種類でディレクトリが /usr/share/mime/ ディレクトリに作成されます。メディアの種類とともに、そのディレクトリにはその MIME タイプのサブタイプ識別子の XML ファイルも作成されます。作成される XML ファイルの内容には、コメント、翻訳、サブクラスの指定、および別名が含まれます。
次の例は、update-mime-database アプリケーションで freedesktop.org.xml デフォルトソース XML ファイルを使用して生成されるファイルの抜粋です。
<?xml version='1.0' encoding='utf-8'?> <mime-type xmlns="http://www.freedesktop.org/standards/shared-mime-info" type="text/plain"> <!--Created automatically by update-mime-database. DO NOT EDIT!--> <comment> plain text document </comment> <!-- possibly more translations--> <comment xml:lang="es"> documento de texto sencillo </comment> <comment xml:lang="eu"> testu soileko dokumentua </comment> <comment xml:lang="fi"> perustekstiasiakirja </comment> <comment xml:lang="fr"> document plein texte </comment> <!-- possibly more translations --> </mime-type>
<MIME>/globs– このファイルの各行には、コロン区切りの MIME タイプおよび glob パターンが含まれます。glob パターンと一致するファイルは、コロンの前に指定されている MIME タイプへと解決されます。ファイル名が glob パターンと一致する方法については、特殊なルールがあります。詳細は、XDG 共有 MIME 仕様を参照してください。
このファイルは、update-mime-database アプリケーションによっても freedesktop.org.xml デフォルトソース XML ファイルを使用して生成されます。
<MIME>/magic– これは、内容を判別することによって MIME タイプを解決する方法 (「マジックルール」と呼ばれる) に関する情報が含まれるバイナリファイルです。マジックルールとは、ファイルの先頭の検索対象のテキストまたはバイナリデータを指定することで、ファイルの MIME タイプを定義する 1 つ以上のルールのセットです。たとえば、ファイル内のバイトオフセット 0 にある %PDF- 文字列をチェックするルールを設定できます。文字列が見つかった場合、ファイルを application/pdf MIME タイプに割り当てることができます。
このファイルは、update-mime-database アプリケーションによっても生成されます。
<MIME>/XMLnamespaces– このファイルには、XML 名前空間から MIME タイプへのマッピングが含まれます。各行には 3 つのフィールドが含まれます。
namespace
localName
MIME type
各フィールドは空白で区切ります。localName が空の場合、namespace および MIME type フィールドの間に 2 つの空白があります。
このファイルは、update-mime-database アプリケーションによっても生成されます。
<MIME>/aliases– このファイルには、各 MIME タイプの別名のリストが含まれます。別名とは、MIME タイプのもう一つのタイプです。このファイルの各行には、2 つのフィールドが含まれます。
alias name
MIME type
フィールドは空白で区切ります。このファイルは、update-mime-database アプリケーションによっても生成されます。
<MIME>/subclasses– このファイルには、サブクラスに入れられた MIME タイプのリストとその親 MIME タイプが含まれます。XDG 共有 MIME 仕様によると、あるタイプのすべてのインスタンスが別のタイプのインスタンスでもある場合、最初のタイプは 2 番目のタイプのサブクラスです。たとえば、すべての image/svg ファイルは text/xml、text/plain、および application/octet-stream ファイルでもあります。サブクラスとは、データのカテゴリではなく形式に関することです。たとえば、すべての表計算ドキュメントが、汎用の表計算ドキュメントクラスから継承するわけではありません。
このファイルの形式は、aliases ファイルと似ています。各行には 2 つのフィールドが含まれます。
subclassed MIME type
parent MIME type
各フィールドは空白で区切ります。このファイルは、update-mime-database アプリケーションによっても生成されます。
新しい MIME タイプをシステムに追加したり、MIME タイプに関する情報を変更したりするには、MIME データベースをリフレッシュする方法を理解する必要があります。MIME データベースをリフレッシュするには、update-mime-database アプリケーションを使用します。たとえば、アプリケーションが新しい MIME タイプに関する情報を /usr/share/mime/packages/diff.xml ファイルにインストールする場合、update-mime-database アプリケーションを /usr/share/mime パラメータとともに呼び出す必要があります。
# update-mime-database /usr/share/mime *** * Updating MIME database in /usr/share/mime... ***
MIME データベースをリフレッシュするには、<MIME>/packages ディレクトリ内のすべてのソース XML ファイルをスキャンします。