Le format MIME permet de spécifier le format du corps du message, dont la RFC 822 se contente de le décrire comme un ensemble de lignes de caractères sur 7 bits. En fait, MIME permet de spécifier le type du message (texte, image, son, vidéo ou plusieurs types à la fois), et le codage du message (7 bits, 8 bits, quoted-printable ou base64). MIME est décrit par les RFC 1341 à 1345, puis 2045 à 2049.
Voici un exemple de courrier au format MIME :
From: jbon@domaine1.com To: jdeuf@domaine2.com Subject: MIME MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="mime-c-bien" Ceci est un message mime --mime-c-bien Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Salut, je t'envoie le document sur le format MIME que tu m'as demandé. Cordialement. Jean BON --mime-c-bien Content-Type: message/external-body; access-type=anon-ftp; site="ftp.domaine1.com"; name="/pub/Linux/Mail/MIME/mime.txt" --mime-c-bien
Les nouveaux champs apportés par MIME sont :
Ce message est composé de deux parties (multipart/mixed) séparées par une chaîne unique (boundary="mime-c-bien"). La première partie est un texte normal (text/plain), contenant des accents, donc utilisant un jeu de caractère différent de l'ASCII classique (charset=iso-8859-1), tandis que la deuxième partie est une référence à un objet externe (message/external-body) accédé par ftp anonyme (access-type=anon-ftp).
Voici un autre exemple de message au format MIME :
From: Jean BON <Jean.Bon@domaine1.com> To: John.Deuf@domaine2.com Mime-Version: 1.0 Content-Type: text/enriched; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-UIDL: '8e!!!(`"!?4W"!5J4"! Status: RO Content-Length: 662 Lines: 45 <bold><color><param>0000,0000,ffff</param><bigger> les infos de la semaine </bigger></color></bold> Voici une offre de job arrivée le vendredi 12 janvier : <bold>Le Café du Palais</bold> contacter M. Dugenoux. Ils <bold><color><param>ffff,0000,0000</param>recherchent des serveurs</color></bold> pour leurs différents services (midi et soir et WE).
La balise bold affichera le texte en gras. Les autres balises pour le texte enrichi MIME sont spécifiées dans la RFC 1523.