MIME(Multipurpose Internet Mail Extensions)

 MIME (Einführung)
 Probleme beim Einsatz von MIME
 Arbeitsweise von MIME
 Content-Typen
 
 
 
 



MIME (Einführung)

RFC 1521 (MIME)
RFC 822  (Grundlegende Definition von Internet-Mail)



Probleme beim Einsatz von MIME

MIME unterstützt sehr viele verschiedene Datentypen.



Die Arbeitsweisevon MIME

Die grundlegende Definition von Internet-Mail ist in RFC822 enthalten. Demnach ist zwar der header einer Mail genau definiert, der Körper selbst wird jedoch als einfache Ansammlung von 7-Bit-codierten Ascii-Zeichen angesehen.
MIME erweitert diese Definition durch das Einfügen von 5 neuen header-Zellen, die den Nachrichtenkörper wie folgt genauer spezifizieren.



Content-Type (Inhalts-Typ)

Content-Transfer-Encoding

MIME-Version

Content-ID

Content-Description


Content-Typen

 Der MIME-header
 Die 7 Content-Typen
 Beispiele von einfachen MIME-Datentypen
 Beispiele von komplexen MIME-Datentypen
 Codierung
 

Mail-Programme müssen den Content-Type-header und Content-Transfer-Encoding-header interpretieren, um eine Nachricht korrekt zu entschlüsseln, sodann darzustellen oder weiterzuleiten
 

 Das Format des Nachrichtenkörpers wird auf 3 Ebenen spezifiziert:
 
 

Content-Type 
 
type
audio
subtype
midi
Schlüsselwort=Wert charset=iso...
 
type ist eine allgemeine Angabe über die Art der Daten, um zu entscheiden, anwelche Geräte die Daten übergeben werden müssen. 
text-Formate z.B. können direkt auf dem Bildschirm ausgegeben werden. 
subtype spezifiziert die Daten genauer. Type und Subtype geben zusammen die genaue Art der Daten an.
Content-Transfer-Encoding
 binary 
 
gibt an, wie die Daten in 7-Bit-ASCII codiert sind.
zum Kapitelanfang




Beispiel eines MIME-headers
 
type/subtype Schlüsselwort=Wert Schlüsselwort=Wert ... codierung Version ID Beschreibung
text/plain charset=iso-8859-8 Quoted-Printable xx... xx... reiner Text...

Dem Content-Type-header folgt eine Liste von Schlüsselwort=Wert-Paaren. Im Beispiel wird der Zeichensatz ISO Roman/Hebräisch verwendet. Unterstützt die Anzeige diesen Zeichensatz, kann das Mail-Programm(nach der Decodierung) die Nachricht anzeigen, wie es vom Absender gewünscht wird.
zum Kapitelanfang




Die 7 definierten Typen:

Die ersten 5 Typen weisen auf eine einzelne Datendatei im einem einzigen Format hin.
 

text
Ein direkt lesbarer Text, er sollte so beschaffen sein, daß er direkt am Bildschirm ausgegeben werden kann.
audio
Klangdatei
image
unbewegliche Bildformate
video
Filme oder Animationen
   application 
anwendungsspezifische Dateien, wie etwa Skript-Sprachen
message
Der Behälter für die eingebettete Nachricht.
multipart
Mehrteilige Nachricht, von der jede in einem eigenen Format sein kann.
zum Kapitelanfang


Beispiele von einfachen MIME-Datentypen
 
 
text/plain
Reiner Text, ohne Formatierung Der charset-Schlüssel wird zur Angabe eines Zeichensatzes verwendet.
audio/basic
8000 Hz-Audiodatei mit einem Kanal im 8-Bit-ISDN-Regel-Format
image/gif
Bilddatei im gif-Format
image/jpeg
Bilddatei im jpeg-Format
video/mpeg
Video-Sequenz im MPEG-Format, es kann auch eine zugehörige Tonspur vorhanden sein
video/quicktime
Video-Sequenz im QuickTime-Format
application/postscript
eine Post-Script-Datei, in der Regel für einen Drucker bestimmt
  application/mac-binhex40  Eine mit BinHex-codierte Macintosh-Datei.
zum Kapitelanfang

Beipiele von komplexen MIME-Nachrichten
 
 
message/rfc822
Mit diesem message-Typ kann eine andere Mail-Nachricht in eine MIME-Nachricht eingebettet werden. Dies ist z.B. beim Weiterleiten einer Email nützlich.
message/external-body
gibt an, daß sich der Nachrichtenkörper wo anders befindet. Die weiteren Schlüsselwörter geben dann an, wie der Nachrichtenkörper empfangen werden kann. Etwa über anonymes FTP oder als lokale Datei).
message/partial
Zerteilung von großen Nachrichten in mehrere "Scheiben" (manche Mail-Systeme haben Schwierigkeiten, große Dateien weiterzuleiten). 
3 Schlüsselwörter: 
id=Wert, 
id für die verschiedenen Teile der Nachricht 
number=Wert, 
Nummer der "Scheibe"(ab 1 aufsteigend) 
total=Wert 
Anzahl der Teilnachrichten(nur beim letzten Paket erforderlich)
multipart/mixed
Eine einzelne Nachricht enhält mehrere Teile mit jeweils anderem Format. Jedes Teil verfügt über einen eigenen Content-header.
multipart/alternative
enthält verschiedene Versionen des gleichen Texts, z.B. Formatiert für ein bestimmtes Textformat und als reiner ASCII-Text.
multipart/partiell
Die Dateiinhalte sind zur gleichzeitigen Wiedergabe gedacht, z.B. ein Bild und ein zugehöriger Audiotext.
zum Kapitelanfang


Codierung
 
 
7bit 7-Bit-Text, nicht codiert
8bit 8-Bit-Text, nicht codiert
binary Nicht codierte binäre Daten
Quoted-Printable Die meisten 7-Bit-Zeichen sind nicht kodiert, 8-Bit 
Zeichen werden durch: Fluchtzeichen/Hexwert (z.B. =A8) 
dargestellt, wobei = durch =3D dargestellt wird.
Base64 Base64-Kodierung. Dabei werden nur die Zeichen 
a-z, A-Z, 0-9, +, /, benutzt


zum Kapitelanfang


       Puh...., jetzt aber schnell ganz zurück! 


  ©  Jürgen Glowka Informationstechnologie Mannheim
*
  E-Mail: it at glowka dot de