Les fichiers XML MIME fournissent toutes les informations concernant les types MIME qui sont installés dans la base de données MIME par l'application update-mime-database. Les fichiers XML MIME sont situés dans le répertoire <MIME>/packages. Quelques règles concernant les fichiers XML MIME :
Le fichier XML doit spécifier le namespace sous la forme http://www.freedesktop.org/standards/shared-mime-info.
L'élément root doit être mime-info .
Aucun, un ou plusieurs éléments mime-type peuvent être spécifiés comme enfants de l'élément mime-info. L'attribut type sert à spécifier le type MIME qui est défini.
Par défaut, le fichier freedesktop.org.xml est installé dans le répertoires de packages dans l'un des chemins <MIME> (généralement les packages /usr/share/mime/).
Le tableau suivant donne une brève description de chaque élément qui peut être enfant de l'élément mime-type.
|
L'exemple suivant définit le type MIME text/x-diff.
Exemple 6-1 Exemple de fichier XML source diff.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>
Dans cet exemple, plusieurs élément comment donnent un nom lisible au type MIME dans différentes langues. Le type MIME text/x-diff possède des règles pour faire correspondre les deux via des modèles globaux et via l'utilisation du reniflement de contenu (aussi appelé règles magiques). Tous les fichiers avec l'extension .diff ou .patch sont résolus sur ce type MIME. De plus, tous les fichiers dont le contenu commence avec les chaînes spécifiées dans les attributs value de l'élément match sont résolus sur le type MIME text/x-diff. Pour plus d'informations sur les modèles globaux et les règles magiques, reportez-vous à la XDG shared mime info specification.