Beim Design von Nachrichten gibt es gelegentlich Strukturen, die eigentlich als
Dokumente oder andere zusammengesetzte und potenziell große Dateien realisiert wurden. Beispielsweise können Berichte
oder Produktinformationen als PDF-Dateien verteilt werden oder es können Grafiken an eine Nachricht angehängt werden,
die ein Produkt oder ein Element beschreiben. Das UML-Profil (Unified Modeling Language) für Softwareservices stellt den
zusätzlichen Stereotyp <<Nachrichtenanhang>> (Message Attachment) bereit, der an Eigenschaften in
einem Nachrichtenmodell angehängt werden kann und darüber informiert, dass der angegebene Inhalt auf bestimmte Weise an
das Modell angehängt wird. Das ermöglicht dem Designer, eine detaillierte Spezifikation eines sehr wichtigen Aspekts
des Nachrichtendesigns zur Verfügung zu stellen. Insbesondere hinsichtlich Leistung und Nutzung der Bandbreite kann die
Übergabe von großen binären Anhängen ein wichtiger Faktor sein.
Anhänge oder Links
In einer Internetarchitektur gibt es einen Ansatz zur Übertragung großer Datenmengen, d. h. der Übergabe eines URL, der
dem Empfänger erlaubt, den Inhalt über ein geeigneteres Protokoll als FTP herunterzuladen. Das ist auch sehr nützlich,
wenn die Daten nicht oft geändert werden, weil sie in diesem Fall an einer allgemeinen Position für alle Clients
abgelegt werden können. Darüber hinaus ist dieser Mechanismus günstig, wenn der Empfänger der Nachricht sich
entscheidet, den zusätzlichen Inhalt nicht herunterzuladen. Das hat den Vorteil, dass die Anforderungen für den
Download von Anhängen auf den Client gestellt werden können. Möglicherweise bedeutet das einen Nachteil und zusätzliche
Arbeitslast für den Client.
Ein anderer Ansatz für Anhänge ist die so genannte Well Known Location (bekannte Position). Beispielsweise
bezeichnet ein Teil der Servicedokumentation einen Basis-URL für Anhänge, und ein Element der Nachricht bezeichnet eine
ID oder einen Dateinamen, die bzw. der an den URL angehängt werden kann, damit die konkrete Ressource heruntergeladen
werden kann.
Codierung von Anhängen
Der Stereotyp "Nachrichtenanhang" (Message Attachment) hat ebenfalls eine Eigenschaft, die die Codierungsform des
Anhangs bezeichnet. Obwohl der Name mit der Eigenschaft für eine Nachricht identisch ist, wird empfohlen, für die
Werte, die zur Bezeichnung der Codierung für Anhänge verwendet werden, MIME-Typen zu verwenden. Diese Typen werden
bereits von bestimmten Internetinfrastrukturen, z. B. dem HTTP-Protokoll bei der Übertragung von Binärdaten (z. B.
Grafiken für Webseiten), verwendet.
Weitere Informationen zu MIME-Typen finden Sie im Dokument IETF RFC 2046 - Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types.
Stellen Sie sich einen Service vor, der einen Produktkatalog bereitstellt. In diesem Service gibt es Operationen, mit
denen Elemente gesucht, Abfragen ausgeführt und vollständige Produktinformationen zurückgegeben werden können. Eine
Untergruppe des Modells der Produktdaten enthält Produkteinträge, denen je eine Grafik und möglicherweise ein
vergrößerter Ausschnitt zur Verdeutlichung zugeordnet sind. Im Modell unten ist erkennbar, dass die zwei Grafiken als
Anhänge zur Datenstruktur des Produktkatalogs gekennzeichnet sind. Im Diagramm ist nicht erkennbar, dass der Wert für
die Codierungseigenschaft in beiden Fällen "image/jpeg" ist.
Wie beim oben dargestellten Beispiel wäre es möglich, pro Grafik einen URL zu senden und dem Client die Entscheidung zu
überlassen, ob und wann die konkrete Grafik heruntergeladen werden soll. Der URL würde dann das Protokoll und die
Position für die Downloadoperation bezeichnen. Die folgende Abbildung zeigt eine Version der Datenstruktur des
Produktkatalogs mit den Grafiken als Links.
|