Einleitung - Universität Paderborn
Einleitung - Universität Paderborn
Einleitung - Universität Paderborn
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Universität</strong>-Gesamthochschule <strong>Paderborn</strong><br />
Diplomarbeit<br />
Austauschformate für die Interoperabilität heterogener, weitverteilter<br />
Workflow-Management-Systeme – Auswahl, Bewertung und<br />
prototypische Implementierung von Formatstandards für Message-<br />
Objekte im Rahmen des Wide Area Group Flow Systems<br />
Prof. Dr. Nastansky<br />
Sommersemester 98<br />
vorgelegt von:<br />
Michael Groß<br />
Wirtschaftsinformatik<br />
Matrikel-Nr.: 3864124<br />
Bödingsheide 22, 33397 Rietberg
Inhaltsverzeichnis<br />
Seite:<br />
1 <strong>Einleitung</strong>............................................................................................................... 1<br />
1.1 Szenario ................................................................................................................. 1<br />
1.2 Aufgabenstellung................................................................................................... 2<br />
1.3 Aufbau der Arbeit .................................................................................................. 3<br />
2 Grundlagen............................................................................................................. 4<br />
2.1 Einordnung des Workflow-Managements in das Forschungsgebiet „Computer<br />
Support Cooperative Work“ .................................................................................. 4<br />
2.2 Interoperabilität durch Standards als Grundlage für unternehmensübergreifenden<br />
Datenaustausch ...................................................................................................... 7<br />
2.3 Wissenschaftliche und industrielle Ansätze für die Interoperabilität von<br />
Workflow-Management-Systemen...................................................................... 10<br />
2.3.1 Interface 4 der Workflow Management Coalition ......................................... 10<br />
2.3.2 Panta Rhei ...................................................................................................... 13<br />
2.3.3 Workconnector............................................................................................... 16<br />
2.4 Formate für Übertragungscontainer..................................................................... 17<br />
3 Arbeitsumgebung................................................................................................. 21<br />
3.1 Lotus Notes als Entwicklungsplattform............................................................... 21<br />
3.2 Wide Area Groupflow System............................................................................. 25<br />
3.2.1 Konzeption von WAGS ................................................................................. 25<br />
3.2.2 Architektur WAGS......................................................................................... 26<br />
3.2.2.1 Die Komponenten der Workflow-Repository-Schicht .................. 28<br />
3.2.2.2 Struktur eines Message-Objekts .................................................... 32<br />
4 Austauschformate für den Transport von Workflow-Daten................................ 35<br />
I
4.1 Anforderungen an Formate zur Übermittlung von Message-Objekten ............... 35<br />
4.2 Untersuchung vorhandener Formate.................................................................... 39<br />
4.2.1 Rich-Text-Format (RTF)................................................................................ 41<br />
4.2.2 Portable Document Format (PDF) ................................................................. 45<br />
4.2.3 Electronic Data Interchange (EDI) und EDIFACT........................................ 54<br />
4.2.4 Multipurpose Internet Mail Extension (MIME)............................................. 60<br />
4.2.5 Open Document Architecture (ODA) ............................................................ 66<br />
4.2.6 Standard Generalized Markup Language (SGML) ........................................ 71<br />
4.2.7 Hyper Text Markup Language (HTML) ........................................................ 78<br />
4.2.8 Extensible Markup Language (XML)............................................................ 81<br />
4.3 Abschlußbetrachtung und Auswahl geeigneter Formate..................................... 86<br />
5 Konzeption und prototypische Realisierung........................................................ 90<br />
5.1 Konzeption........................................................................................................... 90<br />
5.1.1 Architektur des Konverters ............................................................................ 91<br />
5.1.2 Definition des Austauschformats mit Hilfe der Document Type Definition . 92<br />
5.2 Prototypische Realisierung .................................................................................. 95<br />
5.2.1 Fallbeispiel ..................................................................................................... 95<br />
5.2.2 Behandlung eines ausgehenden Message-Objekts......................................... 95<br />
5.2.3 Annahme und Auswertung eines eingehenden Message-Objekts ............... 101<br />
5.3 Kritische Betrachtung des Prototyps.................................................................. 104<br />
6 Zusammenfassung und Ausblick....................................................................... 106<br />
7 Literaturverzeichnis ........................................................................................... 108<br />
8 Anhang............................................................................................................... 116<br />
8.1 Relevante Internet-Ressourcen .......................................................................... 116<br />
8.2 Message-Objekt-Definition ............................................................................... 117<br />
8.3 Ausgehendes XML-Messageobjekt................................................................... 119<br />
II
Abkürzungsverzeichnis<br />
ANSI American National Standards Institute<br />
ASC Accredited Standards Committee<br />
BOS Back Office System<br />
CSCW Computer Supported Cooperative Work<br />
DIN Deutsches Institut für Normung, Berlin<br />
EDI Electronic Data Interchange<br />
EDIFACT Electronic Data Interchange for Administration Commerce and Transport<br />
EDV Elektronische Datenverarbeitung<br />
E-Mail Electronic Mail<br />
IETF Internet Engineering Task Force<br />
ISO International Organization for Standardization ( internationale Normierungs-<br />
behörde)<br />
ITU International Telecommunication Union (vormals CCITT)<br />
LAN Local Area Network<br />
PDF Portable Document Format<br />
WAGS Wide Area Groupflow System<br />
WAN Wide Area Network<br />
WFMC Workflow Management Coalition<br />
WWW World Wide Web<br />
III
Abbildungsverzeichnis<br />
IV<br />
Seite:<br />
Abbildung 1: Klassifikation von CSCW-Systemen gemäß der zeitlichen und räumlichen<br />
Verteilung [vgl. Teufel 1996, S. 41].............................................................. 5<br />
Abbildung 2: Klassifikation nach Unterstützung [vgl. Teufel 1996 S.41 ............................. 7<br />
Abbildung 3: Workflow Management Coalition Reference Model [WFMC 1994, S.20]. 12<br />
Abbildung 4: System Architektur Panta Rhei [Groiss/Eder 1996, S. 7] ............................. 14<br />
Abbildung 5: Auszug aus einem EDIFACT-Dokument [vgl. Groiss/Eder 1996, S. 5] ...... 15<br />
Abbildung 6: Umsetzung von EDIFACT in HTML [vgl. Groiss/Eder 1996, S. 6] ............ 15<br />
Abbildung 7: Webzugriff auf Panta Rhei [Groiss/Eder 1996, S. 8].................................... 16<br />
Abbildung 8: Steuerinformation des Workconnectors [Wewers/Faisst 1996, S. 174] ...... 17<br />
Abbildung 9: Grundidee von WAGS [Riempp/Nastansky 1996b, S. 197]......................... 26<br />
Abbildung 10: Architektur der WAGS-Umgebung [vgl. Riempp/Nastansky 1997, S. 491]27<br />
Abbildung 11: WAGS-Repository [vgl. Saliger 1998, S. 49]............................................. 29<br />
Abbildung 12: Content Management [Riempp/Nastansky 1996b, S. 202]......................... 31<br />
Abbildung 13: Fluß der Message-Objekte und Aufgabe der Gateway Datenbank<br />
[Riempp/Nastansky 1997, S. 279] ............................................................... 32<br />
Abbildung 14: Struktur eines Message-Objekts [vgl. Riempp/Nastansky 1996b, S.200] .. 33<br />
Abbildung 15: RTF Beispiel ............................................................................................... 42<br />
Abbildung 16: RTF-Felddefinition ..................................................................................... 43<br />
Abbildung 17: Erstellung einer PDF-Datei durch PDF Writer [vgl. Adobe 1996, S. 28] .. 46<br />
Abbildung 18: Umwandlung von Postscript nach PDF [vgl. Adobe 1996, S. 29].............. 47<br />
Abbildung 19: Auszug aus einer PDF-Datei....................................................................... 47<br />
Abbildung 20: PDF-Komponenten [Adobe 1996, 34] ........................................................ 48<br />
Abbildung 21: PDF-File-Struktur [Adobe 1996, 62] .......................................................... 49
Abbildung 22: Struktur eines PDF-Dokuments [vgl. Adobe 1996, S. 72].......................... 50<br />
Abbildung 23: Beispiel EDIFACT-Nachricht [Deutsch 1994, S. 56]................................ 55<br />
Abbildung 24: Struktur einer EDIFACT-Übertragungsdatei [Weid 1994, S. 40] .............. 57<br />
Abbildung 25: Aufbau einer MIME-Nachricht................................................................... 61<br />
Abbildung 26: Beispiel einer MIME-Nachricht [Grand 1993] ........................................... 64<br />
Abbildung 27: Objektspezifikation in ODA [vgl. Appelt 1991, S. 44]............................... 69<br />
Abbildung 28: SGML-konforme DTD Definition .............................................................. 73<br />
Abbildung 29: SGML-Beispiel ........................................................................................... 74<br />
Abbildung 30: SGML-Attribut-Definition.......................................................................... 74<br />
Abbildung 31: Anforderungstabelle.................................................................................... 86<br />
Abbildung 32: Architektur des Konverters ......................................................................... 91<br />
Abbildung 33: Schematische Darstellung der Message-Objekt-Struktur ........................... 92<br />
Abbildung 34: Document Type Definition ......................................................................... 94<br />
Abbildung 35: Fallbeispiel [vgl. Saliger 1998, S. 74]......................................................... 95<br />
Abbildung 36: Message-Objekt vor der XML-Umwandlung ............................................. 97<br />
Abbildung 37: Message-Objekt nach der XML-Umwandlung........................................... 99<br />
Abbildung 38: Darstellung eines XML-Message-Objekts................................................ 100<br />
Abbildung 39: XML-Message-Objekt vor der Umwandlung ........................................... 101<br />
Abbildung 40: Tabelle der XML-Elemente ...................................................................... 102<br />
Abbildung 41: E-Mail-Objekt nach der XML-Konvertierung .......................................... 103<br />
V
Tabellenverzeichnis<br />
VI<br />
Seite:<br />
Tabelle 1: Bewertung des RTF-Formats ............................................................................. 45<br />
Tabelle 2: Bewertung des PDF-Formats ............................................................................. 53<br />
Tabelle 3: Bewertung des EDIFACT-Formats.................................................................... 60<br />
Tabelle 4: Bewertung des MIME-Formats.......................................................................... 66<br />
Tabelle 5: Bewertung des ODA .......................................................................................... 71<br />
Tabelle 6: Bewertung des SGML-Formats.......................................................................... 77<br />
Tabelle 7: Bewertung des HTML-Formats ......................................................................... 80<br />
Tabelle 8: Bewertung des XML-Formats............................................................................ 85<br />
Tabelle 9: Bewertungsübersicht der untersuchten Formate und Definitionssprachen ........ 88
<strong>Einleitung</strong> Seite 1<br />
1 <strong>Einleitung</strong><br />
1.1 Szenario<br />
Die Globalisierung der Märkte, die Reduktion von Produktentwicklungs- und Produktionszeiten<br />
bei Verringerung der Fertigungstiefe und die Intensivierung der Zusammenarbeit<br />
zwischen kooperierenden Unternehmen kennzeichnen die bestehende Wirtschaftssituation.<br />
Eine zunehmende Dezentralisierung der Marktteilnehmer bei steigender Kooperationsdynamik<br />
erfordert neue Formen der Zusammenarbeit. In der Vergangenheit wurden dazu<br />
verschiedene Technologien und Verfahren eingeführt, die von der herkömmlichen Übermittlung<br />
der Daten in Papierform über den Einsatz von Telekommunikationsmitteln (Telex,<br />
Teletext, Fax) bis hin zum Einsatz von vernetzten Systemen (Electronic Data Interchange)<br />
reichten.<br />
Insbesondere im Büroumfeld werden seit Jahren Informationssysteme eingesetzt, die die<br />
Geschäftsprozesse innerhalb der Organisation effizienter gestalten. Dazu gehören Anwen-<br />
dungen aus den Bereichen der Kommunikation (E-Mail, Video-Konferenzsysteme) und<br />
des Workflow-Managements, die die Kommunikation und Kooperation der am Prozeß be-<br />
teiligten Personen unterstützen.<br />
Die Gestaltung von Workflow-Management-Systemen für den Einsatz im lokalen Umfeld<br />
eines Unternehmens war lange Zeit ein Hauptgegenstand der Forschung und führte zur<br />
Entwicklung professioneller Applikationen (IBM Flow Mark, Siemens Nixdorf Workparty,<br />
CSE Workflow etc.). Diese Systeme wurden mit verschiedenen Ansätzen auf unterschiedlichen<br />
Hard- und Softwareplattformen implementiert. Ihr Einsatzbereich endete aber häufig<br />
an den Unternehmensgrenzen. Als Folge der oben beschriebenen zunehmenden Dezentralisierung<br />
und Kooperationsdynamik ergab sich die Anforderung der Marktteilnehmer, Daten<br />
zwischen heterogenen und weitverteilten Workflow-Management-Systemen austauschen<br />
zu können. Dieses Einsatzgebiet ist erst seit kurzer Zeit Gegenstand der Forschung.<br />
Die Herausforderung der neuen Generation von Workflow-Management-Systemen besteht<br />
darin, die bisherigen Begrenzungen zu überwinden, um die Bearbeitung von Geschäftsvorgängen<br />
auch über die Unternehmensgrenzen hinweg zu ermöglichen.
<strong>Einleitung</strong> Seite 2<br />
Zur Zusammenarbeit verschiedener Systeme bedarf es aber Normen und Standards, die zur<br />
Zeit nur ansatzweise existieren. Die Workflow Management Coalition (WFMC), ein Zusammenschluß<br />
verschiedener Anbieter von Workflow-Management-Systemen, hat sich<br />
u. a. zum Ziel gesetzt, diese Normen und Standards zu entwickeln.<br />
Die Verbindung von Workflow-Management-Systemen beinhaltet verschiedene Aspekte,<br />
die rechtlicher, organisatorischer und technischer Art sein können. Der Fokus dieser Arbeit<br />
liegt auf dem technischen Aspekt, insbesondere auf dem Schwerpunkt des Datenaustauschs<br />
zwischen heterogenen Workflow-Management-Systemen.<br />
1.2 Aufgabenstellung<br />
An der <strong>Universität</strong> GH <strong>Paderborn</strong> wurde seit 1992 im Fachbereich Wirtschaftsinformatik II<br />
das Workflow-Management-System Groupflow auf Basis der Groupware Plattform Lotus<br />
Notes entwickelt. Mit Groupflow wird die Möglichkeit eröffnet, vordefinierte Arbeitsabläufe<br />
im Büroumfeld (Workflows) zu modellieren und innerhalb von Local Area Networks<br />
(LANs) durchzuführen. Nach Abschluß der Arbeiten wurde der Prototyp an eine kommerzielle<br />
Firma übergeben, die das Produkt seit 1995 am Markt anbietet.<br />
In den letzten Jahren wurde die Forschung und Weiterentwicklung konsequent in Richtung<br />
der weitverteilten Modellierung und Ausführung von Workflows in Wide Area Networks<br />
(WANs) vorangetrieben.<br />
Die Ergebnisse der Weiterentwicklung mündeten in dem Prototyp Wide Area Groupflow<br />
System (WAGS). Die in WAGS eingesetzten Mechanismen zum Austausch von Daten zwischen<br />
Workflow-Systemen, zur Zeit nur zwischen weitverteiltenWAGS-Systemen reali-<br />
siert, beruhen auf den proprieträren Mechanismen (Compound Documents) von Lotus<br />
Notes.<br />
Im Rahmen der vorliegenden Arbeit wird untersucht, welche Möglichkeiten des Datenaustauschs<br />
auf Basis von Standards existieren und wie sie im Verbund von heterogenen<br />
weitverteilten Workflow-Management-Systemen eingesetzt werden können. Diese Arbeit<br />
fokussiert sich dabei auf die Suche nach einem geeigneten standardisierten Austauschformat,<br />
mit dem die Workflow-Daten in einem Informationscontainer mittels E-Mail zwischen<br />
heterogenen Systemen übertragen werden können. Als Arbeitsumgebung der prototypischen<br />
Entwicklung wird Lotus Notes, die technische Plattform von WAGS, benutzt.
<strong>Einleitung</strong> Seite 3<br />
1.3 Aufbau der Arbeit<br />
Das nachfolgende Kapitel befaßt sich mit den Grundlagen, die für die Arbeit von Bedeutung<br />
sind. Dazu werden zunächst wichtige Begriffe aus dem Umfeld der Interoperabilität<br />
und der Workflow-Umgebung erläutert und Ansätze für die Verbindung von Workflow-<br />
Systemen aufgezeigt.<br />
In Kapitel 3 wird die zugrundeliegende Arbeitsumgebung Lotus Notes und die Anwendung<br />
Wide Area Groupflow System eingeführt.<br />
Die Anforderungen an ein Austauschformat und die in Frage kommenden Formate werden<br />
in Kapitel 4 definiert und untersucht. Das Kapitel schließt mit einer entsprechenden Empfehlung.<br />
Die letzten Kapitel beschäftigen sich mit der Konzeption und Präsentation des erstellten<br />
Prototyps sowie der Zusammenfassung dieser Arbeit und einem Ausblick.
Grundlagen Seite 4<br />
2 Grundlagen<br />
In diesem Kapitel werden die Grundlagen erarbeitet, die für das Verständnis der Arbeit<br />
notwendig sind. Dazu wird das Themengebiet Workflow-Management eingegrenzt sowie<br />
die benötigten Begriffe eingeführt. Zusätzlich werden die Entwicklungsumgebung Lotus<br />
Notes und die notwendigen zugrundeliegenden Konzepte des Wide Area Groupflow Systems<br />
erklärt.<br />
2.1 Einordnung des Workflow-Managements in das Forschungsgebiet „Computer<br />
Support Cooperative Work“<br />
Der Markt für Bürokommunikationssoftware erlebt zum gegenwärtigen Zeitpunkt einen<br />
erneuten Wachstumsschub. War bis Ende der 80er Jahre die Unterstützung von Einzelfunktionen<br />
(z. B. Tabellenkalkulation, Textverarbeitung) das Ziel der Anstrengungen, so<br />
liegt der Erfolg dieser Systeme gerade in der Unterstützung komplexer Arbeitsabläufe.<br />
Dies zeigt sich besonders auf der Arbeitsplatzebene, wo die verschiedenen am Markt<br />
vorherrschenden Office-Systeme (z. B. „Microsoft Office“, „Lotus Smart Suite“) mit<br />
einer Vielzahl von Funktionen eine integrierte und verzahnte Bearbeitung von Doku-<br />
menten, Planung von Terminen und Aufgaben etc. ermöglichen.<br />
Darüber hinaus werden im Bereich des teamorientierten Arbeitens eine Vielzahl von<br />
Funktionen zur Koordination, Kommunikation und Kooperation von Mitarbeitern eines<br />
Unternehmens angeboten [vgl. Deiters W., S. 30 ff.].<br />
Unter dem Stichwort „Computer Support Cooperative Work“ (CSCW) sind seit Mitte der<br />
achtziger Jahre vielfältige Forschungsanstrengungen unternommen worden, aus denen<br />
sich verschiedene IT-basierte Lösungen (Groupware bzw. CSCW-Applikationen 1 ) entwickelt<br />
haben. Diese unterstützen bzw. ermöglichen erst die effektive Teamarbeit (Gruppenarbeit).<br />
1 Groupware bzw. CSCW-Applikationen sind aus Software und eventuell spezifischer Hardware bestehende Systeme,<br />
durch die Gruppenarbeit unterstützt oder ermöglicht wird [Teufel 1996, S. 22].
Grundlagen Seite 5<br />
Die Ziele der CSCW-Forschung erstrecken sich von der Verbesserung der Zusammenarbeit<br />
von Menschen durch den Einsatz von Informations- und Kommunikationssystemen<br />
bis hin zur Steigerung der Effizienz und Flexibilität [vgl. Hasenkamp/Syring 1994, S.15].<br />
CSCW-Anwendungen integrieren meist mehrere Funktionen zur Unterstützung der<br />
Gruppenarbeit, welche die Klassifikation der einzelnen Systeme sehr schwierig gestalten.<br />
Innerhalb der Gruppen sind die Kommunikationsprozesse die Grundlage jeder Gruppenarbeit.<br />
Sie werden durch die CSCW-Anwendungen mit verschiedenen Techniken unterstützt.<br />
Die Verwendung unterschiedlicher Techniken legt daher die Klassifikation aus<br />
technologischer Sicht nahe [vgl. Teufel 1996, S.23].<br />
Eine mögliche Einteilung der Systeme kann nach dem Kriterium „Überbrückung von<br />
Raum und Zeit“ vorgenommen werden.<br />
asynchron<br />
synchron<br />
Zeit<br />
verteilte<br />
Hypertext-<br />
Systeme<br />
Sitzungs- und<br />
Entscheidungsunterstützungssysteme<br />
Workflow-<br />
Management-<br />
Systeme<br />
elektronische<br />
Postsysteme<br />
spezielle<br />
Datenbanken<br />
Gruppeneditoren<br />
benachbart entfernt<br />
Bulletin Board<br />
-Systeme<br />
Video- bzw.<br />
Desktop-Konferenzen<br />
Raum<br />
Abbildung 1: Klassifikation von CSCW-Systemen gemäß der zeitlichen und<br />
räumlichen Verteilung [vgl. Teufel 1996, S. 41]<br />
Workflow-Management-Systeme lassen sich aufgrund ihrer Merkmale (zeitversetzte,<br />
sequentielle Verarbeitung) in den Bereich der CSCW-Systeme einordnen, die an einem<br />
Ort (benachbart) und zu unterschiedlichen Zeiten (asynchron) die Gruppenarbeit ermöglichen.
Grundlagen Seite 6<br />
Eine weitere Unterteilung dieses Bereiches kann anhand des Strukturierungsgrades der<br />
kooperativen Tätigkeit vorgenommen werden. Dabei steht beim Workflow Management<br />
der Prozeßgedanke der festgelegten, automatisierten Arbeitsabläufe im Vordergrund,<br />
während beim Workgroup Computing der Schwerpunkt in der Unterstützung der Gruppen<br />
bei der Durchführung ihrer Arbeitstätigkeiten liegt. Diese werden meist in Eigenverantwortung<br />
und Selbstorganisation durchgeführt und erlauben somit eine größere Flexibilität.<br />
Es darf aber nicht versucht werden, die Flexibilität und Strukturiertheit unabhängig<br />
voneinander zu betrachten, weil dies an der Realität vorbei zur Entwicklung von<br />
Insellösungen führen könnte. Vielmehr müssen beide Aspekte in die Gestaltung von<br />
CSCW Systemen einfließen [vgl. Hasenkamp/Syring 1994, S. 26 ff].<br />
In diesem Umfeld entstehen, je nach Art der Aufgabe, ähnliche Anwendungen, die sich<br />
durch ihre Zielsetzung unterscheiden. So liegt der Schwerpunkt der Workflow-Management-Systeme<br />
bei der Ausführung von Prozessen, während die Unterstützung von Pro-<br />
jekten hinsichtlich Terminabsprachen, Kalkulationen etc. den Kernpunkt von Projekt-<br />
Management-Systemen bildet. Dokument-Management-Systeme unterstützen ihrerseits<br />
die Bewältigung der Masse an Dokumenten, Tabellen und Grafiken durch den Einsatz<br />
von Dokumenten-Management- und Ablagesystematik, Recherche-Funktionalität und<br />
Zugriffsschutz um eine effiziente Verwaltung der Daten zu ermöglichen [vgl.<br />
Koch/Ziegler 1996, S. 25 ff.].<br />
Zusätzlich zu den Kriterien, die Koch/Ziegler zur Unterscheidung von CSCW-Systemen<br />
definieren, können CSCW-Anwendungen auch noch nach den Aspekten der Kommuni-<br />
kation, Kooperation und Koordination klassifiziert werden. Die Kommunikationskomponente<br />
beinhaltet dabei sowohl die Informationsverteilung als auch die fortlaufende Kommunikation<br />
der Gruppenmitglieder untereinander. Mit der Kooperationsfähigkeit wird in<br />
diesem Zusammenhang die Fähigkeit und Bereitschaft zur Zusammenarbeit und zur Unterordnung<br />
in das Team verstanden. Diese soll zum Erreichen der Ziele führen. Um diese<br />
Ziele schnell und effizient zu erreichen, benötigt die Gruppe die Koordination der Gruppenmitglieder.<br />
Je nach Gewichtung der Kriterien können die verschiedenen CSCW-Anwendungen positioniert<br />
und zu Systemklassen zusammengefaßt werden. In der Systemklasse des Workgroup-Computing<br />
liegt der Schwerpunkt auf der Kooperationsunterstützung, in der
Grundlagen Seite 7<br />
Workflow-Management-Klasse dagegen auf der Koordination- und Kommunikationsunterstützung.<br />
Koordinationsunterstützung<br />
Workflow-<br />
Management-<br />
Werkzeuge<br />
spez.<br />
Datenbanken<br />
Kommunikationsunterstützung<br />
E-Mail<br />
Planungssysteme<br />
Videokonferenzsysteme<br />
Bulletin<br />
Board-<br />
Systeme<br />
verteilte<br />
Hypertext-<br />
Systeme<br />
EntscheidungsundSitzungsunterstützungs-<br />
Systeme<br />
Gruppen-<br />
Editoren<br />
Systemklasse<br />
Kommunikation<br />
Workflow Management<br />
Workgroup Computing<br />
Kooperationsunterstützung<br />
Abbildung 2: Klassifikation nach Unterstützung [vgl. Teufel 1996 S.41<br />
Mit diesen zwei Klassifikationsschemata wird sowohl die Positionierung der Workflow-<br />
Management-Systeme innerhalb der CSCW-Forschung als auch die Abgrenzung zu anderen<br />
Anwendungen gezeigt. Für die weitere Auseinandersetzung mit diesem Thema, das<br />
den Rahmen dieser Arbeit sprengen würde, sei auf weiterführende Literatur [Hasenkamp<br />
et al. 1994], [Coleman/Khanna, 1996] hingewiesen.<br />
2.2 Interoperabilität durch Standards als Grundlage für unternehmensübergreifenden<br />
Datenaustausch<br />
Die Informationstechnologie und die daraus resultierende Kombination von Hard- und<br />
Software, die sich in den letzten Jahrzehnten rasant entwickelt hat, bildet heute die<br />
Grundlage für den Austausch von Unternehmensdaten. Dabei spielt es nur noch eine un-
Grundlagen Seite 8<br />
tergeordnete Rolle, ob die Systeme innerhalb einer Organisation an einem Standort oder<br />
in verschiedenen Organisationen an verschiedenen Standorten plaziert sind.<br />
Ein wichtiger Gesichtspunkt der Interoperabilität ist das Streben nach Kompatibilität. Die<br />
Forderungen reichen dabei von flexibler Konfiguration der Rechnersysteme über die Definition<br />
von einheitlichen Entwicklungsumgebungen bis hin zum Austausch von Programmen<br />
und Daten.<br />
Die zunehmende Vernetzung der Systeme und die grenz- und branchenüberschreitenden<br />
Anwendungen sind die vorrangigen Ziele der Bemühungen um die Interoperabilität der<br />
verteilten Anwendungen [vgl. Rechenberg/Pomberger 1997, S. 907].<br />
Interoperabilität bedeutet dabei die Fähigkeit zweier oder mehrerer Systeme (Computer,<br />
Datenbanken, Netzwerke, Software und andere Informationstechnologien), miteinander<br />
zu arbeiten und Daten auf Basis von festgelegten Methoden auszutauschen. [vgl. Nolan<br />
1998]<br />
Die Interoperabilität der Systeme wird durch die Verwendung von Standards ermöglicht.<br />
Ein Standard ist eine Sammlung von Vereinbarungen (Schnittstellen, Protokolle). Nur<br />
durch die Einhaltung der Vereinbarungen können unterschiedliche Systeme die auszutauschenden<br />
Daten interpretieren und verarbeiten.<br />
Ein weiteres Ziel der Verwendung von Standards ist die Erhaltung von möglichst vielen<br />
Freiheitsgraden bei zukünftigen Entscheidungen. Dabei stehen wichtige Schnittstellen<br />
zwischen den Komponenten nicht mehr unter der Kontrolle eines einzelnen Anbieters<br />
[vgl. Hansen 1992, S 402].<br />
Die Standards werden in unabhängigen Gremien (Normungsausschüsse oder herstellerübergreifende<br />
Konsortien) definiert und verabschiedet. Um einen Standard zu erstellen,<br />
müssen die notwendigen Schnittstellen, Protokolle, Formate und Verfahren auf Grundlage<br />
von übereinstimmenden technischen Spezifikationen formuliert werden [vgl. Rechenberg/Pomberger<br />
1997, S. 907].<br />
Neben den unabhängigen Standards existieren noch die sog. Marktstandards oder Industriestandards.<br />
Sie erlangen diesen Status dadurch, daß sie sehr weit im Markt verbreitet<br />
sind entweder aufgrund mangelnder Normen/Standards oder der marktbeherrschenden
Grundlagen Seite 9<br />
Stellungen der Hersteller. Als Beispiel können dabei die Firmen IBM und Microsoft angeführt<br />
werden.<br />
In der letzten Zeit ist aber die Tendenz festzustellen, daß auch diese Unternehmen dazu<br />
übergehen, ihre Vorstellungen über unabhängige Gremien als Standards zu etablieren<br />
[vgl. Rechenberg/Pomberger 1997, S. 911].<br />
Die Entwicklung neuer und die Überarbeitung bestehender Standards erfolgt in folgenden<br />
Gremien [vgl. Rechenberg/Pomberger 1997, S. 907 ff]:<br />
• Normungsausschüsse<br />
Die Normung ist auf regionaler, nationaler und internationaler Ebene organisiert. Auf<br />
internationaler Ebene sind die folgenden Organisationen tätig:<br />
- ISO, International Organization for Standardization, Genf<br />
- IEC, International Electrotechnical Commission, Genf<br />
- ITU-TS, International Telecommunication Union – Telecommunication Standar-<br />
dization Sector, Genf.<br />
Auf regionaler Ebene in folgenden europäischen Gremien:<br />
- CEN, Comité Européen de Normalisation, Brüssel<br />
- CENELEC, Comité Européen de Normalisation Electrotechnique, Brüssel<br />
- ETSI, European Telecommunications Standards Institute, Nizza<br />
und auf nationaler Ebene, am Beispiel Deutschlands:<br />
- DIN Deutsches Institut für Normung<br />
• Konsortien<br />
Sie bestehen aus konkurrierenden Unternehmen, die über die freiwillige Mitarbeit in<br />
diesen Arbeitsgruppen die Kompatibilität bzw. Interoperabilität ihrer Produkte sicherstellen<br />
wollen. Die Arbeit wird projektorientiert organisiert, um die Spezifikationen<br />
möglichst kurzfristig zu entwickeln und abzustimmen. Die Mitglieder verpflichten<br />
sich, die notwendigen Ressourcen zur Verfügung zu stellen. Normalerweise bestehen<br />
zwischen den Konsortien und Normungsgremien enge Verbindungen, die eine Überführung<br />
der Ergebnisse in eine Norm erleichtern.
Grundlagen Seite 10<br />
• Workshops<br />
Grundlage von Workshops ist, gleich den Konsortien, die Orientierung an konkreten<br />
Projekten. Allerdings sind sie, was die Mitwirkung anbetrifft, offener gestaltet. Die<br />
Entwicklung von OSI-Normen wird z. B. von regionalen Workshops durchgeführt. In<br />
Europa ist dafür die EWOS (European Workshop for Open Systems) gegründet worden.<br />
• Branchen und Berufsverbände<br />
Die Gremien der Branchen und Berufsverbände bestehen aus Personen, die aus individueller<br />
Motivation, aufgrund ihrer Betriebszugehörigkeit und -erfahrung Spezifikationen<br />
für die industrielle Anwendung neuer Techniken entwickeln wollen. Als Beispiele<br />
können die IEEE (Institute of Electric and Elektronic Engineers) sowie die<br />
mittlerweile weitaus bekanntere IETF 2 (Internet Engineering Task Force) genannt<br />
werden.<br />
2.3 Wissenschaftliche und industrielle Ansätze für die Interoperabilität von<br />
Workflow-Management-Systemen<br />
Im folgenden Abschnitt werden unterschiedliche Ansätze für die Interoperabilität von<br />
heterogenen Workflow-Systemen vorgestellt und kurz erläutert. Der Schwerpunkt der<br />
Untersuchung anderer Ansätze liegt im Bereich des Datenaustauschs.<br />
2.3.1 Interface 4 der Workflow Management Coalition<br />
Die Workflow Management Coalition (WFMC) wurde im Jahre 1993 gegründet. Ihr ge-<br />
hören führende Hersteller von Workflow-Management-Systemen (IBM, Microsoft,<br />
Staffware),<br />
Systemen an.<br />
Beratungsunternehmen und Anwender von Workflow-Management-<br />
Die Ziele der WFMC sind<br />
• die Verbreitung von Workflow-Management-Systemen zu fördern,<br />
2 Die IETF definiert die Standards, die für das Internet gelten. Sie wird vom Internet Architecture Board (IAB) beauf-<br />
sichtigt.
Grundlagen Seite 11<br />
• die Entwicklung von Standards für die Terminologie des Workflow-Managements<br />
im allgemeinen,<br />
• die Spezifikation und die Etablierung von Schnittstellen von Workflow-<br />
Management-Systemen.<br />
Die WFMC hat ein Referenz-Modell (siehe Abbildung 3) entwickelt, das die Definition<br />
von fünf Schnittstellen (engl. interfaces) beinhaltet. Mit dem Referenz-Modell wird ein<br />
Rahmen geschaffen, in dem die Zusammenarbeit der verschiedenen Systemkomponenten<br />
geregelt wird.<br />
Durch die „Process Definition Tools“ (dt. Modellierungswerkzeuge) können die Geschäftsprozesse<br />
analysiert und definiert werden. Diese Definitionen sollten in einem stan-<br />
dardisierten Format abgelegt werden, so daß sie zur Laufzeit abgerufen werden können.<br />
Zur Zeit existiert noch kein standardisiertes Format, was somit die Verwendung von unterschiedlichen<br />
Produkten verschiedener Hersteller noch behindert.<br />
Die modellierten Prozeßdaten werden von einer oder mehreren „Workflow-Enactment-<br />
Services“ (dt. Workflow-Laufzeitumgebungen) zur Laufzeit ausgewertet und ausgeführt.<br />
Die Kommunikation der Benutzer mit der Laufzeitumgebung erfolgt über die<br />
„Workflow-Client-Applications“ (dt. Workflow-Client-Applikationen). Dazu können<br />
begleitend „Invoked Applications“ (dt. Aufrufbare Applikationen) eingebunden werden,<br />
die Bearbeitungsschritte teilweise oder ganz selbständig durchführen können oder den<br />
Benutzer unterstützen.<br />
Die „Administration & Monitoring“ Tools (dt. Administrations- und Überwachungswerkzeuge)<br />
bieten vielfältige Möglichkeiten die Workflows zu kontrollieren und auszuwerten.
Grundlagen Seite 12<br />
Administration &<br />
Monitoring Tools<br />
Interface 5<br />
Workflow Client<br />
Applications<br />
Process Definition<br />
Tools<br />
Interface 1<br />
Workflow API and Interchange format<br />
Workflow<br />
Engine(s)<br />
Workflow Enactment Service<br />
Interface 2 Interface 3<br />
Invoked Applications<br />
Interface 4<br />
Workflow<br />
Engine(s)<br />
Other Workflow<br />
Enactment Service(s)<br />
Abbildung 3: Workflow Management Coalition Reference Model<br />
[WFMC 1994, S.20]<br />
Mit dem Interface 4 wurde eine abstrakte Schnittstelle konzipiert, die einen Rahmen für<br />
die Interoperabilität von Laufzeitumgebungen schaffen soll. Das Ziel der Spezifikation<br />
ist, den Herstellern von WFMS eine Experimentierbasis zur Verfügung zu stellen. Die in<br />
diesem Umfeld gemachten Erfahrungen sollen über Rückmeldungen an die Arbeitsgruppen<br />
in den zukünftigen Standard einfließen.<br />
Die Workflow Management Coalition definiert die Interoperabilität von Workflow-<br />
Management-Systemen wie folgt:<br />
“the ability of two or more workflow engines to communicate and interoperate<br />
in order to coordinate and execute workflow process instances across<br />
those engines.”[WFMC 1996, S. 6]<br />
Im Interface 4 werden zwei Möglichkeiten definiert , wie die unterschiedlichen Systeme<br />
zusammenarbeiten können.<br />
a) Die synchrone Zusammenarbeit, d.h. die Workflow-Systeme A und B kommunizieren<br />
über Techniken (COM/CORBA), die eine zeitgleiche Verarbeitung<br />
ermöglichen.<br />
b) Die asynchrone Kommunikation, d. h. die Workflow-Systeme nutzen Technologien<br />
(z.B. E-Mail), die ein zeitversetztes Arbeiten erlauben.
Grundlagen Seite 13<br />
Die Wahl der Zusammenarbeit hängt natürlich von den Parametern der Umgebung ab,<br />
wie z.B. unterschiedliche Standorte oder rechtlich getrennte Unternehmen.<br />
Die Spezifikation des Interface 4 umfaßt eine Sammlung von Befehlen („Request” und<br />
„Answer”), die mit verschiedenen Attributen erweitert werden können. Dadurch können<br />
Instanzen von Workflows in anderen Systemen verwaltet werden (Starten, Stoppen, Beenden,<br />
Informationen einholen) und die Prozeßdaten eines Workflows übertragen werden.<br />
Um die Funktionalität der abstrakten Definition zu demonstrieren, wurde die Spezifikation<br />
mit Hilfe des Multipurpose Internet Mail Extension-Formats (MIME)[s. 4.2.4] implementiert.<br />
Eine Reihe von Herstellern von Workflow-Management-Systemen hat die<br />
Funktionalität des Interface 4 im Rahmen einer Messe bereits demonstriert<br />
2.3.2 Panta Rhei<br />
Das Workflow-Management-System Panta Rhei (von Heraklit: „alles fließt“) wurde an<br />
der <strong>Universität</strong> Klagenfurt von Prof. J. Eder und Dr. H. Groiss entwickelt. Der Ansatz der<br />
Lösung ist, daß die typische Kommunikation zwischen Unternehmen durch Austausch<br />
von Dokumenten erfolgt (Formularfluß-Metapher). Für die Kooperation zwischen den<br />
Unternehmen werden Formulare weitergeleitet, die für den Geschäftsprozeß notwendige<br />
Daten enthalten [vgl. Groiss/Eder, 1996, S. 2].<br />
Dazu werden normierte und strukturierte Dokumente (UN/EDIFACT, s. 4.2.3) eingesetzt,<br />
wodurch ein hoher Grad an Interoperabilität erreicht werden kann [vgl. Groiss/Eder, 1996<br />
S. 4].<br />
Das Projekt stützt sich dabei auf Mechanismen, die das Internet bereitstellt. Die<br />
UN/EDIFACT-Dokumente werden in HTML-Formulare konvertiert und über das Hyper-<br />
Text-Transfer-Protokoll (HTTP) oder per E-Mail zwischen den Workflow-Systemen ausgetauscht<br />
(siehe Abbildung 4).
Grundlagen Seite 14<br />
Abbildung 4: System Architektur Panta Rhei [Groiss/Eder 1996, S. 7]<br />
Die Interaktion zwischen den Partnern mit Hilfe von Formularen kann auf zwei Wegen<br />
erfolgen. Ist das Ziel ein E-Mail Empfänger, so wird das komplette HTML-Formular zum<br />
Empfänger übertragen und kann dort mit geeigneten Programmen (z. B. Browsern) bearbeitet<br />
und zurückgesendet werden. Wird das Formular direkt an eine Workflow-Engine<br />
gesendet, so werden nur die Formulardaten übertragen. Der empfangende Server überprüft<br />
in diesem Fall anhand der EDIFACT-ID, ob das Formular bekannt ist und welche<br />
Aktionen sich daraus ableiten (z. B. Starten eines Workflows). Unbekannte Formulartypen<br />
werden einem Posteingangsbearbeiter zugewiesen. Die Voraussetzung für diese Art<br />
der Zusammenarbeit ist die Übereinstimmung der Formularstrukturen auf beiden Seiten<br />
[vgl. Groiss/Eder, 1996, S 4 ff.].<br />
Bei der Umsetzung des EDIFACT-Standards wird nur die Struktur der Dokumente übernommen,<br />
jedoch eine andere Syntax verwendet. Somit bleibt die Repräsentation mittels<br />
HTML jedem Workflow-System selbst überlassen, z. B. Benennung der Felder, Beschriftung<br />
und Erläuterung der Felder.<br />
Das folgende Beispiel zeigt ansatzweise eine Umsetzung der EDIFACT-Struktur in ein<br />
HTML-Dokument.
Grundlagen Seite 15<br />
Segmente Erklärung<br />
UNH+data‘<br />
AAA+data‘<br />
BBB:1+data‘ Item 1 von BBB<br />
BBB:2+data‘ Item 2 von BBB<br />
Abbildung 5: Auszug aus einem EDIFACT-Dokument<br />
[vgl. Groiss/Eder 1996, S. 5]<br />
EDIFACT-Dokumente bestehen aus einer Reihe vordefinierter Segmente. Diese Segmente<br />
bestehen aus einem TAG – dem Namen des Segments – und den dazugehörigen<br />
Daten. Diese werden durch + und ´ umschlossen, z. B. sind in Abbildung 5 AAA und BBB<br />
Datensegmente.<br />
<br />
.<br />
.<br />
<br />
.<br />
.<br />
UNH: <br />
AAA: <br />
BBB: <br />
<br />
.<br />
.<br />
<br />
<br />
Abbildung 6: Umsetzung von EDIFACT in HTML [vgl. Groiss/Eder 1996, S. 6]<br />
Die Verwendung des EDIFACT-Standards beschränkt die Zusammenarbeit der<br />
Workflow-Systeme auf die vorhandenen, definierten Formulare. Darüber hinaus ist der<br />
Informationsfluß nur möglich, wenn beide Seiten innerhalb der EDIFACT-Norm eigene<br />
Formulare entwickeln.<br />
Das System verfügt über einen Zugang per Webbrowser, um sich Informationen über den<br />
Status der Workflows zu verschaffen.
Grundlagen Seite 16<br />
Abbildung 7: Webzugriff auf Panta Rhei [Groiss/Eder 1996, S. 8]<br />
Die Erstellung und Steuerung von Workflows erfolgt mit einer Beschreibungssprache;<br />
ein Austausch dieser Beschreibungen ist nicht vorgesehen.<br />
2.3.3 Workconnector<br />
Der Workconnector wurde im Rahmen eines Projekts im Bereich der Abfallentsorgung<br />
von Thorsten Wewers und Christoph Wargitsch [vgl. Wewers/Wargitsch 1998] entwi-<br />
ckelt. Dem Projekt liegt der Arbeitsprozeß zwischen Kunden, Entsorgungsunternehmen<br />
(Sonderabfall Entsorgung Franken, SEF, Gesellschaft zur Entsorgung von Sondermüll in<br />
Bayern, GSB) und dem Landesamt für Umweltschutz (LFU) zugrunde. Die Kunden, die<br />
ihren Abfall entsorgen wollen, füllen entsprechende Formulare aus und senden sie an die<br />
Versorgungsunternehmen. Diese überprüfen die Formulare auf Vollständigkeit und klären<br />
zusätzliche Fragen direkt mit den Kunden. Die vollständig ausgefüllten Formulare<br />
werden dann dem LFU vorgelegt, das die notwendigen Genehmigungen erteilt.<br />
Um diesen Prozeß elektronisch abzubilden, werden unterschiedliche Produkte eingesetzt.<br />
Seitens der SEF wurde ein Workflow-Management-System mit Hilfe von Lotus Notes<br />
4.5 realisiert. Die LFU hat bereits das Produkt Business Flow des Herstellers COI GmbH<br />
(Herzogenaurach) im Einsatz, das um die notwendige Funktionalität erweitert wurde. Mit
Grundlagen Seite 17<br />
Hilfe des Workconnectors werden die unterschiedlichen Workflow-Systeme auf Basis<br />
eines E-Mail-Servers verbunden. Alle am Prozeß beteiligten Systeme erhalten einen eigenen<br />
Workconnector.<br />
Die Daten der Vorgänge werden in Arbeitsmappen organisiert. Verläßt eine Arbeitsmappe<br />
die interne Arbeitsumgebung, so wird sie über den Workconnector mittels E-Mail versendet.<br />
Die E-Mail besteht aus einem Steuerungsteil (siehe Abbildung 8) und den aktuellen<br />
Daten. Über das Format in dem die Daten der Arbeitsmappen übertragen werden,<br />
wird innerhalb der Publikationen [vgl. Wewers/Wargitsch 1998, S. 6] keine Aussage gemacht.<br />
StartofMail<br />
NameofProcess: ena_LFU<br />
Request: start<br />
Mode: NIL<br />
Parameter NIL<br />
ReplyAdress blfow@coi.ina.de<br />
Abbildung 8: Steuerinformation des Workconnectors<br />
[Wewers/Faisst 1996, S. 174]<br />
Die Funktionen der Steuerungsmail umfassen das Starten eines Workflows, die<br />
Abschlußbenachrichtigung sowie die Aktivitäten-Synchronisation. Das Format der Steuerungsinformationen<br />
ist zur Zeit noch proprietär, es soll jedoch in die Spezifikation der<br />
Workflow Management Coalition überführt werden. [vgl. Wewers/Wargitsch 1998, S. 6].<br />
2.4 Formate für Übertragungscontainer<br />
Seit der Entstehung der Datenverarbeitung und mit dem Beginn der Datenspeicherung<br />
werden Formate eingesetzt. Dabei hat das Wort Format mehrere Bedeutungen.<br />
Eine Bedeutung kommt aus dem Bereich der Dokumentengestaltung. Das Format eines<br />
Dokuments, z. B. Geschäftsbrief, Broschüre, beinhaltet die Seitengröße, die Randeinstellungen,<br />
das Format eines Absatzes, den Zeilenabstand, den Abstand zum Vor- und<br />
Nachabsatz, die Ausrichtung des Absatzes (z. B. Blocksatz). Das Format von Zeichen<br />
kann die Größe, Schriftart etc. umfassen.
Grundlagen Seite 18<br />
Eine andere Definition von Format wird von Hansen in Verbindung mit Daten vorgenommen:<br />
„Im EDV-Vokabular werden als Daten 3 oft nur jene Angaben bezeichnet,<br />
die in einem für die maschinelle Interpretation besonders geeigneten,<br />
festvereinbarten Aufbau aufgezeichnet sind. Solche Daten bezeichnet man<br />
als formatierte Daten“ [vgl. Hansen 1992, S. 14].<br />
Im Rahmen dieser Diplomarbeit wird ein Format als der strukturierte Aufbau von Daten<br />
definiert. Diese Daten können in verschiedener Art und Weise gespeichert, gelesen oder<br />
übertragen werden. Mit dem Format werden die Syntax (Ordnung von Zeichen und Zeichenkombinationen)<br />
und die Semantik (Bedeutung und Inhalt der Zeichenfolge) festgelegt.<br />
Im Bereich der Datenverarbeitung existieren verschiedene Ebenen, die unterschiedliche<br />
Formate benötigen.<br />
Die physikalische Ebene, z. B. das Speichern von Dateien auf Festplatte, erfordert ein<br />
physikalisches Format (Definition von Spannungen), um die Daten in Form von Bits auf<br />
die Festplatte schreiben zu können.<br />
Auf der logischen Ebene, z. B. Dateiebene, werden Formate benötigt, um die Daten einer<br />
Anwendung (Textverarbeitung, Datenbanken, Bildbearbeitung) in der für die Anwendung<br />
notwendigen Art und Weise speichern zu können.<br />
Aufgrund der Vielzahl von Anwendungen und der Notwendigkeit unterschiedliche Anforderungen<br />
zu erfüllen, haben sich im Laufe der Zeit eine Vielzahl von verschiedenen<br />
Formaten herauskristallisiert.<br />
• Formate für Dokumente<br />
Im Bereich der Dokumente, die neben Text, Gestaltungsinformationen (Formatierung),<br />
Grafiken, bewegte Bilder und Audioinformationen enthalten können, sind<br />
zur Zeit nur wenige genormte Standardformate definiert. An erster Stelle sind dabei<br />
die Structured General Markup Language (SGML, DIN EN 28879) und die<br />
3 Daten stellen Informationen (d.h. Angaben über Sachverhalte und Vorgänge) aufgrund bekannter oder unterstellter<br />
Abmachungen in einer maschinell verarbeitbaren Form dar [vgl. Hansen, 1992, S.13].
Grundlagen Seite 19<br />
Open Document Architecture (ODA, DIN ISO 8613) zu nennen. Eine weitere<br />
Implementierung, die im Internet eine sehr starke Verbreitung erfahren hat, ist die<br />
Hyper Text Markup Language (HTML).<br />
Im Zusammenhang mit Textverarbeitungsprogrammen haben verschiedene Softwarehersteller<br />
eigene Spezifikationen für die Darstellung und den Austausch von<br />
formatiertem Text entwickelt. Beispiele dafür sind das Portable Document Format<br />
(Adobe) und das Rich-Text-Format (Microsoft).<br />
Ein weitverbreiteter genormter Standard für den Austausch von Geschäftsdokumenten<br />
ist UN/EDIFACT. Dabei werden vordefinierte Dokumentstrukturen<br />
verwendet, um Geschäftsdaten zwischen Unternehmen auszutauschen.<br />
• Zeichensätze<br />
Im Gegensatz zu den Dokumentformaten hat hier eine frühzeitige Normung stattgefunden.<br />
Im Großrechnerbereich wird der EBCDIC-Zeichensatz und im Personal<br />
Computer Umfeld der ASCII-Zeichensatz eingesetzt. Auf der Basis dieser beiden<br />
Zeichensätze werden eine Großzahl weiterer Formate (HTML, SGML) realisiert.<br />
• Multimediaformate<br />
Seit der Einführung des Personal Computers (PC) als Arbeitsmittel und der Entwicklung<br />
grafischer Benutzeroberflächen (Windows, OS/2, Macintosh) mit mul-<br />
timedialen Funktionalitäten (Audio, Video) haben sich verschiedene Standards im<br />
Bereich der Multimediaformate entwickelt. Dabei handelt es sich in den meisten<br />
Fällen um herstellerspezifische Formate mit unterschiedlichem Verbreitungsgrad.<br />
Für die Darstellung von Bildern seien als Beispiel JPEG (Joint Photographic Experts<br />
Group) und TIFF (Tagged Image File Format), für Video und Audio MPEG<br />
(Motion Picture Expert Group) sowie Microsoft’s AVI (Audio Visual Interface)<br />
angeführt.<br />
Die Daten, die das Ergebnis der Arbeit mit Programmen sind, benötigen Informationscontainer<br />
als Zwischenspeicher. Dadurch wird die Wiederverwendung der Daten gesichert.<br />
Als Informationscontainer können physikalische Objekte (Datei auf Festplatte)<br />
oder Datenströme (Übertragung von Daten zwischen Sende- und Empfangsanwendung)<br />
genutzt werden
Grundlagen Seite 20<br />
Ist das Designziel des Formats die Weitergabe oder Übertragung von Daten über die<br />
Systemgrenzen hinaus, so spricht man von einem Austauschformat.<br />
Die Aufgabe dieser Diplomarbeit besteht darin, ein Austauschformat zu finden, mit dem<br />
Informationen zwischen heterogenen Workflow-Systemen optimal übertragen werden<br />
können. Ausgangsbasis ist das Message-Objekt, das auf Basis der proprietären Lotus<br />
Notes Compound Document-Struktur beruht und mit dem bisher die Weitverkehrskommunikation<br />
zwischen den homogenen Workflow-Management-Systemen WAGS reali-<br />
siert ist
Arbeitsumgebung Seite 21<br />
3 Arbeitsumgebung<br />
Im folgenden Kapitel werden die zugrundeliegende Arbeitsumgebung Lotus Notes und der<br />
damit realisierte WAGS-Prototyp vorgestellt und näher erläutert.<br />
3.1 Lotus Notes als Entwicklungsplattform<br />
Die Realisierung des WAGS-Prototyps und des Prototyps dieser Arbeit erfolgte auf der<br />
Basis des Programms Lotus Notes 4.6, das aufgrund seiner Architekturmerkmale besonders<br />
als Plattform für Groupwareanwendungen geeignet ist [vgl. Nastansky et al. 1995, S. 279].<br />
Die Anforderungen an eine solche Plattform sind:<br />
• verteilte Datenbanken,<br />
• Dokumentenbearbeitung mit Compound Document und natürlichen Datentypen,<br />
• integrierte Gruppenkommunikation,<br />
• Text- und Dokumentenmanagement,<br />
• Import- und Export von Daten,<br />
• Elektronic Mail (E-Mail),<br />
• Sicherheitskonzepte,<br />
• Entwicklungsumgebung.<br />
Nachfolgend werden die für diese Diplomarbeit wichtigen Merkmale erläutert.<br />
Zum Zeitpunkt der Entwicklung lag Lotus Notes in der Version 4.6a vor. Das Programm<br />
wurde als Client-Server-Applikation 4 konzipiert. Lotus Notes ist für alle gängigen Betriebssystemplattformen<br />
(Windows NT/95, Novell, OS/2, Unix, MVS) sowohl in der Server-<br />
als auch Client-Version verfügbar, so daß eine durchgängige Realisierung von<br />
Groupware-Anwendungen in heterogenen Umgebungen erfolgen kann. Dies ist besonders<br />
4<br />
Man versteht darunter eine Architektur, bei der eine EDV-Anwendung einen benutzernahen Teil (Client, Frontend), der<br />
auf dem Endsystem des Benutzers abläuft, und einen von allen Benutzern gemeinsam genutzten Teil (Server, Backend)<br />
aufgeteilt ist.
Arbeitsumgebung Seite 22<br />
in Großunternehmen wichtig, die aufgrund von historischen Entwicklungen i. d. R. über<br />
mehr als eine Betriebssystem-Plattform verfügen.<br />
Verteilte Datenhaltung<br />
Die Informationsspeicherung erfolgt in replizierbaren, verteilten, dokumentorientierten<br />
Datenbanken, die auf Server oder auch auf lokalen Rechnern (Standgeräte, Notebooks)<br />
abgelegt werden können.<br />
Compound Document<br />
Innerhalb der Datenbanken werden die Informationen mittels Compound Documents (Dokumente)<br />
gespeichert und verwaltet. Sie stellen eine proprietäre Rahmenstruktur zur Verfügung,<br />
in der unstrukturierte und strukturierte Informationen in Datenfeldern abgelegt<br />
werden können.<br />
Die Datentypen reichen dabei von einfachen Typen, wie z. B. Text, Zahlen, Datum, bis hin<br />
zum komplexen Datentyp Rich-Text. Der Inhalt eines Rich-Text-Felds kann deshalb for-<br />
matierter Text, Sprachannotationen, Videosequenzen und Dateianhänge sein.<br />
In der internen Struktur stellen Compound Documents objektorientierte Technologien zur<br />
Verfügung, welche die Realisierung von intelligenten Dokumenten zulassen und offen sind<br />
für die Integration objektorientierter (Fremd-)Applikationen [vgl. Nastansky et al. 1995, S.<br />
281].<br />
Sicherheitssystem<br />
Die Forderung nach einem leistungsfähigen Sicherheitskonzept trägt Lotus Notes Rechnung,<br />
indem es eine große Anzahl von Sicherheitsmechanismen auf verschiedenen Ebenen<br />
bereithält. Diese reichen von einem hierarchischem Zugriffssystem über Authentizitätskontrollen<br />
und elektronischen Unterschriften bis hin zur Verschlüsselung von Daten nach<br />
dem standardisierten RSA 5 -Verfahren.<br />
5<br />
Der RSA-Standard wurde nach seinen Erfindern Ron Rivest, Adi Shamir und Leonard Adleman benannt und arbeitet<br />
mit einem Zwei-Schlüssel-Verfahren, bei dem ein öffentlicher Schlüssel (Public Key) allen bekannt ist. Mit Hilfe dieses<br />
Public Keys werden die Daten verschlüsselt und können nur mit dem privaten Schlüssel (Privat Key) wieder entschlüsselt<br />
werden.
Arbeitsumgebung Seite 23<br />
Die Zugriffe auf Lotus Notes-Dokumente können auf folgenden Ebenen kontrolliert werden:<br />
• Serverebene<br />
Es können nur Personen auf den Server zugreifen, die dafür auch zertifiziert wurden.<br />
Das Zertifikat wird in der Benutzer-ID des Anwenders fest verankert.<br />
• Datenbankebene<br />
Der Zugriff auf Datenbanken wird über sog. Zugriffskontroll-Listen geschützt. Nur<br />
eingetragene Benutzer, mit entsprechenden Rechten, können auf die Datenbank zugreifen.<br />
Dabei lassen sich zwischen verschiedenen Zugriffsstufen unterscheiden, mit denen<br />
festgelegt wird, welche Rechte der Benutzer hat und welche Aktionen er ausführen<br />
darf.<br />
• Dokumentebene<br />
Auf Dokumentenebene kann festgelegt werden, welche Aktionen ein Benutzer mit dem<br />
Dokument ausführen darf (Öffnen, Lesen, Verändern). Dabei können Rechte auf Da-<br />
tenbankebene überschrieben werden.<br />
• Feldebene<br />
Mit Hilfe der Zugriffslisten kann auf Feldebene bestimmt werden, welcher Benutzer<br />
die Felder lesen oder bearbeiten kann. Zusätzlich besteht die Möglichkeit, einzelne<br />
Felder zu verschlüsseln und die Entschlüsselung der Felder nur einem bestimmten Personenkreis<br />
zur Verfügung zu stellen.<br />
E-Mail Unterstützung<br />
Lotus Notes Mail unterstützt die Kommunikation der Anwender untereinander durch den<br />
elektronischen Transport von Dokumenten zwischen Notes Anwendern. Die Dokumente<br />
können dabei alle Datentypen enthalten. Zusätzlich können die Dokumente mit elektronischen<br />
Unterschriften versehen und verschlüsselt versendet werden.<br />
Es ist zusätzlich möglich, Nachrichten mit Hilfe von Message Transfer Agents an Empfänger<br />
außerhalb der Lotus Notes Umgebung zu versenden. Unterstützt werden z. B. Simple<br />
Message Transfer Protokoll (SMTP) für den Mailaustausch im Internet, X.400 für die<br />
Kommunikation zwischen OSI-Mailsystemen und CC-Mail.
Arbeitsumgebung Seite 24<br />
Replikationsmechanismus<br />
Eine Basisfunktionalität in Lotus Notes ist die Replikation von Datenbeständen. Erst dadurch<br />
wird es möglich, Informationen auf verschiedene Standorte zu verteilen und zu synchronisieren.<br />
Als Kommunikationskanäle stehen dabei LAN, WAN und andere Verbindungen<br />
(ISDN, Modem) zur Verfügung.<br />
Es können beliebig viele Kopien (Repliken) einer Datenbank erstellt werden. Jeder dieser<br />
Datenbanken erhält zu Identifikationszwecken eine eindeutige Replikations-ID. Während<br />
des Replikationsprozesses (Synchronisation der Datenbestände) werden lediglich die Änderungen<br />
ausgetauscht. Dabei kann die Synchronisation sowohl auf Dokumentebene als<br />
auch auf Feldebene erfolgen. Die Replikation umfaßt nicht nur den Datenabgleich, sondern<br />
auch die zusätzlich in der Datenbank eingebetteten Funktionalitäten (Masken, Program-<br />
mierung). Somit ist es möglich, Anwendungen über mehrere Standorte hinweg zu synchronisieren.<br />
Client Funktionalität<br />
Die Präsentation der Compound Documents kann seitens der Clients mit Hilfe von Forms<br />
(Formulare, Masken) erfolgen. Dabei können beliebige Datenfelder aus den Dokumenten<br />
in vielfältiger Weise in den Masken angeordnet werden. Es ist möglich mit Hilfe von ver-<br />
schiedenen Programmiertechniken Ablauflogik in die Formulare einzubetten, so daß Benutzereingaben<br />
verarbeitet werden können.<br />
Um den Inhalt einer Datenbank, die aus einer Vielzahl von Dokumenten besteht, zu präsentieren,<br />
verwendet Lotus Notes das Konzept der Views. Sie erlauben das flexible Anzei-<br />
gen durch die Auswahl von Datenfeldern aus den Feldinformationen der Datenbank und<br />
einer dynamischer Berechnung vor dem Anzeigen. Die Views erlauben somit, verschiedene<br />
Sichtweisen auf die Datenbank anzubieten und sind vergleichbar mit Abfragesprachen<br />
im Bereich der relationalen Datenbanken (SQL). Die Views können durch vielfältige Optionen<br />
sortiert und gruppiert werden.<br />
Eine weitere Möglichkeit, den Inhalt von Datenbanken zu präsentieren, sind Ordner. Im<br />
Gegensatz zu Views werden sie nicht dynamisch berechnet. Sie sind vergleichbar mit normalen<br />
Aktenordnern, mit denen ein Benutzer eine eigene Ordnung festgelegt.
Arbeitsumgebung Seite 25<br />
Programmierung<br />
Lotus Notes verfügt zur Erstellung eigener Anwendungen über ein breite Palette von Entwicklungswerkzeugen.<br />
Diese Entwicklungswerkzeuge unterscheiden sich durch den<br />
Schwierigkeitsgrad der Programmierung und die Leistungsfähigkeit der einzelnen Werkzeuge.<br />
Ungeübte Anwender können die Simple Actions (einfache Funktionen) benutzen, um einfache<br />
kleine Aufgaben zu programmieren.<br />
Mit @Functions (Formeln und Befehle) werden dem Entwickler relativ unkompliziert zu<br />
benutzende, aber bereits leistungsfähige Kommandos zur Verfügung gestellt.<br />
Mit Lotus Script 3.1 können sehr komplexe Anwendungen erstellt werden. Es handelt sich<br />
dabei um eine leistungsfähige, plattformübergreifende, objektorientierte und auf BASIC<br />
basierende Programmiersprache. Dabei ist eine weitgehende Kompatibilität mit Microsoft‘sVisual<br />
Basic for Application (VBA) eingehalten worden. Der Entwickler kann sog.<br />
Script Libraries erstellen, die mit Funktionsbibliotheken auf Betriebssystemebene vergleichbar<br />
sind. Diese Funktionsbibliotheken können separat von der Anwendung gespei-<br />
chert und auf diesem Wege in andere Applikationen eingebunden werden.<br />
Neu in der Familie der Programmiersprachen ist Java. Die Implementierung von Java-<br />
Anwendungen kann dabei innerhalb von Dokumenten in Rich-Text-Feldern erfolgen oder<br />
außerhalb der Lotus Notes Umgebung. Allerdings ist die Integration in den Lotus Notes<br />
Kern noch nicht soweit fortgeschritten, daß man von einem vollständigen Ersatz von Lotus<br />
Script sprechen könnte.<br />
Eine letzte Möglichkeit Lotus Notes zu programmieren, wird durch APIs (Application<br />
Programming Interface) zur Verfügung gestellt. Dabei handelt es sich Funktionsbibliotheken<br />
auf Basis der Programmiersprachen C und C++.<br />
3.2 Wide Area Groupflow System<br />
3.2.1 Konzeption von WAGS<br />
Das Wide Area Groupflow System (WAGS) ist eine Weiterentwicklung des lokalen<br />
Workflow-Management-Systems Groupflow. Im Unterschied zum lokalen Workflow-<br />
Management, bei dem auf der Basis von Groupware lokale Büros intern wohlstrukturierten
Arbeitsumgebung Seite 26<br />
oder ad hoc Workflow betreiben, wird der strukturierte elektronische Austausch von definierten<br />
Teilmengen der Informationen aus Workflows mit externen Partner als weitverteiltes<br />
Workflow-Management definiert. [vgl. Riempp/Nastansky 1996b]<br />
Die Grundidee von WAGS besteht darin, daß die Funktionalität der lokalen Workflow-<br />
Management-Systeme hinsichtlich der Zusammenarbeit mit weitverteilten heterogenen<br />
Systemen auf Basis von Informationscontainern erweitert wird. Diese Informationscontainer,<br />
auch als Message-Objekte definiert, werden zwischen den lokalen Workflow-<br />
Systemen ausgetauscht [vgl. Riempp/Nastansky 1997, S. 485].<br />
Internes<br />
WFMS<br />
Gate-<br />
way<br />
Message<br />
Objekt<br />
Message<br />
Objekt<br />
Internes<br />
WFMS<br />
Gate-<br />
way<br />
Koordinations-<br />
Stelle<br />
Message<br />
Objekt<br />
Gateway<br />
Internes<br />
WFMS<br />
Abbildung 9: Grundidee von WAGS [Riempp/Nastansky 1996b, S. 197]<br />
3.2.2 Architektur WAGS<br />
Der Architektur der WAGS liegt ein Schichtenmodell (siehe Abbildung 10) zugrunde, das<br />
sich aus einer Komponente für das interne Workflow-Management und einer Erweiterung<br />
für die externe Anbindung zusammensetzt [vgl. Riempp/Nastansky 1997, S. 491 ff.].
Arbeitsumgebung Seite 27<br />
Infrastr.<br />
Modeler<br />
Organisationskonzepte,<br />
Geschäftsprozeßanalyse<br />
Prozeß<br />
Modeler<br />
Werkzeug-Schicht<br />
Workflow Anwendungsschicht<br />
Infrastruktur Information<br />
Workflow Repository-Schicht<br />
Basis-Umgebung<br />
Prozeß<br />
Analyzer<br />
Prozeß<br />
Hardware, Betriebssystem, LAN<br />
Gegenseitiges Broadcasting<br />
External<br />
Directory<br />
Gateway<br />
WAN<br />
External<br />
Directory<br />
Gateway des<br />
externen<br />
Partners<br />
Komponenten für internes WFM Komponenten für Wide Area WFM<br />
Abbildung 10: Architektur der WAGS-Umgebung [vgl. Riempp/Nastansky 1997,<br />
S. 491]<br />
Die unterste Schicht in diesem Modell wird durch die normalerweise vorhandene hetero-<br />
gene Infrastruktur (Hardware, Betriebssystem, LAN) gebildet. Darauf aufbauend kommt in<br />
der Basisschicht die Groupware-Anwendung Lotus Notes 4.6 zum Einsatz. Aufgrund der<br />
Leistungsmerkmale von Lotus Notes (Compound Documents, Replikation, Sicherheitsmechanismen,<br />
E-Mail) werden die Mittel zur Verfügung gestellt, die eine räumlich und zeit-<br />
lich verteilte Informationsverarbeitung erst ermöglichen.<br />
Die Workflow-Repository-Schicht beinhaltet alle Daten, die für das Workflow Manage-<br />
ment notwendig sind. In unterschiedlichen Datenbanken werden die Daten über den Aufbau<br />
der Organisation, die definierten Workflow-Prozesse sowie die eigentlichen<br />
Workflow-Daten gespeichert.<br />
Die Benutzerschnittstelle für das Workflow-Management wird innerhalb der Workflow-<br />
Anwendungsschicht abgebildet. Die WAGS-Runtime-Engine übernimmt dabei die Aufgabe,<br />
die Repository-Daten für die Bearbeitung aufzubereiten und abzuarbeiten.<br />
Für die Bearbeitung und Analyse der Repository-Daten stehen eine Reihe externer Applikationen<br />
zur Verfügung. So wird mit dem WAGS-Modeler die graphische Modellierung<br />
der verwendeten Workflows und ebenso die Verwaltung des externen Adreßbuchs (Exter-
Arbeitsumgebung Seite 28<br />
nal Directory) durchgeführt [vgl. Touchard 1997]. Die Auswertung der Workflows wird<br />
mit Hilfe des WAGS-Analyzers ermöglicht, der die vorhandenen Tracking Informationen<br />
auf unterschiedliche Weise analysieren und statistisch auswerten kann [vgl. Hein 1997].<br />
Der Einsatz dieser Werkzeuge und Anwendungen erfolgt unter der Berücksichtigung der<br />
bestehenden Organisationskonzepte und Geschäftsprozesse und ist im Normalfall das Ergebnis<br />
einer umfassenden Untersuchung und Optimierung.<br />
Die interne Komponente wird aus Sicherheits- und Vertraulichkeitsgründen durch den Einsatz<br />
des External Directory und des Gateways von der Außenwelt abgeschirmt. Alle Adreßinformationen,<br />
die für die Abwicklung eines Workflows eines Partners wichtig sind, werden<br />
im External Directory veröffentlicht. Die Übermittlung der Workflow-Daten in Form<br />
eines Message-Objekts, werden durch die Gateway-Datenbank vorgenommen. Innerhalb<br />
der Gateway-Datenbank werden die notwendigen Operationen zum Schutz der internen<br />
Komponenten und zur Interoperabilität mit anderen Workflow-Systemen durchgeführt.<br />
Die für die WAGS-Umgebung wichtigen Daten werden innerhalb der Workflow-<br />
Repository-Schicht verwaltet. Deshalb wird im nächsten Abschnitt das WAGS Repository<br />
besprochen.<br />
3.2.2.1 Die Komponenten der Workflow-Repository-Schicht<br />
Innerhalb der WAGS-Architektur bildet das WAGS-Repository die zentrale Kommunikation<br />
und Datenhaltungskomponente. Alle externen Anwendungen (WAGS-Modeler,<br />
WAGS-Analyzer) und die WAGS-Engine greifen auf die darin enthaltenen Daten zu. Das<br />
Repository besteht aus fünf Datenbanken, die die unterschiedlichen Informationen nach<br />
Bedeutung und Funktion getrennt speichern [vgl. Saliger 1998, S. 48 ff.].
Arbeitsumgebung Seite 29<br />
GroupOrga Modeler<br />
File Edit Tools Settings<br />
Organization<br />
Structure<br />
Database<br />
Routing<br />
Specification<br />
Database<br />
WAGS Modeler<br />
File Edit Tools Settings<br />
Process Ext. Directory<br />
Application<br />
Database<br />
External<br />
Directory<br />
WAGS Analyzer<br />
File Edit Views Statistics<br />
Tracking<br />
Database<br />
WAGS Repository WAGS Runtime Engine<br />
WAGS Repository<br />
MO<br />
Gateway<br />
Database<br />
Content<br />
Management<br />
Abbildung 11: WAGS-Repository [vgl. Saliger 1998, S. 49]<br />
Eine Ausnahme stellt die Gateway Datenbank dar. Sie regelt die Kommunikation zwischen<br />
den heterogenen Systemen durch die Erstellung abgehender und Bearbeitung eingehender<br />
Message-Objekte.<br />
Application Database<br />
Die Application Database (dt. Anwendungsdatenbank) ist die zentrale Schnittstelle zwischen<br />
Benutzer und Workflow-Management-System. In dieser Anwendungsdatenbank sind<br />
alle Workflows gespeichert, ebenso die persönliche Arbeitsumgebung des Benutzers.<br />
Die Strukturen und Eigenschaften von Workflows, erzeugt durch den WAGS-Modeler,<br />
werden in der Routing Specification Database (dt. Ablaufdatenbank) abgelegt. Mit diesen<br />
Daten führt die WAGS-Runtime-Engine die Vorgangsbearbeitung durch.<br />
Organization Structure Database<br />
Die Organizsation Structure Database (dt. Organisationsdatenbank) enthält die Aufbaustruktur<br />
eines Unternehmens. Die Struktur setzt sich aus Einzelpersonen zusammen, die<br />
in verschiedenen Formen (Abteilungen, organisationsweite Gruppen) organisiert sein kön-
Arbeitsumgebung Seite 30<br />
nen. Weiterhin besteht die Möglichkeit mittels Rollen mehrere Personen mit gleichen oder<br />
ähnlichen Aufgabenbereichen zusammenzufassen. Die Daten können mit Hilfe des<br />
GroupOrga-Modeler manipuliert werden. Der GroupOrga-Modeler ist eine Komponente<br />
des WFMS GroupFlow, der eine graphische Bearbeitung der Struktur ermöglicht.<br />
Tracking Database<br />
Mit Hilfe der in der Tracking Database (dt. Tracking Datenbank) gesammelten Information<br />
können verschiedene Auswertungen erstellt werden. Die Tracking-Daten geben Auskunft,<br />
welche Bearbeitungsstation ein Vorgang durchlaufen hat und wieviel Zeit dafür verwendet<br />
wurde. Der WAGS-Analyzer wertet diese Daten ex post aus. Aufgrund der Ergebniss können<br />
Maßnahmen eingeleitet werden, die zur Verbesserung der Durchlaufzeit eines Vorgangs<br />
führen. Die anfallenden Daten werden, je nach Anforderung, entweder direkt oder<br />
verzögert an die Tracking Datenbank übermittelt. Dabei können die Daten aus dem internen<br />
Workflow stammen oder auch aus dem organisationsübergreifenden Umfeld per E-<br />
Mail gesammelt werden.<br />
External Directory<br />
Im External Directory (dt. externes Adreßbuch) werden die für die Partnerorganisation<br />
wichtigen Informationen (Adressen, Kommunikationskanal etc.) als Verbindungsknoten<br />
gespeichert. Diese Daten ermöglichen dann die Kommunikation mit Hilfe der Message<br />
Objekte. Aus Sicherheitsgründen besteht der Eintrag für eine Organisation aus einem internen<br />
(Internal Routing Information, IRI) und einem externen (External Routing Information,<br />
GRI) Adreßteil.<br />
Der interne Teil der Adresse (IRI) kann nur vom internen Workflow-Management-System<br />
genutzt werden. Über ihn werden die eingehenden Message-Objekte anhand der mitgelieferten<br />
GRI der entsprechenden Workflow-Klasse bzw. Aufgabe zugeordnet.<br />
Der öffentliche Teil der Adresse beinhaltet die Beschreibung des abhängigen Workflows<br />
sowie die Spezifikationen der Kommunikationsschnittstellen. Die Spezifikation umfaßt<br />
eine Feldbeschreibung der benötigten und zurückzuliefernden Felder, die entweder direkt<br />
in der GRI als textbasierte Liste oder als Verweis auf einen Format-Server gespeichert<br />
werden. Der Format-Server ist eine Sammlung von standardisierten Dokumenttypen (Angebot,<br />
Bestellung), die auch als Kopie im External Directory vorliegen können.
Arbeitsumgebung Seite 31<br />
Diese Zweiteilung sichert eine weitestgehende Abschirmung der internen Daten vor den<br />
beteiligten Partnerorganisationen.<br />
Gateway Database<br />
Die Funktion der Gateway-Datenbank besteht darin, einen ordnungsgemäßen Austausch<br />
der Message-Objekte zwischen selbständigen Organisationen zu gewährleisten. Anhand<br />
der GRI werden die zur Übermittlung der Message-Objekte notwendigen Informationen<br />
aus dem External Directory ermittelt.<br />
Die Aufbereitung der ein- und ausgehenden Message-Objekte wird als Content-<br />
Management bezeichnet. Aus den ausgehenden Message-Objekten werden die Adressierung<br />
und internen Steuerungsinformationen entfernt sowie ausgewählte Nutz- und<br />
Workflow-Felder hinzugefügt. Handelt es sich bei dem externen Workflow-Management-<br />
System nicht um Lotus Notes, muß eventuell eine Formatkonvertierung (SGML, XML,<br />
HTML) vorgenommen werden.<br />
Compound<br />
Document<br />
Filterungs-<br />
Prozeß<br />
Inhalt<br />
Interne<br />
Darstel.<br />
Pflicht-<br />
Felder<br />
Ausgewählte<br />
Nutz-Felder<br />
Workflow-<br />
Felder<br />
Absender<br />
Empfänger<br />
Datum-Zeit-Stempel<br />
Betreff<br />
......<br />
Content Blöcke<br />
Einzelne Felder, z.B.:<br />
Brieftext, Grafik-Objekt,<br />
Budget-Tabelle,<br />
Versicherungs-Nr.<br />
.....<br />
Tracking Logik<br />
Routing Logik<br />
Status Management<br />
......<br />
Externe<br />
Darstel.<br />
Format-<br />
konvertierung:<br />
EDIFACT<br />
Internet e-mail<br />
HTML-mail<br />
XML<br />
Notes-mail<br />
MAPI, VIM<br />
......<br />
Message<br />
Objekt<br />
Abbildung 12: Content Management [Riempp/Nastansky 1996b, S. 202]<br />
Eingehende Message-Objekte werden nach verschiedenen Gesichtspunkten (Formate, Sicherheitskontrollen)<br />
bearbeitet und mit Hilfe des in der GRI abgelegten IRI an die<br />
Workflow-Engine weitergeleitet. Die nachfolgende Abbildung 13 zeigt den Fluß der Mes-
Arbeitsumgebung Seite 32<br />
sage-Objekte, das Zusammenspiel zwischen den verschiedenen Datenbanken und ansatzweise<br />
die Funktion der Gateway-Datenbank.<br />
Wide Area GroupFlow - connection of organizations<br />
Organization A Organization B<br />
Ext. directory<br />
address<br />
(GRI)<br />
Sending<br />
Gateway<br />
replication<br />
(GRI)<br />
Message<br />
Object<br />
sub-<br />
Ext. directory<br />
processes<br />
address<br />
(IRI)<br />
main<br />
processes<br />
Receiving<br />
Gateway<br />
Black<br />
box<br />
Grey<br />
box<br />
tasks<br />
role person(s)<br />
White<br />
box<br />
Abbildung 13: Fluß der Message-Objekte und Aufgabe der Gateway Datenbank<br />
3.2.2.2 Struktur eines Message-Objekts<br />
[Riempp/Nastansky 1997, S. 279]<br />
Die Basis für die Kommunikation mit anderen externen Workflow-Management-Systemen<br />
bildet das Message-Objekt. Es beinhaltet alle Informationen (Daten und Steuerungsinfor-<br />
mationen), die für die Interoperabilität notwendig sind. Diese Informationen bestehen aus<br />
Listenfeldern zur Eintragung der einzelnen Stationen des Bearbeitungswegs (routing logic),<br />
Protokollierungsfeldern zur nachträglichen Kontrolle des Workflow-Verlaufs (tracking<br />
logic), Statusfeldern zur Darstellung des Zustands und der jeweiligen Aufgaben an<br />
einer Bearbeitungsstation (status logic) sowie Identifikationsfeldern zur eindeutigen Kennzeichnung<br />
von Workflows [vgl. Riempp/Nastansky 1996b, S. 6].
Arbeitsumgebung Seite 33<br />
Message-Objekt<br />
form<br />
content<br />
Repräsentation:<br />
Methoden:<br />
Eigenschaften:<br />
Anordnung der Felder, grafische u. Bedienungselemente,<br />
Anzeigen u. Verbergen von Eigenschaften, Dialoge etc.<br />
Ereignisgesteuert: Zugriff u. Veränderung von Eigenschaften,<br />
Benutzerführung, Starten externer Prozesse, etc.<br />
Kundenadresse Vertriebsinf. Versicherung 1<br />
Feld 1 Feld 2 Feld 3 Feld 4<br />
Feldname Feldtyp Inhalt<br />
Content Blöcke<br />
Abbildung 14: Struktur eines Message-Objekts [vgl. Riempp/Nastansky 1996b,<br />
S.200]<br />
Die Struktur des Message-Objekts (siehe Abbildung 14) ist in drei Teile aufgeteilt. Mit<br />
Hilfe der Form (Formular), bestehend aus Repräsentation und Methoden, kann das Message-Objekt<br />
auf der Empfängerseite innerhalb des Workflow-Management-Systems bear-<br />
beitet werden. Die Präsentationsinformationen regeln dabei den Aufbau und die Anzeige<br />
auf dem Bildschirm, die Methoden übernehmen die Benutzerführung hinsichtlich des<br />
Zugriffs und der Veränderungen von Informationen und dem eventuellen Starten von externen<br />
Applikationen.<br />
Die eigentlichen Workflow-Daten (Content) bestehen aus verschiedenen Contentblöcken,<br />
die wiederum aus verschiedenen Feldern bestehen. Die Felder werden über den Feldnamen<br />
und Feldtyp spezifiziert und mit dem eigentlichen Inhalt verbunden. Die Datentypen der<br />
Felder können strukturierte Daten (Text, Zahl, Datum, Schlüssel) oder auch unstrukturierten<br />
Text (Rich-Text) umfassen.<br />
Diese Struktur auf der Basis des proprietären Lotus Notes-Verbunddokumentes (Compound<br />
Document) ermöglicht den Datenaustausch zwischen weitverteilten WAGS-<br />
Systemen.
Arbeitsumgebung Seite 34<br />
Für eine ausführliche Beschreibung der WAGS Architektur und die Funktionalitäten der<br />
einzelnen Komponenten sei an dieser Stelle auf die Diplomarbeit von Dietmar Saliger<br />
[Saliger 1998] verwiesen.
Austauschformate Seite 35<br />
4 Austauschformate für den Transport von Workflow-Daten<br />
Im vorangegangenen Kapitel wurden die Arbeitsumgebungen Lotus Notes und WAGS<br />
vorgestellt sowie der Datenaustausch zwischen WAGS Systemen auf Basis von Message-<br />
Objekten in der homogenen Lotus Notes Umgebung erläutert. Im folgenden Kapitel werden<br />
die Anforderungen an einen Datenaustausch zwischen heterogenen Workflow-<br />
Systemen mit Hilfe von Austauschformaten daraus abgeleitet sowie einige ausgewählte<br />
Formate untersucht und bewertet. Zum Abschluß der Untersuchung folgt eine Zusammenfassung<br />
der Ergebnisse und eine Empfehlung, welche Formate für den Datenaustausch<br />
geeignet sind.<br />
4.1 Anforderungen an Formate zur Übermittlung von Message-Objekten<br />
Das Ziel der Untersuchung ist, ein Austauschformat zu finden, mit dem die Message-<br />
Objekte abgebildet werden können, um sie zu transportieren.<br />
Für die Definition der Anforderungen sind die folgende Überlegungen Grundlage:<br />
1. Die Struktur des Message-Objekts, die für den Datenaustausch zwischen heterogenen<br />
Workflow-Systemen entworfen und mit Hilfe des Lotus Compound Document Mo-<br />
dells realisiert wurde, hat sich in umfangreichen Tests innerhalb von homogenen<br />
WAGS-Systemen hinsichtlich Funktionalität und Flexibilität bewährt. Infolgedessen<br />
werden die Struktur des Message-Objekts (siehe Kapitel 3.2.2.2) und die Eigenschaften<br />
und Möglichkeiten der Lotus Compound Document-Struktur (siehe Kapitel 3.1)<br />
als Vorbild für die Anforderungen an ein Austauschformat herangezogen.<br />
So enthalten die Message-Objekte Informationen zur Präsentation des Message-<br />
Objekts (Maske, Methoden), Daten zur Steuerung des Workflows und Nutzdaten.<br />
Ein Großteil dieser Daten wird mit verschiedenen einfachen Datentypen (Text, Zahl,<br />
Datum) kodiert. Das Austauschformat muß deshalb einfache Datentypen unterstützen<br />
oder sie in irgendeiner Form abbilden können (-> Unterstützung einfacher Datentypen).<br />
Zusätzlich enthalten die Nutzdaten Felder, deren Inhalt von einfachen Notizen bis hin<br />
zu komplexen Informationen (z. B. Produktbeschreibungen kombiniert aus Audio, Video<br />
und formatiertem Text) reichen kann. Das Lotus Notes Compound Document
Austauschformate Seite 36<br />
Modell enthält für diese Art von Daten den Feldtyp Rich-Text 6 . Ein geeignetes Austauschformat<br />
muß die Möglichkeit bieten, auch solche komplexen Datenobjekte zu<br />
beinhalten oder realisieren zu können (-> Unterstützung komplexer Informationsfelder).<br />
Für den Zugriff und die Verwaltung der Felder werden entsprechende Informationen<br />
benötigt (-> Identifikation von Feldstrukturen).<br />
Die Informationen zur Präsentation des Message-Objekts bestehen neben der Definition<br />
der Maske auch aus den Methoden zur Bearbeitung der Maske. Die Methoden<br />
werden mit Programmierlogik realisiert. Sie könnten deshalb in den Unternehmen als<br />
ein mögliches Sicherheitsrisiko angesehen werden. Aus diesem Grunde sollte es möglich<br />
sein, die Präsentationsinformationen vom Inhalt (Workflow-Daten, Nutzdaten) zu<br />
trennen, so daß zumindest ein Transport der Daten durchgeführt werden kann<br />
(-> Trennung von Präsentation und Inhalt).<br />
2. Die Kommunikation zwischen den Partnerunternehmen und somit auch der Transport<br />
der Message-Objekte wird hauptsächlich mit vorhandenen E-Mail Systemen durchge-<br />
führt. Diese E-Mail Systeme sind überwiegend für den Informationsaustausch im persönlichen<br />
Arbeitsumfeld konzipiert. Sie enthalten meist keine Möglichkeit, Daten<br />
strukturiert zu übergeben. Das Austauschformat sollte deshalb die Möglichkeit besitzen,<br />
eigene Angaben, die Informationen über die Struktur und den Aufbau des For-<br />
mats enthalten, zu übergeben (-> Unterstützung von Strukturinformationen).<br />
3. Erfüllt ein Austauschformat nicht oder nur teilweise alle gestellten Anforderungen, so<br />
müßte das Format erweiterbar sein, um die fehlenden Anforderungen durch Erweiterung<br />
hinzufügen zu können. Die Grundstruktur und Grundfunktionalität des Formats<br />
dürfen dabei nicht verletzt werden. Diese Möglichkeit ist auch im Hinblick auf eine<br />
kontinuierliche Weiterentwicklung eines Formats wichtig (-> Erweiterungsfähigkeit).<br />
6 Der Begriff „Rich-Text“ im Lotus Notes-Kontext bezeichnet einen Datentyp und wird oft mit dem Microsoft-Doku-<br />
mentenformat „Rich-Text-Format“ verwechselt.
Austauschformate Seite 37<br />
4. In den Unternehmen sind unterschiedliche Betriebssysteme und Anwendungen im<br />
Einsatz. Deshalb sind Gesichtspunkte der Interoperabilität zu berücksichtigen. So<br />
sollte das Einsatzgebiet eines Austauschformats nicht nur auf eine Plattform beschränkt<br />
sein (->Plattformunabhängigkeit) und auch nicht ausschließlich von einem<br />
Hersteller abhängig sein (-> Herstellerunabhängigkeit).<br />
5. Die Integration eines Austauschformats in die Produkte der Hersteller erfordert eine<br />
hohe Akzeptanz. Sie wird dadurch erreicht, daß das Austauschformat ein verabschiedeter<br />
Standard oder auch Industriestandard ist oder aus anderen Gründen eine sehr<br />
weite Verbreitung gefunden hat. Die Akzeptanz eines Formats läßt sich einerseits an<br />
der Verfügbarkeit von Produkten, Teilprodukten (Werkzeugen) und Dienstleistungen<br />
durch Drittanbieter, andererseits aber auch an den Bestrebungen, die Spezifikation über<br />
Normungs- und Standardisierungsgremien zu standardisieren, ablesen (->Hohe<br />
Akzeptanz).<br />
Um das gesetzte Ziel (ein Austauschformat zu finden, mit dem die Message-Objekte abge-<br />
bildet werden können, um sie zu transportieren) zu erreichen, können die ermittelten Anforderungen<br />
hinsichtlich ihrer Notwendigkeit klassifiziert werden.<br />
So ergibt sich aus den Beschreibung der Anforderungen, daß die<br />
• Unterstützung einfacher Datentypen,<br />
• Unterstützung komplexer Informationsfelder,<br />
• Identifikation von Feldstrukturen,<br />
• Trennung von Präsentation und Inhalt,<br />
• Unterstützung von Strukturinformationen und<br />
• hohe Akzeptanz<br />
unbedingt zur Erreichung des Ziels notwendig sind. Erfüllt ein Format eine oder mehrerer<br />
dieser Anforderungen nicht, so ist es nicht als Austauschformat geeignet. Im Gegensatz<br />
dazu sind die Anforderungen:<br />
• Erweiterungsfähigkeit,
Austauschformate Seite 38<br />
• Plattformunabhängigkeit und<br />
• Herstellerunabhängigkeit<br />
nur zweitrangig für die Auswahl des geeigneten Formats. Sie unterstützen die Auswahlentscheidung,<br />
wenn ein oder mehrere Formate den gleichen Funktionsumfang haben.<br />
Ein Sonderstellung nimmt hierbei die Anforderung Erweiterbarkeit ein. Sie ist optional,<br />
wenn ein Format bereits alle notwendigen Anforderungen erfüllt. Falls dies nicht der Fall<br />
ist, muß das Austauschformat erweiterbar sein, um notwendige Anforderungen realisieren<br />
zu können.<br />
Nach Abschluß der Überlegungen, der Definition und Klassifikation der Anforderungen<br />
wird im nächsten Abschnitt eine Auswahl geeigneter Formate spezifiziert, untersucht und<br />
bewertet.
Austauschformate Seite 39<br />
4.2 Untersuchung vorhandener Formate<br />
Für die Untersuchung existieren eine Vielzahl von potentiell geeigneter Austauschformate,<br />
die für die Abbildung der Message-Objekte genutzt werden können. Um die Anzahl der<br />
Kandidaten für die Untersuchung einzuschränken, werden nachfolgende Kriterien bei der<br />
Auswahl hinzugezogen.<br />
1. Das Format ist für den Austausch von Objekten (z. B. Dokumenten, Daten, Nachrichten)<br />
konzipiert.<br />
2. Es hat ein hohen Bekanntheitsgrad oder ist aufgrund des Status als Standard oder Industriestandard<br />
weit verbreitet.<br />
Für die nähere Untersuchung wurden deshalb ausgesucht:<br />
• Rich-Text-Format (RTF)<br />
Im Bereich der Textverarbeitungsprogramme hat sich das Rich-Text-Format von<br />
Microsoft als Industriestandard etabliert. Das Design ist für den Austausch von Doku-<br />
menten konzipiert.<br />
• Portable Document Format (PDF)<br />
Das Portable Document Format ist für den Austausch von Dokumenten im heterogenen<br />
Umfeld entwickelt worden. Es hat in der Industrie, wo es häufig zur elektronischen<br />
Verteilung von Informationen (z. B. Produktspezifikationen, Handbücher etc.) einge-<br />
setzt wird, einen hohen Bekanntheitsgrad.<br />
• EDI /EDIFACT<br />
Das EDIFACT-Format wurde für den Austausch von Daten aus Geschäftsdokumenten<br />
entwickelt. Das Format ist ein weltweit genormter Standard und verfügt über eine hohe<br />
Verbreitung.<br />
• Multi Purpose Internet Mime Extension (MIME)<br />
Das MIME-Format ist für den Austausch von Nachrichten im Internet entwickelt worden.<br />
Es ist standardisiert und hat einen hohen Verbreitungsgrad im Internet.<br />
• Open Document Architecture (ODA)<br />
Die Open Document Architecture ist ein standardisiertes Format, das zur Beschreibung<br />
und zum Austausch von Dokumenten entwickelt wurde und hat den Status einer Norm.
Austauschformate Seite 40<br />
• Hyper Text Markup Language (HTML)<br />
Das HTML-Format ist die Basis für die Beschreibung der Dokumente des World Wide<br />
Web-Dienstes (WWW). Es ist teilweise standardisiert und hat einen sehr hohen<br />
Verbreitungsgrad.<br />
Sollte keines der untersuchen Austauschformate für die Abbildung und den Transport der<br />
Message-Objekte geeignet sein, so werden vorbeugend folgende standardisierte Sprachen<br />
untersucht, welche zur Definition von Austauschformaten geeignet sind:<br />
• Standard Generalized Markup Language (SGML)<br />
SGML ist ein genormte Sprache, die zur Beschreibung und zum Austausch von Dokumenten<br />
entwickelt wurde. SGML ist im Bereich des Dokumenten-Managements weit<br />
verbreitet.<br />
• Extensible Markup Language (XML)<br />
XML ist eine Sprache, mit der Dokumentstrukturen für das WWW erstellt und Dokumente<br />
ausgetauscht werden können. Die Entwicklung von XML in den Standardgremien<br />
befindet sich zur Zeit noch im Anfangsstadium. Das Interesse und die frühe Unterstützung<br />
der Industrie lassen es für die Untersuchung als geeignet erscheinen.<br />
Nicht in die Untersuchung einbezogen wurden, zum Beispiel:<br />
• Postscript<br />
Postscript ist eine Seitenbeschreibungssprache, die zur Ansteuerung von Druckern<br />
entwickelt wurde.<br />
• Text Encoding Initiative (TEI)<br />
Das TEI-Format ist ein in SGML entwickeltes Format zur Beschreibung und Repräsentation<br />
von wissenschaftlichen Dokumenten. Es ist nur im Hochschulbereich weitverbreitet<br />
und auch speziell auf diese Bedürfnisse hin ausgerichtet.<br />
• TeX<br />
TeX ist eine Sprache zur Beschreibung der Formatierungen eines Dokumentes. Sie<br />
wurde von Donald Knuth (Stanford University) entwickelt und wird hauptsächlich im<br />
<strong>Universität</strong>sbereich zur Erstellung von wissenschaftlichen Arbeit verwendet.
Austauschformate Seite 41<br />
Die Untersuchung beginnt mit einem kurzen historischen Überblick über die Entwicklung<br />
und den Werdegang des jeweiligen Formats. Danach erfolgt eine technische Beschreibung.<br />
Anschließend erhält jedes Format eine Bewertung, inwieweit es den in Kapitel 4.1 definierten<br />
Anforderungen genügt.<br />
4.2.1 Rich-Text-Format (RTF)<br />
Historie<br />
Microsoft entwickelte Anfang der 90er Jahre mit dem Rich-Text-Format (RTF) eine Methode<br />
zur Kodierung von formatiertem Text und Grafiken für den Transfer zwischen Anwendungen.<br />
Im Vordergrund stand dabei die Interoperabilität des eigenen Produktes MS<br />
Word, das auf den Betriebssystemplattformen Windows, OS/2 und Apple Macintosh verfügbar<br />
war. Mittlerweile wird RTF auch von anderen Textverarbeitungs- und Desktop<br />
Publishing-Programmen unterstützt und hat sich zum Marktstandard für den Austausch<br />
von Dokumenten zwischen diesen proprietären Anwendungen entwickelt. Ziel der Ent-<br />
wicklung von RTF war die Formatierung der Dokumente zu erhalten, die bei einem Transport<br />
mittels reinem ASCII verloren gehen.<br />
Technik<br />
RTF nutzt den ANSI PC-8, Macintosh oder IBM PC Zeichensatz, um die Präsentation und<br />
die Formatierung eines Dokuments zu kontrollieren. Die RTF Spezifikation ist unter der<br />
Kontrolle der Microsoft Corp. und liegt derzeit in der Version 1.5 vor.<br />
Zur Umwandlung der Originaldatei in RTF wird ein sogenannter Writer benötigt. Das Lesen<br />
und Konvertieren einer RTF-Datei in ein proprietäres Format wird durch einen Reader<br />
ermöglicht.
Austauschformate Seite 42<br />
Eine RTF-Datei (siehe Abbildung 15) besteht aus unformatiertem Text, Kontrollwörtern,<br />
Kontrollzeichen und Gruppen.<br />
{\rtf\ansi\deff0{\fonttbl{\f0\froman Tms Rmn;}{\f1\fdecor ;}{\f2\fswiss Helv;}}<br />
{\colortbl;\red0\green0\blue0;<br />
\red0\green0\blue255;\red0\green255\blue255;\red0\green255\;\red255\green0\blue255;\<br />
red255\green0\blue0;\red255\\blue0;\red255\green255\blue255;}<br />
{\stylesheet{\fs20 \snext0Normal;}}<br />
{\info{\author John Doe} {\creatim\yr1990\mo7\dy30\hr10\min48}<br />
{\version1}{\edmins0}<br />
{\nofpages1}{\nofwords0}{\nofchars0}{\vern8351}}\widoctrl\ftnbj<br />
\sectd\linex0\endnhere \pard\plain \fs20 This is plain text.\par}<br />
Abbildung 15: RTF Beispiel<br />
Kontrollwörter sind definierte Befehle, die eingesetzt werden, um die Formatierung für<br />
Drucker und Anwendungen zu kontrollieren. Sie beginnen mit „\“ und dem Kontrollwort,<br />
das 32 Zeichen nicht überschreiten darf, z. B. \par zeigt den Beginn eines neuen Abschnittes<br />
an. Ein Kontrollzeichen ist eine Kombination aus einem „\“ gefolgt von einem einzel-<br />
nen nicht alphabetischen Zeichen, z. B.“ \~“ bezeichnet ein geschütztes Leerzeichen 7 .<br />
Gruppen bestehen aus Text, Kontrollwörtern- und -zeichen und sind in Klammern „{ }“<br />
eingeschlossen.<br />
Der Aufbau einer RTF-Datei ist fest definiert. Auf der höchsten Stufe besteht sie aus dem<br />
„Header“ (dt. Kopfinformation) und dem „Document“ (dt. Dokument). In den Kopfinformationen<br />
werden die Informationen, wie z. B. die RTF-Version, die eingesetzten Zeichen-<br />
sätze etc. definiert, wobei die Reihenfolge der Schlüsselwörter genau eingehalten werden<br />
muß. Das Dokument besteht aus dem eigentlichen Text und Kontrollwörtern, die Struktur<br />
und Formatierung kontrollieren. Eine RTF-Datei kann auch Bilder enthalten, die mit anderen<br />
Anwendungen erzeugt wurden. Diese Bilder können in hexadezimalem (Standard) oder<br />
binärem Format vorhanden sein. Als Bildformate werden u. a. JPEG, OS/2-Metafiles und<br />
das MAC-Format unterstützt.<br />
7 In Microsoft Word werden „Geschützte Leerzeichen“ beim Zeilenumbruch wie Buchstaben behandelt, so daß keine<br />
automatische Trennung von zusammengehörigen Wortkombinationen erfolgt.
Austauschformate Seite 43<br />
In RTF werden auch Feldstrukturen unterstützt. Diese Felder sind normalerweise Bestandteil<br />
eines Word-Formulars. Als Datentypen stehen<br />
• Regular Text,<br />
• Number,<br />
• Date,<br />
• Current Date,<br />
• Current Time,<br />
• Calculation,<br />
zur Verfügung 8 . Die nachfolgende Abbildung zeigt die RTF-Definition eines Textfeldes,<br />
mit dem Namen „Kunde“, dem Feldtyp „Text“ und dem Inhalt „John Doe“.<br />
{\*\formfield{\fftype0\fftypetxt0{\*\ffname Kunde}}}}}<br />
{\fldrslt {\lang1024 John Doe}}}{{\*\bkmkend Text1}\par }}<br />
Abbildung 16: RTF-Felddefinition<br />
Zusätzlich können in Word-Dokumenten auch Objekte eingebettet werden. Diese Objekte<br />
werden mittels der MS Technologie „Objekt Linking and Embedding (OLE)“ durch einen<br />
Link (Zeiger auf das Ausgangsobjekt, z. B. Kalkulationstabelle) oder durch die Einkapselung<br />
des Ausgangsobjekts in das Dokument repräsentiert. In RTF werden nur die Daten<br />
des Objekts übergeben, nicht aber die Objektfunktionalität.<br />
Bewertung<br />
• Unterstützung einfacher Datentypen -> Erfüllt<br />
In RTF-Dateien können Felder mit einfachen Datentypen eingebettet werden. Die<br />
RTF-Spezifikation sieht dies im Rahmen der Formularverarbeitung vor.<br />
8 Auf eine Übersetzung der Typen wurde in diesem Fall bewußt verzichtet, um die Bedeutung nicht zu verfälschen.
Austauschformate Seite 44<br />
• Unterstützung komplexer Informationsfelder -> Nicht erfüllt<br />
Die RTF-Spezifikation enthält keine Datentypdefinition, welche die Möglichkeit zur<br />
Abbildung komplexer Datentypen bietet. Solch ein Datentyp kann auch nicht durch<br />
Erweiterungen hinzugefügt werden.<br />
• Identifikation von Feldstrukturen -> Teilweise erfüllt<br />
Nur im Rahmen der Kodierung von Formularfeldern ist eine Identifikation der Felder<br />
möglich.<br />
• Trennung von Präsentation und Inhalt -> Nicht erfüllt<br />
Die RTF-Spezifikation sieht keine Trennung von Inhalt und Präsentation (Formatierung)<br />
vor. Durch eine Kombination von Struktur- (z. B. \par ) und Formatierungskontrollwörtern<br />
wird ein Dokument beschrieben. Die Präsentation (z. B. Formatierung eines<br />
Absatzes) und der Inhalt sind deshalb miteinander verwoben.<br />
• Unterstützung von Strukturinformationen ->Nicht erfüllt<br />
Ein RTF-Dokument enthält keine Information über die Struktur und den Aufbau der<br />
Datei. Dies sieht die Spezifikation des RTF-Formats nicht vor.<br />
• Erweiterungsfähigkeit -> Nicht erfüllt<br />
Die Definition des RTF-Formats kann nicht erweitert werden, weil die Realisierung<br />
und Weiterentwicklung neuer Funktionen allein von der Firma Microsoft bestimmt<br />
wird.<br />
• Plattformunabhängigkeit ->Teilweis erfüllte<br />
Microsoft hat das RTF-Format vorwiegend für die Betriebssystem-Plattformen entwi-<br />
ckelt, für die MS Word angeboten wird (OS/2, Macintosh, PC). Dadurch werden ein<br />
Großteil der im Büroumfeld eingesetzten Betriebssysteme abgedeckt. Sein Fokussierung<br />
auf den Transport von Word-Dokumenten läßt nur einen Einsatz im Textverarbeitungsbereich<br />
zu.<br />
• Hohe Akzeptanz ->Teilweise erfüllt<br />
Das RTF-Format wird überwiegend im Bereich der Textverarbeitungen unterstützt,<br />
weil MS Word dort eine marktbeherrschende Stellung hat. Der Großteil der Textverarbeitungsprogramme<br />
anderer Hersteller kann das RTF-Format lesen und schreiben.
Austauschformate Seite 45<br />
Zusammenfassung<br />
Das RTF-Format wurde primär für die Weitergabe von MS Word-Dokumenten entwickelt.<br />
Deshalb ist sein Design auf die korrekte Abbildung der Word-Texte und der Word-<br />
Formatierungen ausgerichtet.<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Erfüllt<br />
Unterstützung komplexer Informationsfelder Nicht erfüllt<br />
Identifikation von Feldstrukturen Teilweise erfüllt<br />
Trennung von Präsentation und Inhalt Nicht erfüllt<br />
Unterstützung von Strukturinformationen Nicht erfüllt<br />
Erweiterungsfähigkeit Nicht erfüllt<br />
Plattformunabhängigkeit Teilweise erfüllt<br />
Herstellerunabhängigkeit Nicht erfüllt<br />
Hohe Akzeptanz Teilweise erfüllt<br />
Tabelle 1: Bewertung des RTF-Formats<br />
Eine Erweiterung des Formats um notwendige Eigenschaften (z. B. Trennung von Präsentation<br />
und Inhalt, Unterstützung komplexer Informationsfelder) ist aufgrund des Designs<br />
und der Herstellerabhängigkeit nicht möglich.<br />
Infolgedessen kann eine Message-Objekt-Struktur nicht vollständig abgebildet werden;<br />
somit genügt das Format nicht den Anforderungen für den Datenaustausch zwischen heterogenen<br />
Workflow-Systemen.<br />
4.2.2 Portable Document Format (PDF)<br />
Historie<br />
Das Portable Document Format (PDF) wurde 1993 von Adobe System Inc. entwickelt. Ziel<br />
ist es, ohne Berücksichtigung der Arbeitsumgebung (Anwendungssoftware, Betriebssysteme),<br />
Benutzern einen einfachen und zuverlässigen Austausch elektronischer Dokumente<br />
zu ermöglichen [vgl. Adobe 1996, S. 17]. Die Spezifikation des Formats liegt, zum jetzigen<br />
Zeitpunkt, in der Version 1.2 vor.
Austauschformate Seite 46<br />
Technik<br />
PDF ist ein Derivat der Seitenbeschreibungssprache Postscript 9 von Adobe. Es nutzt die<br />
Fähigkeit von Postscript, Grafik und Text in einer geräte- und auflösungsunabhängigen<br />
Weise abzubilden.<br />
Für die Erstellung einer PDF-Datei gibt es mehrere Möglichkeiten:<br />
• Die eingesetzte Anwendung erstellt direkt eine Datei im PDF-Format.<br />
• Die Anwendung nutzt das kostenpflichtige Programm Adobe Acrobat Writer. Diese<br />
Zusatzsoftware simuliert innerhalb der Anwendung einen Drucker und wandelt den<br />
Datenstrom in eine PDF-Datei um. Diese Option wird hauptsächlich im Umfeld von<br />
grafischen Benutzeroberflächen und vom Desktop-Publishing-Systemen genutzt.<br />
Macintosh<br />
applications<br />
Windows<br />
applications<br />
Quickdraw GDI<br />
PDF-<br />
Writer<br />
PDF<br />
Abbildung 17: Erstellung einer PDF-Datei durch PDF Writer<br />
[vgl. Adobe 1996, S. 28]<br />
9 Postscript wurde 1985 für die Ansteuerung von Druckern entworfen und ist im Markt für High-End-Drucker weitver-<br />
breitet.
Austauschformate Seite 47<br />
• Aus einer Postscript Datei wird mit Hilfe des Acrobat Distillers die PDF-Datei erzeugt.<br />
Postscript<br />
Acrobat<br />
Distiller<br />
PDF<br />
Abbildung 18: Umwandlung von Postscript nach PDF [vgl. Adobe 1996, S. 29]<br />
Die Dokumente werden dabei seitenweise analysiert und umgewandelt. Nach der Umwandlung<br />
in das PDF-Format (siehe Abbildung 19) enthalten die Dateien nur noch ASCII-<br />
Zeichen.<br />
Mit dem Programm Adobe Exchange können zusätzliche Funktionen in die PDF-Dateien<br />
eingefügt werden. Die Funktionen umfassen Paßwortschutz, Anmerkungen (Annotatio-<br />
nen), Verknüpfungen (Hyperlinks), Lesezeichen, Thumbnails 10 , Filme, Sound und eine<br />
einfache Formularfunktion.<br />
%PDF-1.2<br />
%âãÏÓ<br />
8 0 obj<br />
><br />
endobj<br />
/Filter /LZWDecode<br />
>><br />
stream<br />
_Š ѨÐp._<br />
4^F‹Ä"EC4Z_5_HÌq‰_Ü@($Šbf i__q Œ_ÃxŒ¸_1__£´_TæY_)_èc_Ä,p4__â&ØèÖ<br />
Abbildung 19: Auszug aus einer PDF-Datei<br />
10 Thumbnails sind verkleinerte Ansichten der Originalseiten.
Austauschformate Seite 48<br />
Für die Anzeige einer PDF-Datei hat Adobe das kostenlose Anzeigeprogramm Arcrobat<br />
Reader entwickelt. Der Reader ist auf allen gängigen Betriebssystemen (DOS, Windows<br />
3.x, Windows NT/95, OS/2, Macintosh, Unix-Derivate) verfügbar.<br />
Aufbauend auf der Acrobat-Technologie werden zahlreiche Erweiterungen von Adobe und<br />
unabhängigen Drittherstellern angeboten. Die Bandbreite der angebotenen Werkzeuge<br />
reicht von Konvertern für Fremdformate über zusätzliche Funktionsbausteine (Plug-Ins)<br />
für den Acrobat Reader bis hin zur Unterstützung von Dokument-Management- und<br />
Groupware-Systemen (z. B. Lotus Notes).<br />
Die PDF-Spezifikation besteht aus vier Komponenten (siehe Abbildung 20). Die erste<br />
Komponente besteht aus einem Satz von Objekttypen, die PDF für die Repräsentation von<br />
Objekten (engl. objects) nutzt. Es existieren Basisobjekte vom Typ Boolean, Numbers,<br />
Strings, Names, Dictonaries und Streams [vgl. Adobe 1996, S 43].<br />
Objects<br />
File<br />
structure<br />
Document<br />
structure<br />
Page<br />
description<br />
Abbildung 20: PDF-Komponenten [Adobe 1996, 34]<br />
Objekte vom Typ Boolean können zwei Werte TRUE und FALSE annehmen. Numbers<br />
können vom Typ INTEGER und REAL sein. Strings, z. B. {Dies ist ein Text}, können alle<br />
ASCII-Zeichen aufnehmen. Sonderzeichen innerhalb eines Strings werden mit dem Postscript-Mechanismus<br />
kodiert. Ebenso wie Strings bestehen Names aus „/“ und einer Kombination<br />
von ASCII-Zeichen, z. B. /Name1. Der zusammengesetzte Objekttyp Array kann<br />
eine Sequenz von unterschiedlichen Objekten aufnehmen, z. B. [0 {Text} 3.14 /Name].<br />
Für die Speicherung von großen Datenmengen, z. B. Bilddaten oder Seitenbeschreibungen,<br />
steht der Objekttyp Stream zur Verfügung. Ein Stream setzt sich aus einem Dictionary und
Austauschformate Seite 49<br />
den Daten (kodiert in ASCII-Zeichen) zusammen, die durch STREAM und ENDSTREAM<br />
abgeschlossen werden. Im Gegensatz zu Strings kann ein Stream fortlaufend eingelesen<br />
werden.<br />
Dictionaries bestehen aus zwei Elementen, dem Schlüssel (engl. key) und dem dazugehörigen<br />
Wert (engl. value), z. B. .<br />
Der Key muß vom Objekttyp Names sein und dient zur Identifikation des Dictionary. Der<br />
zugehörige Wert kann alle Basistypen enthalten, so daß auf diese Weise komplexere Objekte<br />
realisiert werden können. Die Objekte vom Typ Dictionary sind die Hauptbestandteile<br />
eines PDF-Dokuments. Ein Großteil der Informationen, aus denen ein Dokument besteht,<br />
z. B. Seiten, Fonts, Kopfzeilen, werden in diesem komplexen Objekttyp gespeichert.<br />
Die zweite Komponente der PDF-Spezifikation (siehe Abbildung 21) ist die „File structu-<br />
re“ (dt. Dateiaufbau), mit der festgelegt wird, wie und in welcher Reihenfolge die Objekte<br />
in einer PDF-Datei angeordnet werden müssen.<br />
Header<br />
Body<br />
Crossreference<br />
table<br />
Trailer<br />
Abbildung 21: PDF-File-Struktur [Adobe 1996, 62]<br />
Die Bestandteile eines PDF-Dokuments sind:<br />
• Header<br />
Im „Header“ wird die Information über die Version des PDF-Formats gespeichert.<br />
• Body<br />
Der „Body“ enthält die Objekte, die ein Dokument repräsentieren.
Austauschformate Seite 50<br />
• Crossreference Table<br />
Die „Crossreference Table“ ist vergleichbar mit einem Verzeichnis, das einen wahlfreien<br />
(nicht sequentiellen) Zugriff auf die Objekte innerhalb der Datei ermöglicht. Es<br />
wird dadurch vermieden, daß die ganze Datei gelesen werden muß, um einzelne Objekte<br />
zu laden.<br />
• Trailer<br />
Der „Trailer“ ermöglicht Anwendungen das schnelle Auffinden der „Crossreference<br />
table“ sowie spezieller Objekte.<br />
Die dritte Komponente ist die „Document structure“, die im „Body“ der PDF-Datei gespeichert<br />
wird. Ein PDF-Dokument wird als eine Hierarchie von Objekten beschrieben.<br />
Der Großteil der Objekte sind vom Objekttyp „Dictionary“. Die Objekte sind durch Referenzen<br />
miteinander verbunden, z. B. hat das Catalog-Dictionary 11 Verweise auf die Be-<br />
schreibung der Seitenbäume (siehe Abbildung 22).<br />
Page<br />
Tree<br />
Catalog<br />
Outline<br />
Tree<br />
Page Page Page<br />
Imageable<br />
Content<br />
Article<br />
threads<br />
Thumbnail Annotations<br />
Abbildung 22: Struktur eines PDF-Dokuments<br />
[vgl. Adobe 1996, S. 72]<br />
Innerhalb der Spezifikation sind bereits eine Reihe von allgemeinen Datenstrukturen für<br />
Objekte (Rechtecke, Hyperlinks, Fonts, Datum etc.) vordefiniert. Diese Objekte enthalten<br />
11 Das Catalog-Dictonary ist das Objekt-Inhaltsverzeichnis einer PDF-Datei.
Austauschformate Seite 51<br />
notwendigen Informationen, die der Acrobat Reader benötigt, um beispielsweise die Elemente<br />
einer Seite zu beschreiben.<br />
Die allgemeinen Datenstrukturen können um eigene Objekte erweitert werden. Allerdings<br />
benötigt der Acrobat Reader dann eine Funktionserweiterung (Plug-In), oder die eigenen<br />
Anwendungen müssen entsprechend erweitert werden. Zur Vermeidung von Namenskonflikten<br />
bei der Bezeichnung von Objekten pflegt Adobe ein Register der vergebenen Namen.<br />
Die letzte Komponente ist die „Page Description“ (dt. Seitenbeschreibung). Eine Seitenbeschreibung<br />
kann als eine Sequenz von Grafikobjekten aufgefaßt werden. Dabei werden die<br />
Grafikobjekte mittels des geräte- und auflösungsunabhängigen Koordinatensystems auf der<br />
Seite plaziert. Der Acrobat Reader liest die Dokumentenstruktur und baut aus den einzel-<br />
nen Grafikobjekten die Seite auf. Dieser Vorgang wird für jede Seite wiederholt.<br />
Die PDF-Spezifikation enthält vier verschiedene Grafikobjekte:<br />
1. Das „Path Object“<br />
Es ist eine willkürliche Form, die aus Linien, Rechtecken etc. besteht.<br />
2. Das „Text Object“<br />
Es besteht aus verschiedenen Zeichen und kann überall auf der Seite in jeder Größe<br />
und Orientierung gezeichnet werden.<br />
3. Das „Image Objekt“<br />
Es enthält Daten, die in ein Bild umgewandelt werden können.<br />
4. Ein „external Objekt“ (dt. externes Objekt)<br />
Das externe Objekt ist außerhalb eines „Streams“ definiert. Die Behandlung eines<br />
externen Objekts hängt von seinem Typ ab. Zur Zeit unterstützt PDF drei Typen:<br />
Bilder, Formulare und Postscript-Fragmente.<br />
Das PDF-Format wird in einer Spezifikation, die 400 Seiten umfaßt, definiert. Die wesentlichen<br />
Eigenschaften sind oben beschrieben. Weitere Details würden den Rahmen dieser<br />
Arbeit sprengen.
Austauschformate Seite 52<br />
Bewertung<br />
• Unterstützung einfacher Datentypen -> Erfüllt<br />
Die PDF Spezifikation enthält die Definition von Datentypen (Boolean, Numbers,<br />
Strings, Names, Dictonaries und Streams), aus denen die Objekte gebildet werden, die<br />
für die Kodierung der Dokumente notwendig sind. Die Objekte sind mit Feldern vergleichbar.<br />
• Unterstützung komplexer Informationsfelder -> Nicht erfüllt<br />
Die PDF-Spezifikation enthält keinen vordefinierten Datentyp mit dem komplexe Informationen<br />
explizit gespeichert werden können. Im weitesten Sinne kann die Beschreibung<br />
einer Seite, die aus den Elementen (Text, Bilder etc.) und der Beschreibung<br />
der Anordnung dieser auf der Seite besteht, mit der Leistung eines Datentyps zur Aufnahme<br />
von komplexen Informationen verglichen werden.<br />
• Identifikation von Feldstrukturen -> Erfüllt<br />
Die Objekte vom Datentyp Dictonary sind vergleichbar mit Feldern. Die Spezifikation<br />
des PDF-Formats schreibt die Identifikation vor.<br />
• Trennung von Präsentation und Inhalt -> Nicht erfüllt<br />
Ein Trennung von Präsentation und Inhalt ist nicht möglich, weil beide Komponenten<br />
zusammen für die korrekte Verarbeitung einer PDF-Datei benötigt werden.<br />
• Unterstützung von Strukturinformationen -> Teilweise erfüllt<br />
Ein PDF-Dokument enthält keine Informationen, die Auskunft über den korrekten<br />
Aufbau des Formates geben. Jedoch sind verschiedene Informationen über die Struktur<br />
von Dokumenten in Form von Dictonary-Objekten enthalten. Als Beispiel sei das<br />
„Catalog Directory“ angeführt, das innerhalb der Definition der Dokumentstruktur<br />
Verweise zu den einzelnen Komponenten enthält.<br />
• Erweiterungsfähigkeit -> Erfüllt<br />
Das PDF-Format kann um zusätzliche Funktionalitäten und Objekte erweitert werden.<br />
• Plattformunabhängigkeit -> Erfüllt<br />
Die Plattformunabhängigkeit war Ziel der PDF-Spezifikation. Durch die Verwendung<br />
des ASCII-Zeichensatzes können die Dokumente ohne Probleme zwischen Anwendungen<br />
weitergegeben werden. Zumindest das Anzeigeprogramm (Acrobat Reader) ist für
Austauschformate Seite 53<br />
alle gängigen Office-Betriebssysteme verfügbar. Das Offenlegen der Spezifikation erlaubt<br />
das Erstellen von PDF-konformen Applikationen.<br />
• Herstellerunabhängigkeit -> Teilweise erfüllt<br />
Durch die Möglichkeit, das PDF-Format um eigene Funktionalitäten zu erweitern, besteht<br />
eine gewisse Unabhängigkeit vom Hersteller. Das PDF-Format selbst bleibt Eigentum<br />
von Adobe. Eine Weiterentwicklung der Grundstruktur erfolgt ausschließlich<br />
durch den Hersteller.<br />
• Hohe Akzeptanz -> Erfüllt<br />
Das PDF-Format wird überwiegend zur elektronischen Verteilung von umfangreichen<br />
und hochqualitativen Informationsprodukten (z. B. Handbücher, Produktbeschreibungen,<br />
Werbebroschüren) verwendet. Durch die kostenlose Bereitstellung der Acrobat<br />
Reader-Software und die Möglichkeit, Eigenentwicklungen in das PDF-Format einzubetten,<br />
genießt es eine hohe Akzeptanz.<br />
Zusammenfassung<br />
Adobe hat das PDF-Format zielgerichtet für die elektronische Weitergabe von Dokumenten<br />
entwickelt.<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Erfüllt<br />
Unterstützung komplexer Informationsfelder Nicht erfüllt<br />
Identifikation von Feldstrukturen Erfüllt<br />
Trennung von Präsentation und Inhalt Erfüllt<br />
Unterstützung von Strukturinformationen Teilweise erfüllt<br />
Erweiterungsfähigkeit Erfüllt<br />
Plattformunabhängigkeit Erfüllt<br />
Herstellerunabhängigkeit Nicht erfüllt<br />
Hohe Akzeptanz Erfüllt<br />
Tabelle 2: Bewertung des PDF-Formats<br />
Dabei stand die grafische Repräsentation der Dokumente auf unterschiedlichen Plattformen<br />
im Vordergrund.<br />
Ein Message-Objekt kann mit der Grunddefinition des PDF-Formats nicht abgebildet werden.<br />
Zwar besteht die Möglichkeit, durch die Definition von eigenen Objekten zusätzliche<br />
Funktionen zu implementieren, doch würde dies nach eingehender Untersuchung die
Austauschformate Seite 54<br />
Grundkonzeption des PDF-Formats verletzen. Infolgedessen ist PDF nicht als Austauschformat<br />
für Message-Objekte geeignet.<br />
4.2.3 Electronic Data Interchange (EDI) und EDIFACT<br />
Historie<br />
Bereits in den 70er Jahren wurde die Notwendigkeit erkannt, den elektronischen Austausch<br />
von Geschäftsdaten zu normieren. Der Austausch von Geschäftsdaten auf elektronischem<br />
Wege ist auch unter dem Synonym „Elektronic Data Interchange“ (EDI) bekannt.<br />
Die Basis von EDI sind Nachrichten mit vordefiniertem Aufbau. Der Aufbau der Nachrichten<br />
und deren Bedeutung muß bei allen Beteiligten bekannt sein. Zu Beginn der EDI-<br />
Bewegung vereinbarten die Geschäftspartner gemeinsam das Format, in dem die Daten<br />
übertragen werden sollten. Aufgrund der steigenden Anzahl von EDI-Teilnehmern ent-<br />
stand dann aber schnell die Notwendigkeit, die Formate zu standardisieren. Die Entwicklung<br />
der Standards erfolgte in Gremien auf regionaler, nationaler und internationaler Ebene<br />
und ebenso branchenabhängig und -unabhängig.<br />
Um die Entwicklung eines internationalen und branchenunabhängigen Standards zu be-<br />
schleunigen, setzte eine Kommission der Vereinten Nationen (UNECE 12 ) die Arbeitsgruppe<br />
WP.4 ein.<br />
Die Spezifikation dieser Norm wurde im März 1987 unter dem Name UN/EDIFACT (Elektronic<br />
Data Interchange for Administration and Transport) als Empfehlung der<br />
UNECE veröffentlicht. Kurze Zeit später wurde sie von der ISO unter der Bezeichnung<br />
ISO-9735 übernommen. Die Europäischen Gemeinschaft und das Deutsche Institut für<br />
Normung führten die Spezifikation unter dem Kennzeichen EN27 237 und DIN 16559 in<br />
ihren Wirkungsbereichen ein.<br />
Die EDIFACT-Normen, welche die Zeichensätze, Datenelemente und die Syntax beschreiben,<br />
bestehen aus den sieben Vorschriften:<br />
• EDIFACT-Syntax-Regeln (ISO 9735)<br />
• EDIFACT-Handbuch der Datenelemente (EDED)<br />
12 United Nations Economic Commission for Europe
Austauschformate Seite 55<br />
• EDIFACT-Code-Liste (EDCL)<br />
• EDIFACT-Handbuch der Datenelementgruppen (EDCD)<br />
• EDIFACT-Handbuch der einheitlichen Nachrichtentypen (EDMD)<br />
• Richtlinien der Nachrichtenentwicklung und Anwendung der Syntax-Regeln<br />
• Einheitlichen Durchführungsregeln für den Handelsaustausch via Telekommunikation<br />
Technik<br />
Die Übermittlung von Nachrichten im EDIFACT-Format ist ein kontrollierter Austausch<br />
von hierarchisch strukturierten Datensätzen, die den Inhalt eines Geschäftsdokuments dar-<br />
stellen.<br />
Im Unterschied zu anderen Austauschformaten, z. B. PDF-Format, wird in einer EDI-<br />
Nachricht (siehe Abbildung 23) nur der Inhalt des Geschäftsdokuments (z. B. Lieferanschrift,<br />
Absender, Bestellpositionen) nicht aber die Präsentation (Layout und Formatie-<br />
rung) übermittelt.<br />
Die EDI-Nachrichten werden mit zwei Zeichensätzen (A, B) kodiert, die dem 7-ASCII-<br />
Zeichensatz (ISO 646) nachempfunden sind. Der Zeichensatz B enthält zusätzliche, nicht<br />
druckbare Zeichen, die als Separatoren dienen. Binäre oder andere plattformabhängige<br />
Zeichen dürfen nicht verwendet werden.<br />
UNB+UNOA:2+54321:ZZZ+12345:ZZ+950112:1620+1111111‘<br />
UNH+1+ORDERS+D:93A:UN‘<br />
BGM+220+12345‘<br />
DTM+137:19950112:102‘<br />
DTM+2:19950201:102‘<br />
NAD+BY+54321:ZZZ++Handels-<br />
Office+Handelsstrasse1+Handelshausen++543212+DE‘<br />
NAD+SU+12345:ZZZ++Hersteller+Herstellerstrasse1+Herstellerhausen++12345+DE‘<br />
LIN+1+++22222:BP‘<br />
QTY+21:2:PCE‘<br />
UNT+13+1‘<br />
UNZ+1+1111111‘<br />
Abbildung 23: Beispiel EDIFACT-Nachricht<br />
[Deutsch 1994, S. 56]
Austauschformate Seite 56<br />
Der Aufbau von EDIFACT-Nachrichten ist streng hierarchisch und besteht aus den Elementen:<br />
Nachrichten, Segmenten und Datenelementen (siehe Abbildung 24). Die Nachrichten,<br />
die ein Geschäftsdokument repräsentieren (z. B. Rechnung) setzen sich aus Segmenten<br />
zusammen, die wiederum aus Datenelementen oder Datenelementgruppen zusammengesetzt<br />
sind.<br />
Die einzelnen Bestandteile der EDIFACT-Nachricht werden durch verschiedene Separatoren<br />
getrennt. Innerhalb einer Gruppe werden die Elemente durch „:“ getrennt. Zwischen<br />
Elementgruppen oder einzeln vorkommenden Elementen steht ein „+“. Segmente werden<br />
durch „‘“ beendet.<br />
Die Basiskomponenten des Formats sind die Datenelemente, z. B. Menge, Uhrzeit. Die<br />
Definition der Elemente wird im Handbuch der Datenelemente (EDED) aufgelistet. Sie<br />
enthält den Schlüssel, die Bezeichnung, eine Beschreibung und das Datenformat, z. B.<br />
2001 – Datum, codiert; n6; JJMMTT. Das bedeutet, daß das Element 2001 ein Datum, nu-<br />
merisch und 6-stellig ist und in der Form JJMMTT kodiert werden muß. EDIFACT Datenelemente<br />
können nur numerische oder alphanumerische Daten enthalten. Die Interpretation<br />
des Datentyps wird im Handbuch der Datenelemente (EDED) spezifiziert. Am Beispiel des<br />
Datenelements 2001 ist ersichtlich, daß bei der Umwandlung des Datenelements auf Emp-<br />
fängerseite eine Übertragung in den korrekten Datentyp „Datum“ erfolgen muß. Diese Information<br />
kann jedoch nicht direkt aus dem Datenstrom entnommen werden, weil auf der<br />
Datenelement-Ebene keine Bezeichnung mitgesendet wird.
Austauschformate Seite 57<br />
UNA<br />
Verbindungsaufbau<br />
Übertragungsdatei<br />
bestehende<br />
Verbindung<br />
Übertragungsdatei<br />
Verbindungsabbau<br />
Übertragungsdatei<br />
entweder<br />
oder einzelne<br />
UNB ' Nachrichten-<br />
UNZ<br />
gruppe<br />
Nachrichten<br />
UNG ' Nachricht Nachricht Nachricht UNE<br />
UNH ' Segment Segment Segment UNT<br />
Seg.-<br />
Bez.<br />
einfaches<br />
Datenelement-<br />
+ +<br />
'<br />
Datenelement<br />
gruppe<br />
Kennung : Zähler<br />
Wert GD :<br />
'<br />
'<br />
'<br />
GD<br />
Wert<br />
Wert<br />
Abbildung 24: Struktur einer EDIFACT-Übertragungsdatei<br />
[Weid 1994, S. 40]<br />
Die Elementgruppen werden als logische Einheit aus mehreren Elementen zusammengesetzt.<br />
Eine Elementgruppe wird mit einem „c“ und einer dreistelligen Zahl bezeichnet,<br />
z. B. c033 – Datum/Zeit der Referenzangabe. Die Elementgruppe „c033 Datum“ setzt sich<br />
aus den beiden Elementen „Datum codiert“ (numerisch, 6-stellig) und „Uhrzeit“ (nume-<br />
risch, 4-stellig) zusammen. Die Bezeichnung der Elementgruppen, ihre Bedeutung und<br />
Zusammensetzung wird im EDIFACT-Handbuch der Datenelementgruppen (EDCD) ver-<br />
öffentlicht.<br />
Aus den Elementgruppen und den Elementen können Segmente zusammengesetzt werden.<br />
Die Bezeichnung der Segmente wird aus drei Großbuchstaben gebildet, z. B. NAD = Name<br />
und Adresse. Sie wird im EDIFACT-Handbuch der Datenelementgruppen (EDCD) veröffentlicht<br />
und enthält die Bedeutung und die Vereinbarungen, wie ein Segment zusammengesetzt<br />
werden kann. Die Bezeichnung der Segmente wird bei der Datenübertragung dem<br />
Segment vorangestellt. Mit Hilfe dieser Bezeichnung kann die EDI-Anwendung die Zusammensetzung<br />
des Segments aus einem elektronischen Verzeichnis ermitteln und aus der<br />
Definition auf die Datenelemente schließen.
Austauschformate Seite 58<br />
Durch die Kombination verschiedener Segmente werden schließlich die Nachrichten gebildet.<br />
Dabei können einzelne Segmente mehrfach vorkommen (z. B. Bestellpositionen).<br />
Die Nachrichten sind das Abbild eines Geschäftsvorgangs, z. B. eine Rechnung. Die Definition<br />
und Zusammensetzungen der Nachrichten werden im EDIFACT-Handbuch der einheitlichen<br />
Nachrichtentypen (EDMD) veröffentlicht.<br />
Die Entwicklung neuer Nachrichten, Segmente, Datenelementgruppen und Datenelemente<br />
wird in den Normungs- und Standardisierungsgremien durchgeführt. Zur Zeit existieren<br />
etwa 40 Nachrichtentypen für Geschäftsvorfälle, weitere sind in Vorbereitung [vgl.<br />
Deutsch 1994, S. 39 ff.].<br />
Bewertung<br />
• Unterstützung einfacher Datentypen -> Teilweise erfüllt<br />
Die Abbildung von Daten erfolgt in der EDIFACT-Norm in Form von Datenelemen-<br />
ten. Die EDIFACT-Spezifikation unterstützt jedoch nur numerische und alphanumerische<br />
Datentypen.<br />
• Unterstützung komplexer Informationsfelder -> Nicht erfüllt<br />
Für die Aufnahme von komplexen Informationen ist innerhalb der EDIFACT-Spezifikationen<br />
kein Datentyp vorgesehen.<br />
• Identifikation von Feldstrukturen -> Teilweise erfüllt<br />
Eine Identifikation von Datenelementen kann nicht innerhalb der Datenstruktur vorge-<br />
nommen werden. Sie wird im Handbuch der Datenelemente festgelegt. Die Bezeichnung<br />
und Definition der Datenelemente kann nur über die Segment-Bezeichnung ermittelt<br />
werden.<br />
• Trennung von Präsentation und Inhalt -> Nicht erfüllt<br />
EDI-Nachrichten enthalten nur die Daten eines Geschäftsvorgangs. Eine Übertragung<br />
von Präsentationsinformationen war nicht das Designziel von EDIFACT.
Austauschformate Seite 59<br />
• Unterstützung von Strukturinformationen -> Nicht erfüllt<br />
Der Aufbau einer EDIFACT-Nachricht wird im EDIFACT-Handbuch der einheitlichen<br />
Nachrichtentypen (EDMD) definiert und durch die EDI Anwendung sichergestellt. Eine<br />
Übermittlung von Informationen über den korrekten Aufbau einer EDIFACT-<br />
Nachricht erfolgt während der Übertragung nicht.<br />
• Erweiterungsfähigkeit -> Teilweise erfüllt<br />
Der EDIFACT-Standard kann erweitert werden. Jedoch können nur Elemente und<br />
Segmente kombiniert werden, um daraus neue Nachrichten zu definieren. Die Definiton<br />
neuer Datentypen oder die Ergänzung um Funktionen ist nicht vorgesehen.<br />
• Plattformunabhängigkeit -> Erfüllt<br />
EDIFACT ist mit dem Ziel der Plattformunabhängigkeit entwickelt worden. Die Verwendung<br />
des ISO 646-Zeichensatzes zur Kodierung des Inhalts ermöglicht die Über-<br />
tragung und Verarbeitung auf allen Betriebssystem-Plattformen.<br />
• Herstellerunabhängigkeit -> Erfüllt<br />
Die EDIFACT Spezifikationen werden in den Standardisierungsgremien durchgeführt.<br />
• Hohe Akzeptanz -> Erfüllt<br />
Der Einsatz von EDI und EDIFACT wurde in den vergangen Jahren besonders im<br />
Großkunden- und Behördenbereich massiv vorangetrieben. Deshalb hat sich ein großer<br />
Markt um die EDI-Welt gebildet, auf dem alle Arten von Anwendungen und Dienst-<br />
leistungen erhältlich sind.<br />
Zusammenfassung<br />
Die Entwicklung des EDI-Standards EDIFACT ist sehr stark von den Möglichkeiten der<br />
Datenverarbeitung der 80er Jahre bestimmt. Das Ziel war es, die Daten, die in Geschäftsvorgängen<br />
auf Papier kodiert wurden, auf elektronischem Wege zu transportieren.
Austauschformate Seite 60<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Teilweise erfüllt<br />
Unterstützung komplexer Informationsfelder Nicht erfüllt<br />
Identifikation von Feldstrukturen Nicht erfüllt<br />
Trennung von Präsentation und Inhalt Nicht erfüllt<br />
Unterstützung von Strukturinformationen Nicht erfüllt<br />
Erweiterungsfähigkeit Teilweise erfüllt<br />
Plattformunabhängigkeit Erfüllt<br />
Herstellerunabhängigkeit Erfüllt<br />
Hohe Akzeptanz Erfüllt<br />
Tabelle 3: Bewertung des EDIFACT-Formats<br />
Mit den vorhandenen Möglichkeiten und Eigenschaften von EDIFACT ist ein Transport<br />
der Message-Objekte nicht möglich. Die fehlenden Anforderungen, z. B. die Unterstützung<br />
komplexer Informationsfelder oder die Identifikation von Feldstrukturen, können durch<br />
Erweiterungen nicht implementiert werden.<br />
Auf Grund dessen ist EDIFACT nicht als Austauschformat geeignet.<br />
4.2.4 Multipurpose Internet Mail Extension (MIME)<br />
Historie<br />
Neben dem World Wide Web (WWW) ist das Versenden von elektronischen Nachrichten<br />
(E-Mail) wohl der bekannteste und am häufigsten genutzte Dienst im Internet. Die Nach-<br />
richten werden mit Hilfe des Übertragungsprotokolls Simple Mail Transfer Protocol<br />
(SMTP) über das Internet übertragen. Die Spezifikation des SMTP-Protokolls wurde im<br />
Jahre 1982 von der Internet Engineering Task Force (IETF) veröffentlicht. SMTP enthält<br />
eine Reihe von Einschränkungen, die durch die Entwicklung von MIME überwunden wurden.<br />
Die Erweiterung des SMTP-Protokolls wurde 1993 unter dem Namen Multipurpose Internet<br />
Mail Extension (MIME) verabschiedet. Mit der Nutzung von MIME ist es nun möglich:<br />
• Nachrichten in unbegrenzter Größe zu versenden,<br />
• die Zeilenlänge von 1000 Bytes zu überschreiten,<br />
• unterschiedliche Datenobjekte in einer Nachricht einzubinden,
Austauschformate Seite 61<br />
• internationale Zeichensätze und Textformatierungen zu erhalten.<br />
Zusätzlich unterstützt MIME die Übertragung von Bildern, Videosequenzen und binären<br />
Daten aus Fremdapplikationen.<br />
Technik<br />
Eine MIME-Nachricht besteht aus einem Kopfteil (engl. header), der Informationen über<br />
die MIME-Version, Absender, Empfänger und Betreff enthält. Der Hauptteil (engl. body)<br />
enthält die zu übertragenden Nachrichten.<br />
Header<br />
Body<br />
Content-Block<br />
Nested Content-Block<br />
Nested Content-Block<br />
Abbildung 25: Aufbau einer MIME-Nachricht<br />
Die Nachrichten werden mit dem 7-Bit ASCII-Zeichensatz erstellt. Dies ist besonderes<br />
wichtig, weil die Datenübertragung der Nachrichten im Internet überwiegend mit dem<br />
SMTP-Protokoll (7-Bit ASCII basiert) erfolgt.
Austauschformate Seite 62<br />
Im Hauptteil der Nachricht werden die Daten in Form von Blöcken (engl. contentblock 13 )<br />
gespeichert. Jedem Block wird eine Kennung (engl. content-type header) vorangestellt, der<br />
Auskunft über den Typ und die Kodierung der Daten gibt. Dies wird durch eine Paarkombination<br />
von „Type“, „Subtype“ und zusätzlich durch die Angabe von Parametern geleistet.<br />
Die Syntax für die Kennung ist:<br />
Content-Type := type "/" subtype [";" parameter]<br />
Die Nachrichten können sich aus folgenden Basistypen zusammensetzen:<br />
• Text<br />
Der Datenblock kann einfache Texte in unterschiedlichen Zeichensätzen ent-<br />
halten.<br />
• Multipart<br />
Mit Multipart können unterschiedliche Typen von Daten, getrennt durch spezielle<br />
Separatoren (engl. boundary), in einem Block oder einer Nachricht kombiniert<br />
werden.<br />
• Application<br />
Der Datenblock enthält Daten aus anderen Anwendungen (z. B. Excel) oder binäre<br />
Daten.<br />
• Message<br />
Innerhalb des Blocks ist eine Nachricht eingekapselt.<br />
• Image<br />
Der Block besteht aus Bild-Daten.<br />
• Audio<br />
Der Block enthält Sound- oder Sprachdaten.<br />
• Video<br />
Der Block enthält Videodaten.<br />
13 Die Definition „Contentblock“ ist eine MIME-Spezifikation und nicht mit der Definition von Content-Block im Rah-<br />
men des WAGS-Systems identisch.
Austauschformate Seite 63<br />
Diese Basistypen können aber nicht den gesamten Umfang aller für eine spezielle Anwendung<br />
notwendige Datentypen abdecken. Deshalb ist es möglich, die MIME-Spezifikation<br />
zu erweitern.<br />
Die erste Möglichkeit ist die Verwendung des „X-„ im Subtyp-Schlüssel, z. B. Content-<br />
Type:Application/X-my-application. Dadurch können eigene Datentypen implementiert<br />
werden.<br />
Die zweite Möglichkeit ist die Registrierung des neuen Subtype-Schlüssels über die Internet<br />
Assigned Numbers Authority (IANA). Die IANA überwacht die Entwicklung neuer Typen<br />
und führt ein entsprechendes Register aller Typen. Mit der Registrierung ist die Veröffentlichung<br />
der Spezifikation verbunden. Auf Grund dessen kann ein neuer Standard-<br />
Datentyp für alle Benutzer der MIME-Spezifikation zugänglich gemacht werden.<br />
Zur Bearbeitung von MIME-Nachrichten wird ein User Agent (UA) benötigt. Dieser User<br />
Agent kann das MIME-Format lesen, die darin enthaltenen Content-Blöcke dekodieren, die<br />
Daten darstellen oder sie an Anwendungen übergeben. Er kann entweder in Anwendungen<br />
(z. B. E-Mail Programme) integriert oder komplett durch MIME-Anwendungen ersetzt<br />
werden.<br />
Um eine MIME-Nachricht zu erstellen, benötigt der UA einen MIME-Message Builder (dt.<br />
Nachrichten-Ersteller). Der Message Builder kommuniziert mit dem Netzwerk und den<br />
Konvertern. Darüber hinaus wird ein Message Designer benötigt, der die Nachricht mit den<br />
unterschiedlichen Typen korrekt zusammensetzt.<br />
Die nachfolgende Abbildung zeigt ein Beispiel einer vollständigen MIME-Nachricht.<br />
MIME-Version: 1.0<br />
From: Nathaniel Borenstein nsb@nsb.fv.com<br />
To: Ned Freed ned@innosoft.com<br />
Date: Fri, 07 Oct 1994 16:15:05 -0700 (PDT)<br />
Subject: A multipart example<br />
Content-Type: multipart/mixed; boundary=unique-boundary-1<br />
This is the preamble area of a multipart message.<br />
Mail readers that understand multipart format<br />
should ignore this preamble.<br />
If you are reading this text, you might want to<br />
consider changing to a mail reader that understands<br />
how to properly display multipart messages.<br />
--unique-boundary-1<br />
... Some text appears here ...
Austauschformate Seite 64<br />
[Note that the blank between the boundary and the start<br />
of the text in this part means no header fields were<br />
given and this is text in the US-ASCII character set.<br />
It could have been done with explicit typing as in the next part.]<br />
--unique-boundary-1<br />
Content-type: text/plain; charset=US-ASCII<br />
This could have been part of the previous part, but<br />
illustrates explicit versus implicit typing of body parts.<br />
--unique-boundary-1<br />
Content-Type: multipart/parallel; boundary=unique-boundary-2<br />
--unique-boundary-2<br />
Content-Type: audio/basic Content-Transfer-Encoding: base64<br />
... base64-encoded 8000 Hz single-channel<br />
mu-law-format audio data goes here ...<br />
--unique-boundary-2<br />
Content-Type: image/jpeg Content-Transfer-Encoding: base64<br />
... base64-encoded image data goes here ...<br />
--unique-boundary-2--<br />
--unique-boundary-1<br />
Content-type: text/enriched<br />
This is enriched.<br />
as defined in RFC 1896 Isn't cool?<br />
--unique-boundary-1<br />
Bewertung<br />
Abbildung 26: Beispiel einer MIME-Nachricht<br />
[Grand 1993]<br />
• Unterstützung einfacher Datentypen -> Teilweise erfüllt<br />
Das MIME-Format hat keine einfachen Datentypen. Die Anforderung könnte erfüllt<br />
werden, wenn entsprechende Contentblock-Strukturen entwickelt würden, z. B<br />
Content-type: application/X-wfdata fieldname=Name fieldtype =Txt<br />
• Unterstützung komplexer Informationsfelder -> Teilweise erfüllt<br />
Das MIME-Format enthält bereits Definitionen für die Aufnahme einiger komplexer<br />
Datentypen (Audio, Video), jedoch keine entsprechende Datendefinition. Sie kann aber<br />
durch Eigenentwicklung hinzugefügt werden.
Austauschformate Seite 65<br />
• Trennung von Präsentation und Inhalt -> Teilweise erfüllt<br />
Das MIME-Format ist nur ein Rahmen zur Übertragung von ASCII-Zeichen. Das MI-<br />
ME Format enthält keine Präsentationsinformationen. Durch die Entwicklung eines eigenen<br />
Contentblocks könnten die Präsentationsinformationen getrennt übertragen werden.<br />
• Unterstützung von Strukturinformationen -> Teilweise erfüllt<br />
MIME-Nachrichten enthalten keine Informationen über den möglichen oder erlaubten<br />
Aufbau einer Nachricht. Der Rahmen für die MIME-Struktur wird durch die MIME-<br />
Spezifikation festgelegt. Durch die Verwendung der Contentblock-Strukturen kann aber<br />
eine MIME Nachricht strukturiert werden.<br />
• Erweiterungsfähigkeit ->Teilweise erfüllt<br />
Mit Hilfe der Contentblock-Strukturen können zusätzlichen Datentypen implementiert<br />
werden. Die Grundstruktur des MIME-Formats kann jedoch nicht geändert werden.<br />
• Herstellerunabhängigkeit -> Erfüllt<br />
Die MIME Spezifikation wird von der IETF gepflegt. Somit besteht keine Abhängigkeit<br />
von einem Hersteller.<br />
• Plattformunabhängigkeit -> Erfüllt<br />
Die MIME-Spezifikation ist für die Nachrichtenübertragung mit dem 7-Bit ASCII-Zeichensatz<br />
definiert. Infolgedessen kann das Format auf allen Betriebssystem-<br />
Plattformen verarbeitet werden.<br />
• Hohe Akzeptanz ->Erfüllt<br />
MIME genießt eine sehr hohe Akzeptanz in der Industrie. Nahezu alle Hersteller<br />
proprietärer E-Mail-Systeme haben das MIME-Format als Standard in ihre Produkte<br />
integriert oder bieten entsprechende Konverter.
Austauschformate Seite 66<br />
Zusammenfassung<br />
MIME wurde hauptsächlich entworfen, um die Probleme des E-Mail Protokolls (SMTP) zu<br />
überwinden und definiert ein universelles Rahmengerüst zum Transport von Objekten.<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Teilweise erfüllt<br />
Unterstützung komplexer Informationsfelder Teilweise erfüllt<br />
Trennung von Präsentation und Inhalt Teilweise erfüllt<br />
Unterstützung von Strukturinformationen Teilweise erfüllt<br />
Erweiterungsfähigkeit Teilweise erfüllt<br />
Plattformunabhängigkeit Erfüllt<br />
Herstellerunabhängigkeit Erfüllt<br />
Hohe Akzeptanz Erfüllt<br />
Tabelle 4: Bewertung des MIME-Formats<br />
Mit der aktuellen Version der MIME-Spezifikation ist die Abbildung der Message-Objekte<br />
nicht möglich. So fehlen beispielsweise einfache Datentypen und die Unterstützung kom-<br />
plexer Informationsfelder, sowie die Trennung von<br />
Durch die Entwicklung spezieller Content-Block-Strukturen könnten die Voraussetzungen<br />
für den Datenaustausch geschaffen werden. Als positives Beispiel ist hier die Workflow<br />
Management Coalition (WFMC) anzuführen. Sie hat eine Contentblock-Spezifikation für<br />
ihre Art des Datenaustauschs zwischen Workflow-Systemen entwickelt und im Rahmen<br />
einer Konferenz demonstriert.<br />
Auf Basis von MIME könnte deshalb der Austausch von Message-Objekten realisiert werden.<br />
4.2.5 Open Document Architecture (ODA)<br />
Historie<br />
Open Document Architecture (ODA) ist ein Standard, der für den Austausch von Verbunddokumenten<br />
14 (Compound Document) zwischen Anwendungen (z. B. Textverarbei-<br />
tungsprogramme) entwickelt wurde.<br />
14<br />
In der ODA-Norm wird ein Verbunddokument als eine Kombination von Text, Grafik, Rastergrafik (Bildern) definiert.<br />
Die Definition des Begriffs entspricht nicht der Lotus Notes Compound Document-Definition.
Austauschformate Seite 67<br />
Obwohl die Arbeiten an vergleichbaren Standards bereits in den frühen 80ern begannen,<br />
wurde ODA erst 1985 von der European Computer Manufacture’s Association (ECMA)<br />
als ECMA-101 veröffentlicht. Dieser Entwurf wurde auch an andere Organisationen (ISO,<br />
CCITT) weitergegeben, um einen gemeinsamen Standard für den Dokumentenaustausch<br />
zu entwickeln. 1988 wurde ODA als ISO-Standard unter der Bezeichnung ISO 8613 und<br />
als T.410-Empfehlung der CCITT veröffentlicht. Aus Kompatibilitätsgründen glich die<br />
ECMA ihre Spezifikation im gleichen Jahr an die anderen Spezifikationen an.<br />
Der Standard besteht aus 8 Teilen:<br />
Part 1: Introduction and general principles<br />
Part 2: Document structures<br />
Part 4: Document profile<br />
Part 5: Office document interchange format (ODIF)<br />
Part 6: Character content architectures<br />
Part 7: Raster graphics content architectures<br />
Part 8: Geometric graphics content architectures<br />
Part 10: Formal specifications<br />
In der aktuellen Spezifikation sind Part 3 und Part 9 nicht enthalten. Sie sind im Laufe der<br />
Entwicklung in andere Bereiche eingeflossen [vgl. Appelt 1991, S. 1].<br />
Technik<br />
Zusammengefaßt besteht der ODA-Standard aus zwei Teilen: erstens der Architektur 15 , mit<br />
der ein Rahmen zur Abbildung von Dokumenten (ODA) geschaffen wird. Zweitens der<br />
Definition des Open Document Interchange Format (ODIF), mit dem die ODA-Dokumente<br />
für den Austausch kodiert werden.<br />
15 Die Architektur stellt hier letztendlich auch eine Sammlung von Definitionen dar.
Austauschformate Seite 68<br />
Das ODA-Modell beschreibt ein Dokument mit drei Komponenten:<br />
• Layout information (dt. Layout-Struktur)<br />
Die Layoutinformationen sind das Ergebnis der Analyse eines Dokumentes hinsichtlich<br />
seiner Präsentation auf einem Ausgabemedium (z. B. Bildschirm, Papier). Sie bestehen<br />
aus einer Hierarchie von Positionierungsobjekten (Block, Rahmen, Seite und Seitengruppen),<br />
die in einer Baumstruktur angeordnet sind. Der Block ist das Grundelement<br />
zur Aufnahme des eigentlichen Inhalts (engl. content). Ein oder mehrere Blöcke können<br />
in einem Rahmen zusammengefaßt werden. Diese Rahmen können dann auf einer<br />
Seite plaziert werden. Mehrere Seiten können in einer Seitengruppe gesammelt werden.<br />
• Logical information (dt. Logische Struktur)<br />
Die „Logical information“ kennzeichnet die Beziehungen zwischen sogenannten logischen<br />
Objekten und ihren Attributen, z. B. ein Buch besteht aus mehreren Kapitel, das<br />
wiederum mehrere Abschnitte enthält. Mit diesen Beziehungen werden die Hierarchie<br />
und die Reihenfolge der Objekte festgelegt. ODA standardisiert weder die Bezeich-<br />
nungen der logischen Objekte, z. B. Kapitel, noch die Hierarchie der Objekte. Ebenso<br />
wie die „Layout information“ werden diese Informationen “ in einer Baumstruktur ge-<br />
speichert.<br />
• Content (dt. Inhalt, hier die Kombination aus Text, Grafik, Bildern)<br />
Der Content besteht aus sichtbaren Elementen, z. B. Text, Grafiken und Bildern (hier<br />
sind Rastergrafiken gemeint). Außerdem sind unsichtbare Informationen, wie z. B.<br />
Kontrollzeichen (Leerzeichen, Absatzende, Zeilenumbruch), enthalten.<br />
Die Layout-Struktur und die Logische Struktur können getrennt übergeben werden.<br />
Zusätzlich zu diesen drei Komponenten besitzt ein ODA Dokument ein Dokumentenprofil.<br />
Dieses Profil enthält Informationen über das Dokument, den Autor, die verwendeten Zeichensätze<br />
etc.<br />
Zur Beschreibung der ODA-Komponenten werden standardisierte Objekte, z. B. Document<br />
logical root, eingesetzt (siehe Abbildung 27). Diese Objekte werden im 2. Teil des Standards<br />
definiert und enthalten Attribute, die den Inhalt des Objektes näher definieren.
Austauschformate Seite 69<br />
Document logical root:=<br />
{object identifier, <br />
subordinates, ........}<br />
Abbildung 27: Objektspezifikation in ODA<br />
[vgl. Appelt 1991, S. 44]<br />
Jedes Objekt enthält ein Identifikationsattribut (object identifier), das als Referenz auf das<br />
Objekt genutzt wird.<br />
Für die Attribute stehen verschiedene Datentypen zur Verfügung. Der am häufigsten verwendete<br />
Typ ist INTEGER. Hierbei handelt es sich um ganze Zahlen, die sowohl positiv<br />
als auch negativ sein können. Die Werte einiger Attribute sind vom Datentyp STRING,<br />
d. h. eine Sammlung von Zeichen. Verwendet werden zwei Zeichensätze: erstens Zeichen<br />
des „ISO 6937 Part 2 16 “-Zeichensatzes und zweitens Zeichensätze, die im Dokumentenprofil<br />
definiert wurden. Zusätzlich kann auch ein OCTET STRING eingesetzt werden. Mit<br />
Hilfe des OCTET STRINGs können Daten repräsentiert werden, deren Bedeutung außerhalb<br />
des Standards liegt.<br />
Im zweiten Teil der ODA-Spezifikation wird das Open Document Interchange Format<br />
(ODIF) definiert. Die ODA-Spezifikation enthält keine Definition über die Art und Weise<br />
wie ein Dokument in einer ODA-konformen Applikation gespeichert werden sollte.<br />
Mit Hilfe von ODIF können die Dokumente für den Datenaustausch zwischen unter-<br />
schiedlichen Textverarbeitungsprogrammen kodiert werden. Die Kodierung basiert auf den<br />
ISO Standards 8824 und 8825 Abstract Syntax Notation One (ASN.1). ASN.1 ist ein standardisiertes<br />
binäres OSI-Austauschformat. Auf eine nähere Untersuchung von ODIF wird<br />
verzichtet, weil mit ODIF nur die Struktur und Dateninhalte von ODA kodiert werden.<br />
16 ISO 6937, Part 2 („Coded character sets for text communication – Part 2: Latin alphabetic and non-<br />
alphabetic graphic characters)
Austauschformate Seite 70<br />
Bewertung<br />
• Unterstützung einfacher Datentypen -> Erfüllt<br />
Der ODA-Standard enthält für die Beschreibung von Objekt-Attributen einfache Datentypen.<br />
• Unterstützung komplexer Informationsfelder -> Nicht erfüllt<br />
Innerhalb des ODA-Standards sind keine Strukturen vorhanden, welche komplexe Informationsfelder<br />
abbilden können.<br />
• Identifikation von Feldstrukturen -> Erfüllt<br />
Die mit Feldern vergleichbaren standardisierten Objekte werden über das Identifikationsattribut<br />
(object identifier) identifiziert.<br />
• Trennung von Präsentation und Inhalt -> Erfüllt<br />
Durch die getrennte Speicherung der Layout und Logical informations sowie des Contents<br />
ist die Anforderung erfüllt.<br />
• Unterstützung von Strukturinformationen -> Nicht erfüllt<br />
ODA-Dokumente enthalten keine Informationen über Struktur und Aufbau des ODA-<br />
Standards.<br />
• Erweiterungsfähigkeit -> Nicht erfüllt<br />
Die ODA-Struktur kann nicht erweitert werden. Sie erfolgt in den Gremien von ISO<br />
und CCITT.<br />
• Plattformunabhängigkeit -> Erfüllt<br />
Die ODA-Architektur ist eine abstrakte Definition, die nicht an eine Anwendung oder<br />
Plattform gebunden ist.<br />
• Herstellerunabhängigkeit -> Erfüllt<br />
Der ODA-Standard wurde in den unabhängigen Gremien von ISO und CCITT entwickelt<br />
und unterliegt deshalb nicht der Kontrolle eines Herstellers.<br />
• Hohe Akzeptanz -> Nicht erfüllt<br />
Aufgrund der Komplexität des ODA-Standards und der großen Verbreitung proprietärer<br />
Lösungen hat sich der ODA-Standard nicht im Markt der Textverarbeitungsprogramme<br />
durchsetzen können. Deshalb ist die Unterstützung von ODA sehr gering.
Austauschformate Seite 71<br />
Zusammenfassung<br />
Mit dem ODA/ODIF-Standard ist ein Rahmen geschaffen worden, mit dem Dokumente<br />
plattformunabhängig ausgetauscht werden können.<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Erfüllt<br />
Unterstützung komplexer Informationsfelder Nicht erfüllt<br />
Identifikation von Feldstrukturen Erfüllt<br />
Trennung von Präsentation und Inhalt Erfüllt<br />
Unterstützung von Strukturinformationen Nicht erfüllt<br />
Erweiterungsfähigkeit Nicht erfüllt<br />
Plattformunabhängigkeit Erfüllt<br />
Herstellerunabhängigkeit Erfüllt<br />
Hohe Akzeptanz Nicht erfüllt<br />
Tabelle 5: Bewertung des ODA<br />
Das Design des ODA-Standards ist auf die Anforderung zur Abbildung von Dokumenten<br />
ausgerichtet. Die in ODA enthaltenen Objekte sind speziell für die Speicherung dieser Informationen<br />
konzipiert worden. Die Anpassung des Standards an die Anforderungen zur<br />
Abbildung von Message-Objekten ist nicht möglich. Einerseits findet die Entwicklung des<br />
Standards in unabhängigen Gremien statt, andererseits wird die Grundstruktur von ODA<br />
verletzt.<br />
Infolgedessen ist ODA nicht als Austauschformat für Message-Objekte geeignet.<br />
4.2.6 Standard Generalized Markup Language (SGML)<br />
Historie<br />
Die Anfänge der Standard Generalized Markup Language (SGML) gehen auf ein Forschungsprojekt<br />
der IBM im Jahre 1969 zurück. Charles Goldfarb, Edward Mosher und<br />
Raymond Loire entwickelten die Generalized Markup Language (GML), die es erlaubte,<br />
mit unterschiedlichen Textverarbeitungssystemen (Editoren, Formatierern und Suchsystemen)<br />
ein gemeinsames Dokument zu pflegen. GML basiert auf der Idee des generischen<br />
Markup (engl. generic markup) von Rice und Tunnicliffe. Große Teile von GML wurden<br />
von IBM und anderen Unternehmen in der Großrechnerwelt implementiert.
Austauschformate Seite 72<br />
1978 begannen innerhalb einer Arbeitsgruppe des American National Standards Institute<br />
Committee on Information Processing die Arbeiten an einer Textbeschreibungssprache auf<br />
Basis von GML. Zu den Mitgliedern dieser Arbeitsgruppe gehörte Charles Goldfarb.<br />
Die Ergebnisse dieser Arbeitsgruppe wurden im Laufe der 80er Jahre auch von anderen<br />
Standardisierungs-Organisationen übernommen. Die Verabschiedung als internationaler<br />
Standard durch die ISO als ISO 8879 erfolgte dann im Jahre 1986.<br />
Die Verwendung von SGML ermöglicht die plattform-unabhängige Beschreibung und den<br />
plattform-übergreifenden Austausch von Dokumenten.<br />
Technik<br />
Grundsätzlich ist SGM eine Meta-Sprache, die zur Beschreibung von Dokumenten entwickelt<br />
worden ist. Es können die Bestandteile (Struktur, Layout und Inhalt) eines Dokuments,<br />
z. B. Buch oder Geschäftsbrief, getrennt beschrieben werden. Dies geschieht durch<br />
die Verwendung von generischen Anmerkungen (engl. generic Markup 17 ). Die generischen<br />
Anmerkungen sind Informationen, die Aufschluß über die Art und Eigenschaft des nach-<br />
folgenden Inhalts geben, z. B. der nachfolgende Text ist ein Abschnitt.<br />
Technisch wird dies durch Einfügen einer Kombination von Tags (dt. Identifizierungs-<br />
kennzeichen) erreicht, z. B.<br />
Dies ist ein Abschitt <br />
Die Bedeutung von PARA ist nicht standardisiert, sondern kann nur von einer SGMLkonformen<br />
Applikation, z. B. einem Textverarbeitungsprogramm, entsprechend interpretiert<br />
werden.<br />
Mit SGML können die Bezeichnungen der verschiedenen Kennzeichen und die Anwendung<br />
der Kennzeichen frei definiert werden, z. B. die Reihenfolge, in der die Tags aufeinanderfolgen<br />
dürfen oder können. Die Definition der Kennzeichen und der Anwendungsregeln<br />
ist vergleichbar mit der Grammatik einer Sprache. Allerdings kann die Bedeutung<br />
eines Tags nur durch ein geeignetes Programm interpretiert werden.<br />
17 Im Gegensatz zum Generic Markup wird in anderen Austauschformaten oder Textverarbeitungsprogrammen das<br />
descriptive Markup verwendet (engl. descriptive markup), z. B. Microsoft RTF-Format.
Austauschformate Seite 73<br />
Die Bestimmung der Kennzeichen und der Regeln erfolgt in der Document Type Definition<br />
(DTD).<br />
Die Erstellung einer DTD verlangt die Untersuchung der Dokumente hinsichtlich der<br />
Struktur und der darin vorkommenden Elemente (z. B. Bilder, Absätze, Links etc.) sowie<br />
der Art und Weise wie die Elemente angeordnet sind.<br />
Die drei wichtigsten Deklarationen, die in einem DTD vorkommen, sind:<br />
a) Element-Deklarationen<br />
Durch die Elementdeklaration werden die Kennzeichen (engl. tags), ihr Aufbau und<br />
die Anwendungsregeln definiert.<br />
Der Aufbau einer Element-Deklaration wird am nachfolgenden Beispiel eines Memos<br />
erläutert.<br />
<br />
<br />
<br />
]><br />
Abbildung 28: SGML-konforme DTD Definition<br />
Die erste Deklaration besteht in der Definition des Dokumententyps memo. Danach<br />
werden die Elemente und die Reihenfolge der einzelnen Elemente festgelegt. Ein<br />
Memo besteht aus der Elementgruppe: to, from, date und subject. Das Element subject<br />
kann, muß aber nicht vorkommen. Dies wird durch das „?“ definiert. Die Anordnung<br />
dieser Gruppe ist nicht vorgegeben (definiert durch „&“). Aus dieser Gruppe wird aber<br />
der Einsatz des Elementes text verlangt (definiert durch „ , “).<br />
Das Element text kann aus mehreren para Elementen zusammengesetzt werden; das<br />
para Element muß jedoch mindestens einmal im Dokument enthalten sein (angezeigt<br />
durch „+“). Durch die Definition wird festgelegt,<br />
daß der Inhalt aus Zeichen (parced character data) besteht. Die gleiche Definition<br />
erfolgt in der nächsten Zeile für die Elemente to, from, date, subject.
Austauschformate Seite 74<br />
Aus dieser Definition kann dann das folgende Dokument abgeleitet werden.<br />
<br />
Everyone<br />
Heike Musterfrau<br />
8. August<br />
Cats and Dogs<br />
<br />
Please remember to keep all cats and dogs indoors tonight.<br />
<br />
<br />
b) Attribut-Deklarationen<br />
Abbildung 29: SGML-Beispiel<br />
Für die weitere Charakterisierung der Elemente können Attribute (siehe Abbildung 30)<br />
definiert werden, z. B. Informationen über den Status, Sicherheit etc.<br />
<br />
Mit der Entity-Definition im DTD wird die Grundlage geschaffen, Datenquellen (Bilder,<br />
Ton) in das Dokument zu integrieren und Zeichen zu kodieren, die unterschiedliche<br />
Präsentationen auf verschiedenen Plattformen haben (z. B. deutsche Umlaute).
Austauschformate Seite 75<br />
Für die Kodierung der Dokumente wir der ISO 646 Zeichensatz eingesetzt, der aber durch<br />
Vereinbarungen im DTD erweitert werden kann. Aufgrund dieser Zusatzdefinitionen können<br />
länderspezifische Zeichensätze im Dokument eingebunden werden.<br />
Ein vollständiges SGML-Dokument muß eine Document Type Definition oder zumindest<br />
einen Entity-Verweis auf eine DTD enthalten. Damit enthält das Dokument eine Beschreibung<br />
seiner Struktur, mit der die Vollständigkeit und die Korrektheit des Dokuments sichergestellt<br />
werden kann.<br />
Für die Definition des Layouts eines Dokumentes wurde die Document Style Semantics<br />
and Specification Language (DSSL, ISO/IEC 10179) in den Standardgremien entwickelt.<br />
Mit ihr kann die Präsentation für die Tags generiert werden. Die Beschreibung des Layouts<br />
und der Inhalt können so getrennt verwaltet und getrennt ausgetauscht werden.<br />
SGML ist eine Metasprache, d. h. es können jegliche Art von Tags zur Beschreibung von<br />
Dokumenten entwickelt werden. Die Definition von SGML, die in den Standardgremien<br />
gepflegt wird, beinhaltet nur die Vorschriften über Aufbau und Anwendung der Grammatik<br />
zur Erstellung von DTDs und der damit erstellten Dokumente.<br />
Das Ergebnis einer SGML DTD-Definition wird auch als SGML-Applikation bezeichnet.<br />
Bekannte SGML-Applikationen sind die Hyper Text Markup Language (HTML) und die<br />
Text Encoding Iniative (TEI).<br />
Die Motivation für die Entwicklung der SGML-Sprache war die Beschreibung von Doku-<br />
menten mit generischem Markup. Aber aufgrund der Flexibilität der Sprache ist keine Begrenzung<br />
in der Entwicklung von SGML-Applikationen gesetzt.<br />
Bewertung<br />
• Unterstützung einfacher Datentypen -> Erfüllt<br />
Die SGML-Sprache unterstützt keine einfachen Datentypen. Doch durch die Entwicklung<br />
eines geeigneten Tag-Sets können diese Datentypen abgebildet werden, z. B.<br />
<br />
Kunde<br />
INTEGER<br />
Reco GmbH<br />
Austauschformate Seite 76<br />
• Unterstützung komplexer Informationsfelder -> Erfüllt<br />
Eine Unterstützung komplexer Informationsfelder ist in SGML ebenfalls nicht vorgesehen.<br />
Die Anforderung könnte jedoch durch eine Eigenentwicklung eines geeigneten<br />
Tag-Sets erfüllt werden.<br />
• Identifikation von Feldstrukturen -> Erfüllt<br />
Durch die Freiheit bei der Entwicklung einer Struktur zur Abbildung von Variablen<br />
kann eine Identifikation von Feldstrukturen ermöglicht werden. Die Identifikation der<br />
Feldstrukturen könnte durch eine Tag-Kombination (siehe oben) oder mit Hilfe von<br />
Attributen realisiert werden, z. B.<br />
Reco GmbH.<br />
• Trennung von Präsentation und Inhalt -> Erfüllt<br />
Die SGML-Definition sieht die Trennung von Inhalt und Präsentation vor. Dies wird<br />
durch die Kodierung des Dokumentes mit Hilfe von Tags und der Beschreibung der<br />
Präsentation der Tags durch DSSL erreicht.<br />
• Unterstützung von Strukturinformationen -> Erfüllt<br />
Die Document Type Definition ist die Beschreibung der Struktur eines Dokuments. Sie<br />
kann im Dokument mitgesendet werden.<br />
• Erweiterungsfähigkeit -> Erfüllt<br />
Die SGML-Spezifikation kann nicht erweitert werden. Sie wird in den Standardisie-<br />
rungsgremien gepflegt. Die Entwicklung und Erweiterung einer Document Type Definition<br />
ist aber jederzeit möglich.<br />
• Plattformunabhängigkeit -> Erfüllt<br />
SGML ist mit dem Ziel entwickelt worden, Dokumente plattformübergreifend austauschen<br />
zu können.<br />
• Herstellerunabhängigkeit -> Erfüllt<br />
Die Spezifikation von SGML wird in den Standardisierungsgremien durchgeführt. Eine<br />
Herstellerabhänigkeit besteht nicht.
Austauschformate Seite 77<br />
• Hohe Akzeptanz ->Teilweise erfüllt<br />
SGML ist hauptsächlich im Bereich der plattformübergreifenden Dokumentenverarbeitung<br />
und des Dokumenten-Managements bekannt. Besonders bei Regierungsunternehmen,<br />
Behörden und Großkunden wird SGML sehr oft zur Erstellung und Pflege<br />
von einheitlichen Dokumenten (z. B. Handbücher) genutzt. Verschiedene Benutzergruppen<br />
versuchen die Entwicklung und Standardisierung von bestimmten Dokumententypen<br />
(z. B. Dissertationen) voranzutreiben. Als Beispiel sei hier die Text Encoding<br />
Initiative (TEI) angeführt. Im Office-Bereich ist SGML aufgrund der marktbeherrschenden<br />
Stellung von proprietären Textverarbeitungsprogrammen weniger bekannt.<br />
Zusammenfassung<br />
Grundsätzlich ist die SGML-Sprache nicht für den Austausch von Daten konzipiert worden.<br />
Aber die Flexibilität von SGML macht es möglich, ein Modell zu entwickeln, mit<br />
dem Daten in Form von Dokumenten übermittelt werden können. Alle Anforderungen, die<br />
zur Abbildung eines Message-Objekts notwendig sind, können mit Hilfe von SGML nachgebildet<br />
werden. Die Konsistenz und die Redundanz der Daten werden durch die Verwen-<br />
dung des DTD sichergestellt.<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Erfüllt<br />
Unterstützung komplexer Informationsfelder Erfüllt<br />
Identifikation von Feldstrukturen Erfüllt<br />
Trennung von Präsentation und Inhalt Erfüllt<br />
Unterstützung von Strukturinformationen Erfüllt<br />
Erweiterungsfähigkeit Erfüllt<br />
Plattformunabhängigkeit Erfüllt<br />
Herstellerunabhängigkeit Erfüllt<br />
Hohe Akzeptanz Teilweise erfüllt<br />
Tabelle 6: Bewertung des SGML-Formats<br />
Somit kann mit SGML ein Datenaustausch zwischen heterogenen Workflow-Management-<br />
Systemen realisiert werden.
Austauschformate Seite 78<br />
4.2.7 Hyper Text Markup Language (HTML)<br />
Historie<br />
Die Hyper Text Markup Language (HTML) beruht auf einer Idee, die von Tim Berners-<br />
Lee Ende der 80er Jahre vorgestellt wurde. Sie ist die Grundlage des World Wide Web-<br />
Dienstes. Mit HTML können Dokumente über das Internet in einer plattform- und anwendungsunabhängigen<br />
Weise übertragen werden.<br />
Die erste offizielle Version wurde 1992 von der Internet Engineering Task Force (IETF)<br />
als RFC 1866 veröffentlicht und erreichte in der Folgezeit eine weltweite Bedeutung für<br />
die Informationsverteilung im Internet.<br />
1997 wurde die bisher letzte Entwicklung in Form der Version 4.0 vom World Wide Web<br />
Consortium (WWWC) veröffentlicht.<br />
Technik<br />
HTML nutzt die SGML-Idee des generischen Markups, d. h. mit Hilfe eines festgelegten<br />
Satzes von Identifikationskennzeichen (engl. tags) werden die HTML-Dokumente gegliedert<br />
und formatiert.<br />
Die Benennung der Tags und ihr Funktionsumfang ist durch die Normungsgremien der<br />
IETF und des WWWC festgelegt und kann nicht geändert werden, ohne daß die Grundfunktionalitäten<br />
der eingesetzten Programme leidet.<br />
Die Spezifikation von HTML umfaßt Kennzeichen für:<br />
a) die Gliederung der Dokumente, z. B. , , , <br />
b) die Formatierung der Dokumente, z. B. = Fett , = kursiv<br />
c) Hypertext-Mechanismen, z. B. <br />
d) Formularfunktionalität, z. B. <br />
HTML-Dokumente werden mit Hilfe des ASCII-Zeichensatzes kodiert. Innerhalb der Dokumente<br />
können neben dem Text auch Bild-, Ton-, Video-Informationen enthalten sein,<br />
die über Hypertext-Mechanismen zur Laufzeit vom Server geladen werden.<br />
Die Entwicklung von HTML-Spezifikationen wird zwar von den Standardisierungsgremien<br />
des WWWC durchgeführt. Doch führende Hersteller von HTML-konformer
Austauschformate Seite 79<br />
Software (WWW-Server und Browser) haben in der Vergangenheit immer wieder eigene<br />
Interpretationen und Erweiterungen in den HTML-Funktionsumfang und ihre Software<br />
eingebracht. Somit kann nicht mehr von einer hundertprozentigen Plattformunabhängigkeit<br />
gesprochen werden. Die Gründe dafür waren einerseits fehlende Funktionen (z. B. Rahmentechnologie)<br />
zu implementieren und damit das Erlangen eines Marktvorteils gegenüber<br />
Mitbewerbern. Andererseits ist die Weiterentwicklung des HTML-Standards in den Standardisierungsgremien<br />
von IETF und WWWC ein langwieriger Prozeß.<br />
Bewertung<br />
• Unterstützung einfacher Datentypen ->Nicht erfüllt<br />
Die HTML-Definition unterstützt keine einfachen Datentypen. Die Dateneingabe im<br />
Rahmen der Formularverarbeitung beschränkt sich nur auf Zeichen.<br />
• Unterstützung komplexer Informationsfelder ->Nicht erfüllt<br />
Die Unterstützung komplexer Informationsfelder ist nicht in der Spezifikation der<br />
HTML-Sprache enthalten.<br />
• Identifikation von Feldstrukturen -> Teilweise erfüllt<br />
Im Rahmen der Formularverarbeitung können die Felder benannt werden. Die Grund-<br />
konzeption von HTML enthält jedoch keine klassischen Feldstrukturen.<br />
• Trennung von Präsentation und Inhalt ->Nicht erfüllt<br />
Die Präsentation und der Inhalt sind in HTML-Dokumenten eng verwoben, z. B.<br />
Test der Textformatierung<br />
bedeutet, daß der Text, der nach folgt, fett angezeigt wird. Die Definition, wie das<br />
-Tag vom Formatierer zu interpretieren ist, kann nicht festgelegt werden, sondern<br />
ist Bestandteil der HTML-Spezifikation.<br />
• Unterstützung von Strukturinformationen ->Nicht erfüllt<br />
Die HTML-Definition ist zwar von SGML abgeleitet, es ist jedoch nicht vorgesehen,<br />
daß die Dokumente eine Definition ihrer Struktur enthalten. Selbst bei falsch kodierten<br />
Dokumenten wird es der Software überlassen, wie die Dokumente behandelt werden.
Austauschformate Seite 80<br />
• Erweiterungsfähigkeit -> Nicht erfüllt<br />
Die Spezifikation von HTML kann nicht erweitert werden, die Entwicklung neuer Eigenschaften<br />
und der dazugehörigen Tags obliegt dem WWWC.<br />
• Plattformunabhängigkeit -> Teilweise erfüllt<br />
Die Spezifikation der Sprache wird zwar von World Wide Web Consortium (W3C) gepflegt,<br />
sie wird allerdings durch die Hersteller in ihrem Bestreben um Marktvorteile<br />
immer wieder eigenmächtig erweitert. Dadurch ist eine Plattformunabhängigkeit nicht<br />
mehr sichergestellt.<br />
• Herstellerunabhängigkeit -> Teilweise erfüllt<br />
In der Grundkonzeption ist HTML herstellerunabhängig. Die eigenmächtige Erweiterung<br />
der Sprache im Kampf um Markvorteile hat die Herstellerunabhängigkeit aber<br />
weitgehend unterhöhlt.<br />
• Hohe Akzeptanz -> Erfüllt<br />
Seit 1992 hat sich das Internet exponentiell vergrößert. Das WWW hat eine entsprechende<br />
Akzeptanz in Bevölkerung und Wirtschaft erfahren und ist im Begriff, sich neben<br />
den klassischen Mitteln der Informationsverteilung (Fernsehen, Zeitung, Rund-<br />
funk) zu etablieren. In diesem Umfeld betätigen sich eine Vielzahl von Unternehmen<br />
als Anbietern verschiedenster Werkzeuge und Dienstleistungen.<br />
Zusammenfassung<br />
Die Konzeption von HTML zielt in erster Linie auf die Informationsverteilung mit Hilfe<br />
von Dokumenten ab.<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Nicht erfüllt<br />
Unterstützung komplexer Informationsfelder Nicht erfüllt<br />
Identifikation von Feldstrukturen Teilweise erfüllt<br />
Trennung von Präsentation und Inhalt Nicht erfüllt<br />
Unterstützung von Strukturinformationen Nicht erfüllt<br />
Erweiterungsfähigkeit Nicht erfüllt<br />
Plattformunabhängigkeit Teilweise erfüllt<br />
Herstellerunabhängigkeit Teilweise erfüllt<br />
Hohe Akzeptanz Erfüllt<br />
Tabelle 7: Bewertung des HTML-Formats
Austauschformate Seite 81<br />
Eine Abbildung des Message-Objekts ist mit den vorhandenen Möglichkeiten und Eigenschaften<br />
des HTML-Formats nicht möglich. So werden entscheidende Anforderung, z. B.<br />
die Unterstützung einfacher Datentypen und komplexer Informationsfelder nicht erfüllt.<br />
Eine Erweiterung des HTML-Formats ist nicht möglich, weil die Entwicklung des HTML-<br />
Funktionsumfang in den Normungsgremien erfolgt.<br />
Somit ist HTML nicht als Austauschformat für Message-Objekte geeignet.<br />
4.2.8 Extensible Markup Language (XML)<br />
Historie<br />
Mitte 1996 gründete eine Gruppe von 80 SGML-Experten zusammen mit dem World Wide<br />
Web Consortium eine SGML-Arbeitsgruppe unter der Führung von Jon Bosak (SUN Microsystems).<br />
Ihr Ziel war es, eine Markup-Sprache zu entwickeln, welche die gleiche gene-<br />
relle Verwendbarkeit wie SGML haben sollte. Zudem sollten bestehende Schwächen des<br />
WWW-Dienstes überwunden und eine einfache Implementierung in die Strukur des<br />
WWW-Dienstes ermöglicht werden.<br />
Im November 1996 wurde der erste Entwurf der Extensible Markup Language (XML) auf<br />
der SGML-Konferenz in Boston veröffentlicht. Nach der Publikation des zweiten Entwurfs<br />
im April 1997 wurden Anfang Juli 1997 die Ergebnisse, gemäß den Richtlinien des World<br />
Wide Web Consortiums, standardisiert. Zur gleichen Zeit wurde die SGML-Arbeitsgruppe<br />
in die W3C-XML-Arbeitsgruppe überführt.<br />
Seit dieser Zeit hat die Entwicklung von XML sowie die damit verbundenen Aktivitäten in<br />
der EDV-Industrie und verschiedener XML/SGML-Arbeitsgruppen einen ähnlich stürmischen<br />
Verlauf genommen wie 1992 das Internet und der World Wide Web-Dienst.<br />
Technik<br />
XML ist eine Untermenge der Standard Generalized Markup Language (SGML), d. h. die<br />
Grundkonzepte von SGML (siehe Kapitel 4.2.6) wurden übernommen. Komplexe Spezifikationen,<br />
die speziell zur Dokumentenerstellung in SGML enthalten sind, wurden auf das<br />
notwendige Maß für den WWW-Dienst reduziert. Dieser Umstand kann am Umfang der<br />
Spezifikationen sehr gut abgelesen werden. Die Definition von SGML umfaßt ca. 500<br />
Seiten, während die XML-Spezifikation ca. 30 Seiten stark ist.
Austauschformate Seite 82<br />
Mit XML werden einige Schwächen der HTML-Sprache überwunden, die bis heute eine<br />
grundlegende Komponente des WWW-Dienstes sind. Sie liegen einerseits im eingeschränkten<br />
Umfang der HTML-Tags und andererseits in der unzureichenden Möglichkeit,<br />
die HTML-Sprache an individuelle Anforderungen anzupassen. Darüber hinaus sind in<br />
HTML der Inhalt eines Dokumentes und die Layoutinformationen miteinander vermischt.<br />
Diese können nun durch die Verwendung von XML und XSL getrennt behandelt werden.<br />
Der XML-Standard wird nach Vollendung der Arbeiten 18 drei Teile umfassen:<br />
• XML-Sprachdefinition<br />
Die Definition der Grundkonzeption von XML.<br />
• XML-Link:<br />
Die Definition und die Konventionen für das Erstellen von Hyperlinks, z. B. das Linking<br />
von Dokumenten innerhalb von XML-Dokumenten und über den WWW-Dienst.<br />
• XSL:<br />
Die Definition der Sprache mit der das Layout (Style) bestimmt werden kann. XSL ist<br />
eine Untermenge der DSSL-Sprache.<br />
XML ist eine Meta-Sprache, die auf der Idee des generischen Markups aufgebaut. Ebenso<br />
wie mit SGML können die Tags und die Grammatik in einer Document Type Definition<br />
definiert werden. Im Vergleich zu SGML sind die Regeln für das Erstellen einer XML-<br />
konformen DTD jedoch erheblich vereinfacht worden.<br />
Eine Neuerung von XML ist das Konzept des korrekten Aufbaus des Dokumentes (engl.<br />
well formness) und die Einhaltung der Syntaxregeln (engl. validation). Enthält eine XML-<br />
Dokument eine Document Type Definition oder den Verweis (engl. link) darauf, so kann<br />
die lesende Anwendung (z. B. Parser) überprüfen, ob das Dokument gemäß den darin enthaltenen<br />
Regeln erstellt wurde. Ohne die DTD kann überprüft werden, ob ein Anfangstag<br />
immer ein Endtag besitzt und die Tags korrekt in der Tiefe geschachtelt sind. Durch diesen<br />
Ansatz können Anwendungen, die nur eine kleine Anzahl von Tags benötigen, schnell und<br />
einfach erstellt werden, ohne daß eine spezielle DTD entwickelt werden muß, wie dies die<br />
SGML-Spezifikation vorschreibt.<br />
18 Ein Teil der Spezifikationen liegt den Gremien als Entwurf vor und muß noch verabschiedet werden.
Austauschformate Seite 83<br />
Aufgrund der verwandtschaftlichen Nähe zu SGML ist bereits eine große Anzahl von<br />
SGML-Herstellern in der Lage, XML-Produkte anzubieten. Zusätzlich ist bereits mit der<br />
Integration von XML-Funktionalitäten in die Software des WWW-Dienstes begonnen<br />
worden.<br />
Bewertung<br />
• Unterstützung einfacher Datentypen -> Erfüllt<br />
Die XML-Sprache unterstützt keine einfache Datentypen. Aber ebenso wie mit SGML<br />
können durch die Entwicklung eines geeigneten Tag-Sets diese Datentypen abgebildet<br />
werden, z. B.<br />
<br />
Kunde<br />
INTEGER<br />
Reco GmbH<br />
<br />
• Unterstützung komplexer Informationsfelder -> Erfüllt<br />
XML hat standardmäßig keine Unterstützung komplexer Informationsfelder. Aber mit<br />
den Mitteln von XML ist es möglich, eine solche Funktion durch die Entwicklung eines<br />
geeigneten Tag-Sets abzubilden.<br />
• Identifikation von Feldstrukturen -> Erfüllt<br />
Durch die Freiheit bei der Entwicklung einer Struktur zur Abbildung von Variablen<br />
kann eine Identifikation von Feldstrukturen ermöglicht werden. Die Identifikation<br />
könnte durch eine Tag-Kombination (siehe oben) oder mit Hilfe von Attributen realisiert<br />
werden, wie z. B.<br />
Reco GmbH<br />
• Trennung von Präsentation und Inhalt ->Erfüllt<br />
Die XML-Definition sieht, ebenso wie SGML, die Trennung von Inhalt und Präsentation<br />
vor. Dies wird durch die Kodierung des Dokumentes mit Hilfe von Tags und der<br />
Beschreibung der Präsentation der Tags durch XSL erreicht.
Austauschformate Seite 84<br />
• Unterstützung von Strukturinformationen -> Erfüllt<br />
Die Document Type Definition definiert die Struktur eines Dokuments. Sie kann im<br />
Dokument mitgesendet werden.<br />
• Erweiterungsfähigkeit -> Erfüllt<br />
Die XML Spezifikation kann nicht erweitert werden. Sie wird in den Standardisierungsgremien<br />
gepflegt. Die Entwicklung und Erweiterung einer Document Type Definition<br />
ist aber jederzeit möglich.<br />
• Plattformunabhängigkeit -> Erfüllt<br />
XML ist mit dem Ziel entwickelt worden, plattformunabhänig Daten in Form von Dokumenten<br />
zu kodieren und austauschen zu können.<br />
• Herstellerunabhängigkeit -> Erfüllt<br />
Die Spezifikation von XML wird in den Standardisierungsgremien des World Wide<br />
Web Consortium (WWWC) vorgenommen; eine Abhängigkeit von bestimmten Her-<br />
stellern besteht nicht.<br />
• Hohe Akzeptanz -> Erfüllt<br />
Die weite Verbreitung des WWW und die Notwendigkeit die Nachteile der HTML-<br />
Sprache mit Hilfe eines Standards zu überwinden, lassen XML für die Industrie als die<br />
ideale Lösung erscheinen. Die Akzeptanz ist enorm hoch, was sich an der Beteiligung<br />
führender Unternehmen (IBM, Microsoft, Oracle) und Arbeitsgruppen an der Entwicklung<br />
der XML-Sprache in den Standardgremien ablesen läßt. Die Verfügbarkeit<br />
von Produkten, die XML unterstützen ist bereits in diesem frühen Stadium der XML-<br />
Entwicklung sehr hoch.<br />
Zusammenfassung<br />
Ebenso wie SGML ist die XML-Sprache nicht mit den notwendigen Anforderungen für die<br />
Übertragung des Message-Objekts ausgestattet. Die Flexibilität von XML erlaubt es jedoch,<br />
durch die Entwicklung eines geeigneten Tag-Sets diese Anforderungen nachzubilden.
Austauschformate Seite 85<br />
Anforderung Bewertung<br />
Unterstützung einfacher Datentypen Erfüllt<br />
Unterstützung komplexer Informationsfelder Erfüllt<br />
Identifikation von Feldstrukturen Erfüllt<br />
Trennung von Präsentation und Inhalt Erfüllt<br />
Unterstützung von Strukturinformationen Erfüllt<br />
Erweiterungsfähigkeit Erfüllt<br />
Plattformunabhängigkeit Erfüllt<br />
Herstellerunabhängigkeit Erfüllt<br />
Hohe Akzeptanz Erfüllt<br />
Tabelle 8: Bewertung des XML-Formats<br />
Somit kann auf der Basis von XML der Datenaustausch mittels Message-Objekten zwischen<br />
heterogenen Workflow-Management-Systemen realisiert werden.<br />
Nach Abschluß der Untersuchungen der potentiell geeigneten Kandidaten für die Realisie-<br />
rung des Datenaustauschs mit Message-Objekten zwischen heterogenen weitverteilten<br />
Workflow-Management-Systemen, werden im folgenden Abschnitt die Ergebnisse zu-<br />
sammengefaßt und eine Auswahl des geeigneten Kandidaten für die prototypische Realisierung<br />
vorgenommen.
Austauschformate Seite 86<br />
4.3 Abschlußbetrachtung und Auswahl geeigneter Formate<br />
Grundlage der Untersuchungen waren die Anforderungen, die im Kapitel 4.1 aufgestellt<br />
wurden. Diese resultierten aus den Überlegungen hinsichtlich der Abbildung und des<br />
Transports der Message-Objekten mittels der Lotus Compound Document-Struktur, Gedanken<br />
zur Sicherheit und der Interoperabilität von heterogenen Systemen. Zusätzlich<br />
wurden die Anforderungen in notwendige und optionale Anforderungen (siehe Abbildung<br />
31) kategorisiert. Die Kategorisierung orientierte sind daran, ob eine Anforderung unbedingt<br />
erfüllt sein muß, um das Ziel (Abbildung und Transport des Message-Objekts) zu<br />
erreichen. Die Anforderungen, die nur die spätere Entscheidungsfindung unterstützen,<br />
wurden als optional eingestuft.<br />
Anforderung Zum Erreichen des Ziels<br />
Unterstützung einfacher Datentypen Notwendig<br />
Unterstützung komplexer Informationsfelder Notwendig<br />
Identifikation von Feldstrukturen Notwendig<br />
Trennung von Präsentation und Inhalt Notwendig<br />
Unterstützung von Strukturinformationen Notwendig<br />
Erweiterungsfähigkeit Optional/Notwendig<br />
Plattformunabhängigkeit Optional<br />
Herstellerunabhängigkeit Optional<br />
Hohe Akzeptanz Notwendig<br />
Abbildung 31: Anforderungstabelle<br />
Ein Sonderstellung nimmt hierbei die Anforderung Erweiterbarkeit ein. Sie ist optional,<br />
wenn ein Format bereits alle notwendigen Anforderungen erfüllt. Falls dies nicht der Fall<br />
ist, muß das Austauschformat erweiterbar sein, um notwendige Anforderungen realisieren<br />
zu können.<br />
In einer Vorauswahl der potentiell geeigneten Kandidaten wurden solche ausgewählt, die<br />
für den Transport von Objekten (Dokumenten, Daten, Nachrichten) schon definiert waren.<br />
Zudem verfügten alle über einen entsprechenden Bekanntheitsgrad aufgrund ihres Status<br />
als Norm oder Industriestandard.<br />
Falls kein untersuchtes Austauschformat geeignet sein sollte, so wurden vorbeugend Sprachen<br />
zur Definition von Austauschformaten in die Untersuchung aufgenommen
Austauschformate Seite 87<br />
Für die Untersuchung wurden folgende Formate und Definitionssprachen ausgewählt:<br />
• Rich-Text-Format (RTF)<br />
• Portable Document Format (PDF)<br />
• Elektronic Data Interchange for Administration and Transport (EDIFACT)<br />
• Mulitpurpose Internet Mail Extension (MIME)<br />
• Open Document Architecture (ODA)<br />
• Hyper Text Markup Language (HTML)<br />
• Standardard Genealized Markup Language (SGML) und<br />
• Extensible Markup Language<br />
Die nachfolgende Abbildung zeigt die Zusammenfassung aller Bewertungstabellen der<br />
Untersuchung:<br />
Format RTF PDF<br />
Unterstützung einfacher<br />
Datentypen<br />
Unterstützung<br />
komplexer Informationsfelder<br />
Identifikation von<br />
Feldstrukturen<br />
Trennung von Präsentation<br />
und Inhalt<br />
Unterstützung von<br />
Strukturinformationen<br />
Austauschformate<br />
EDI-<br />
FACT<br />
Definitionssprachen<br />
MIME ODA HTML SGML XML<br />
+ + 0 0 + - + +<br />
- - - 0 - - + +<br />
0 + - 0 + 0 + +<br />
- + - 0 + - + +<br />
- 0 - 0 0 - + +
Austauschformate Seite 88<br />
Erweiterungsfähigkeit<br />
Plattformunabhängigkeit<br />
Herstellerunabhängigkeit<br />
- + 0 0 0 - + +<br />
0 + + + + 0 + +<br />
- - + + + 0 + +<br />
Hohe Akzeptanz 0 + + + - + 0 +<br />
Legende: - = Nicht erfüllt 0 = Teilweise erfüllt + = Erfüllt<br />
Tabelle 9: Bewertungsübersicht der untersuchten Formate und Definitionssprachen<br />
Die Untersuchung zeigte, daß kein Austauschformat zur Abbildung eines Message-Objekts<br />
geeignet ist. Dies ist hauptsächlich dadurch zu begründen, daß die Austauschformate immer<br />
auf die speziellen Anforderungen der zu transportierenden Objekte hin konzipiert<br />
wurden. Die untersuchten Austauschformate haben deshalb Stärken und Schwächen hin-<br />
sichtlich der Eignung als Austauschformate für Message-Objekte. So wurden beispielsweise<br />
einfache Datentypen immer nur dann unterstützt, wenn sie zur Beschreibung von Attributen<br />
(ODA, PDF) benötigt wurden, die für das Objekt wichtige Informationen transportieren<br />
sollten.<br />
Die Unterstützung komplexer Informationsfelder war in keinem Format vorgesehen, weil<br />
die Objekte (z. B. EDIFACT-Nachrichten, Word-Dokumente, PDF-Dokumente) grundsätzlich<br />
keine solche spezielle Funktionalität benötigten.<br />
Ein Sonderstellung nimmt MIME ein. Es könnte durch Eigenentwicklungen um notwendige<br />
Funktionalitäten zur Abbildung der Message-Objekte erweitert werden, da es aufgrund<br />
seines Designs zum generellen Transport von Objekten konzipiert wurde.<br />
Die in die Untersuchung mit einbezogenen Sprachen zur Definition von Austauschformaten<br />
(SGML, XML) könnten jedoch alle notwendige Anforderungen (siehe Tabelle) erfüllen,<br />
wenn damit ein eigenentwickeltes und vorerst proprietäres Austauschformat realisiert
Austauschformate Seite 89<br />
würde. Dem proprietären Format würde aber die notwendige Plattformunabhängigkeit,<br />
Herstellerunabhängigkeit und somit auch die Akzeptanz fehlen. Dieser Nachteil wird aber<br />
dadurch kompensiert, daß mit diesen standardisierten Sprachen universelle Werkzeuge zur<br />
Verfügung stehen, die über die notwendige Unabhängigkeit und Akzeptanz verfügen. Sie<br />
sind mit der standardisierten Programmiersprache C vergleichbar, die als kleinster gemeinsamer<br />
Nenner für die plattformübergreifende Realisierung von Programmen gilt und über<br />
eine hohe Akzeptanz verfügt.<br />
Ein weiterer Vorteil gegenüber MIME ist, daß SGML und XML Strukturinformationen,<br />
die bereits in der Spezifikation der Sprachen vorgesehen sind, über den zulässigen Aufbau<br />
des Formats mitliefert. Dies erlaubt eine Überprüfung des Inhalts eines kodierten Message-<br />
Objekts auf Vollständigkeit und Richtigkeit. Zudem besitzen beide Sprachen die Möglich-<br />
keit, Inhalt und Präsentation voneinander getrennt zu behandeln. Dabei kann die prototypische<br />
Implementierung eines Austauschformats durch kontinuierliche Weiterentwicklung in<br />
eine professionelle überführt werden. MIME müßte um diese Funktionen zusätzlich erweitert<br />
werden.<br />
Für den Austausch der Message-Objekte wird deshalb die prototypische Entwicklung eines<br />
Austauschformats mit Hilfe von XML vorgeschlagen. XML wird SGML vorgezogen, da<br />
es ein effiziente Untermenge von SGML ist und über eine sehr hohe Akzeptanz in der Industrie<br />
verfügt.<br />
Im nächsten Kapitel werden die Konzeption eines Austauschformates auf Basis von XML<br />
vorgestellt. Dieses Austauschformat wird im folgenden MOTF (Message Objekt Transport<br />
Format) genannt. Zusätzlich wird die Funktionsweise anhand eines Prototypen demonstriert.
Konzeption und prototypische Implementierung Seite 90<br />
5 Konzeption und prototypische Realisierung<br />
Nach der Untersuchung und Bewertung potentieller Austauschformate im vorangegangen<br />
Kapitel und der Entscheidung ein eigenes Austauschformat zu entwickeln, wird im folgenden<br />
Kapitel die Definition des Austauschformats MOTF (Message Objekt Transport Format)<br />
mit XML und seine Funktionsweise innerhalb der WAGS-Systemumgebung durch<br />
eine prototypische Implementierung dargestellt.<br />
Im Rahmen dieser Darstellung werden in einem Fallbeispiel WAGS-Message-Objekte in<br />
einem aktiven Workflow-Prozeß zwischen zwei Unternehmen ausgetauscht. Dazu wird ein<br />
ausgehendes Message-Objekt, das auf der Basis der Lotus Notes Compound Document-<br />
Struktur realisiert ist, in das Austauschformat umgewandelt. Ebenso wird anhand einer<br />
eingehenden E-Mail, die ein in MOTF kodiertes Message-Objekt enthält, die Konvertie-<br />
rung in ein Lotes Notes-konformes WAGS-Message-Objekt demonstriert.<br />
Für den Umwandlungsprozeß wird ein Konverter benötigt, der die Message-Objekte bear-<br />
beiten kann. Zusätzlich muß für das Austauschformat eine Document Typ Definition entwickelt<br />
werden, welche die vorgegebene Struktur des Message-Objekts abbildet.<br />
5.1 Konzeption<br />
Die prototypische Realisierung wird innerhalb des WAGS-Systems durchgeführt, dessen<br />
Konzeption und Architektur im Kapitel 3.2 erläutert wurde.<br />
Für die prototypische Realisierung werden folgende Annahmen und Anforderungen definiert:<br />
1. Für das Austauschformat MOTF wird eine Document Type Definition benötigt. Die<br />
Entwicklung der XML Document-Type-Definition sollte sich an der vorgegebenen<br />
Struktur der Definition von Message-Objekten von Dietmar Saliger [Saliger 1998,<br />
S.106] orientieren.<br />
2. Der Konverter sollte innerhalb der Gateway-Datenbank implementiert werden, weil die<br />
Formatumwandlungen der Message-Objekte ein Teilprozeß der Gateway–Bearbeitung<br />
ist.<br />
3. Der Konverter sollte die WAGS Message-Objekte in das Austauschformat konvertieren<br />
können.
Konzeption und prototypische Implementierung Seite 91<br />
4. In eingehenden E-Mails sollte das Austauschformat erkannt werden sowie die Daten<br />
extrahiert werden können.<br />
5. In Hinblick auf allgemeine Verwendbarkeit sollte der Konverter so beschaffen sein,<br />
daß auch weitere Formate verwendet werden können.<br />
5.1.1 Architektur des Konverters<br />
Der Konverter ist Bestandteil der Gateway-Datenbank und wird im Laufe der Bearbeitung<br />
der Message-Objekte durch Verarbeitungsroutinen aktiviert. Er besteht aus einem Umwandlungsmodul<br />
OUT für ausgehende Message-Objekte und einem Umwandlungsmodul<br />
IN für eingehenden Message-Objekte (siehe Abbildung 31).<br />
Die Umwandlungsmodule (IN/OUT) sind modular aufgebaut. Jedes Formatmodul (XML,<br />
SGML, MIME) könnte deshalb unabhängig von der Gesamtfunktionalität entwickelt und<br />
in den Konverter integriert werden.<br />
OUT<br />
IN<br />
Basistools<br />
XML<br />
SGML<br />
MIME<br />
andere<br />
Abbildung 32: Architektur des Konverters<br />
Für alle Formate wird eine Funktion zum Erstellen des Formats (Builder) und eine Funktion<br />
zum Lesen und Analysieren (Parser) des Datenstroms benötigt. Sowohl der Builder als<br />
auch der Parser für XML wurden mit Hilfe der Programmiersprache Lotus Script realisiert.<br />
Parser und Builder können später eventuell durch professionelle externe Programme von<br />
Drittanbietern ersetzt werden.<br />
Für die Umwandlung der Notes-konformen Message-Objekts in MOTF wurden String-<br />
Funktionen zum Auslesen und Erstellen von Rich-Text-Feldern benötigt. Für die Rück-
Konzeption und prototypische Implementierung Seite 92<br />
umwandlung der in MOTF kodierten empfangenen Message-Objekte wurden Funktionalitäten<br />
aus dem Bereich der Feld-, Zeichen- und Rich-Text-Feldbearbeitung benötigt. Sie<br />
sind entweder Bestandteil von Lotus Script, z. B. String-Operationen, oder wurden mit<br />
Hilfe von Lotus Script als Funktionen, z. B. Herausfiltern von Schlüsselwörtern aus einer<br />
Zeichenfolge, programmiert.<br />
Die Bearbeitung der Rich-Text-Felder, insbesondere das Auslesen und Analysieren der<br />
Inhalte, ist in Lotus Script noch nicht ausreichend implementiert. Es fehlen Funktionen, die<br />
das Extrahieren weitergehender Informationen, wie z. B. Formatierung des Textes, Bildinformationen<br />
etc., erlauben. Aufgrund der Komplexität dieser Aufgabe wurde auf eine Eigenentwicklung<br />
verzichtet. Die Umwandlung der Rich-Text-Felder beschränkt sich deshalb<br />
auf die unformatierten ASCII-Texte.<br />
5.1.2 Definition des Austauschformats mit Hilfe der Document Type Definition<br />
Die Entwicklung der Struktur der Document Type Definition für das Austauschformat<br />
MOTF richtet sich nach der Definition des Message-Objekts von Dietmar Saliger [Saliger<br />
1998, S.106] (siehe Anhang 8.2).<br />
Die Definition des Message-Objekts (siehe Abbildung 33) ist schematisch wie folgt aufgebaut:<br />
Header<br />
Workflow-<br />
Steuerungs-<br />
Daten<br />
Content<br />
Block 1<br />
Block 2<br />
Block n<br />
Variable 1<br />
Variable 2<br />
Variable n<br />
Name<br />
Typ<br />
Inhalt<br />
Abbildung 33: Schematische Darstellung der Message-Objekt-Struktur<br />
1. Die für die E-Mail notwendigen Felder werden im Header-Bereich definiert. Sie bestehen<br />
aus der Empfänger-Adresse und dem Betreff.
Konzeption und prototypische Implementierung Seite 93<br />
2. Im Workflow-Steuerungs-Datenbereich werden die Felder definiert, die für die Verwaltung<br />
des Workflows wichtig sind.<br />
3. Der Content-Bereich enthält die Content-Blöcke. Die einzelnen Variablen werden mittels<br />
einer Meta-Struktur (Generic_Name_X, Generic_Typ_X, Generic_Body_X) beschrieben.<br />
Aus dem Namen eines Content-Blocks (Generic_Block_X) und dem Meta-<br />
Variablennamen (Generic_Name_X) wird der Variablenname gebildet.<br />
Beispiel:<br />
Variable Inhalt<br />
Generic_Block_1 Kunde<br />
Generic_Name_1 Name<br />
Generic_Typ_1 TXT<br />
Generic_Body Reco GmbH<br />
Aus diesen Informationen kann die Variable: „Kunden_Name“ mit dem Feldinhalt<br />
„Reco GmbH“ vom Datentype Text erstellt werden.<br />
Diese Struktur wurde in eine entsprechende XML-konforme Document Type Definition<br />
(DTD) überführt. Ein XML-Parser kann mit Hilfe dieser DTD die notwendigen Überprü-<br />
fungen auf Vollständigkeit der Struktur und Korrektheit der Syntax vornehmen.<br />
Die DTD besteht aus vier Definitionsbereichen (siehe Abbildung 33).<br />
1. Strukturbeschreibung des Message-Objekts<br />
Mit dem Eintrag „“<br />
wird die Grobstruktur des XML-Objekts festgelegt. Dadurch wird sichergestellt, daß<br />
die definierten Elemente vorhanden sind und die Reihenfolge eingehalten wird. Enthält<br />
ein XML-Dokument eine falsche Reihenfolge oder ist ein Feld nicht vorhanden, so<br />
wird ein XML-Parser den Validierungsprozeß mit einer Fehlermeldung abbrechen.<br />
2. Bereich für die Workflow-Felder (Declaration of Workflowfields)<br />
Dieser Bereich enthält die Definition der Felder, die für die Steuerung des Workflows<br />
notwendig sind, z. B. messageobjektid. Durch den Eintrag „(#PCDATA)“ wird festgelegt,<br />
daß das Feld nicht weiter untergliedert wird, sondern die Daten in Form von Zeichen<br />
enthält.
Konzeption und prototypische Implementierung Seite 94<br />
3. Bereich der Content-Blöcke (Declaration of Contentblocks)<br />
Die Definition des Content-Blocks enthält eine oder mehrere Variablen, die zu diesem<br />
Block gehören. Mit der Definition<br />
„<br />
wird festgelegt, daß jeder Block ein Identifikations-Attribut (ID) enthalten kann. Das<br />
ID-Attribut „name“ wird zur Bildung des Variablennamens genutzt.<br />
4. Bereich der Variablen-Definition (Declaration of Variable)<br />
In diesem Bereich werden die Variablen abgebildet. Jede Variable wird durch die Meta-Struktur<br />
(vartype, varhelp, varbody) beschrieben. Für die Bildung des Variablennamens<br />
muß jede Variablendefinition das Identifikations-Attribut „name“ enthalten.<br />
<br />
<br />
<br />
me,mocode,moconcerning,mocontentblocks,modbapplid,modbapp<br />
lmail,modbgatewaymail,moleafid,momailtype,momessageobject<br />
id,momessagereferenceid,momessagereplyto,moprocessid,mowo<br />
rkflowid,momessagetype,contentblock?) ><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
name ID #IMPLIED><br />
<br />
<br />
name ID #REQUIRED><br />
<br />
<br />
<br />
Abbildung 34: Document Type Definition
Konzeption und prototypische Implementierung Seite 95<br />
5.2 Prototypische Realisierung<br />
In diesem Abschnitt wird anhand eines Fallbeispiels die Umwandlung eines ausgehenden<br />
Notes-konformen Message-Objekts in das Austauschformat MOTF sowie die Rückumwandlung<br />
eines eingehenden Message-Objekts demonstriert.<br />
5.2.1 Fallbeispiel<br />
In dem nachfolgenden Fallbeispiel wird von der Stadt Emmerich ein Projekt durchgeführt,<br />
bei dem eine Containeranlage (Bürokomplex) benötigt wird. Als Anbieter von Bürocontainern<br />
wird der Reco GmbH im Laufe des Projekts ein Message-Objekt mit den notwendigen<br />
Informationen zugeleitet und in das lokale Workflow-System eingespielt. Nach der<br />
Bearbeitung durch die Reco GmbH werden die neuen Informationen wieder an die Stadt<br />
Emmerich zurückgeleitet [vgl. Saliger 1998 S. 74].<br />
Workflow-Abonnent (Stadt Emmerich) Workflow-Anbieter (Reco GmbH)<br />
Projekt<br />
spezifizieren<br />
Angebot<br />
prüfen<br />
Projekt<br />
abschließen<br />
Prozeß:<br />
Planung<br />
Containeranlage<br />
in<br />
out<br />
Angaben<br />
prüfen<br />
Kostenvoranschlag<br />
erstellen<br />
Angebot<br />
erstellen<br />
Angebot<br />
versenden<br />
in<br />
out<br />
Bestellung<br />
aufnehmen<br />
Produktion<br />
informieren<br />
Auftragsbestätigung<br />
versenden<br />
Abbildung 35: Fallbeispiel [vgl. Saliger 1998, S. 74]<br />
5.2.2 Behandlung eines ausgehenden Message-Objekts<br />
Prozeß:<br />
Angebot<br />
erstellen<br />
(Reco GmbH)<br />
Prozeß:<br />
Bestellung<br />
(Reco GmbH)<br />
Nachdem das Projekt als Instanz in der Workflow-Umgebung gestartet und die Projektdaten<br />
innerhalb des ersten Bearbeitungsschritts eingegeben wurden, sollen diese Projektdaten<br />
und die Workflow-relevanten Daten an die Zielumgebung (Reco GmbH) gesendet werden.
Konzeption und prototypische Implementierung Seite 96<br />
Dazu wird von der WAGS Engine mittels des Content-Managements (siehe Kapitel<br />
3.2.2.1) eine inhaltliche Filterung der Daten vorgenommen und das erzeugte Message-<br />
Objekt von der Applikationsumgebung in die Gateway-Datenbank weitergeleitet. [vgl.<br />
Saliger 1998, S. 75 ff]. Zum Zeitpunkt des Eintreffens in der Gateway-Datenbank befindet<br />
sich das WAGS Message-Objekt noch in der Lotus Notes Compound Document-Struktur.<br />
Die Gateway-Datenbank hat bei ausgehenden Message-Objekten die Aufgaben<br />
• die Message-Objekte auf Vollständigkeit zu prüfen,<br />
• aus dem External Directory die zur Weiterleitung notwendigen Informationen (Kom-<br />
munikationskanal, Globale Routing Information) zu entnehmen,<br />
• die internen Identifikationsmerkmale zu entfernen,<br />
• die Trackinginformationen zu verarbeiten,<br />
• die Formatkonvertierung (z. B. XML etc.) aufgrund der Kommunikationskanal-<br />
Information durchzuführen<br />
• und das ordnungsgemäß bearbeitete Objekt mit Hilfe der E-Mail-Komponenten von<br />
Lotus Notes an den Adressaten weiterzusenden.<br />
Diese Aufgaben werden durch einen Server Agenten (Incoming Mail) durchgeführt. Dieser<br />
Hintergrundprozeß wird periodisch aktiviert und sammelt alle unbehandelten Lotus Notes<br />
Dokumente (Message-Objekte und E-Mails) in einer Bearbeitungstabelle. Durch die Auswertung<br />
der im Message-Objekt enthaltenen Statusfelder entscheidet der Prozeß, ob es sich<br />
um ein ausgehendes oder eingehendes Message-Objekt handelt.<br />
Im vorliegenden Fall handelt es sich um ein ausgehendes Message-Objekt. Der Server Agent<br />
analysiert den Kommunikationskanal, erhält die Information „XML“ und übergibt das<br />
Message-Objekt an den XML-Konverter.<br />
Die nachfolgende Abbildung zeigt ausschnittsweise die in einem Message-Objekt enthaltenen<br />
Workflow-Steuerungsfelder (z. B. moProcessID) und Content-Block-Datenfelder<br />
(z. B. Generic_Block_1, Generic_Name_1) vor der XML-Umwandlung. Im linken Bereich<br />
der abgebildeten Fenster sind die Feldnamen aufgeführt, im rechten der Inhalt des schwarz<br />
markierten Feldes.
Konzeption und prototypische Implementierung Seite 97<br />
Abbildung 36: Message-Objekt vor der XML-Umwandlung<br />
Der XML-Konverter erzeugt nun im ersten Schritt ein Rich-Text-Feld mit dem Namen<br />
Body. Dieses Feld ist der Container für das XML-Dokument und Bestandteil der E-Mail,<br />
die an die Partnerorganisation gesendet wird. Daran anschließend werden mittels Rich-<br />
Text-Feld-Operationen die grundlegenden XML-Informationen in das Feld eingefügt.
Konzeption und prototypische Implementierung Seite 98<br />
Nach Abschluß des ersten Schritts enthält das Feld folgende Informationen:<br />
<br />
<br />
<br />
Im zweiten Schritt werden gemäß der Document Type Definition die Workflow-<br />
Steuerungsfelder konvertiert. Dazu werden die einzelnen Felder aus dem Message-Objekt<br />
ausgelesen und im Body-Feld mit Hilfe von String-Operationen in die entsprechende Reihenfolge<br />
überführt, z. B.<br />
2296232376A8B008C12565BB0049C415.<br />
Im dritten Schritt werden die einzelnen Content-Blöcke bearbeitet. Beginnend mit dem<br />
Feld „Generic_Block_1“ wird die Bezeichnung des ersten Content-Blocks entnommen und<br />
zum Body-Feld hinzugefügt. Enthält das Feld „Generic_Block_1“ die Information „Kunde“<br />
(siehe zweites Fenster der Abbildung 36), so ist das Ergebnis der Umwandlung:<br />
<br />
Im vierten Schritt werden die Variablen umgewandelt, die zu einem Content-Block gehö-<br />
ren.<br />
<br />
[txt]<br />
Name der Kundenadresse<br />
Stadt Emmerich<br />
<br />
Der vierte Schritt wird durch eine Schleifenoperation so lange wiederholt, bis keine Variablen<br />
für den Content-Block vorhanden sind. Der Content-Block wird dann im Body-Feld<br />
durch die Einfügung<br />
<br />
abgeschlossen.<br />
Wenn keine weiteren Variablen mit dem Name „Generic_Block_x“ (x >0) existieren, wird<br />
als letzte Operation der Eintrag<br />
Konzeption und prototypische Implementierung Seite 99<br />
im Body-Feld eingetragen. Damit endet die Umwandlung des Message-Objekts in MOTF.<br />
Nach Abschluß der Konvertierung (siehe Abbildung 37) enthält das Body-Feld nun alle<br />
relevanten Felder des Message-Objekts in der entsprechenden MOTF-Struktur. Im Anhang<br />
8.3 ist ein vollständiger Ausdruck des Body-Felds zu finden.<br />
Abbildung 37: Message-Objekt nach der XML-Umwandlung<br />
In der nachfolgenden Abbildung wird der Inhalt des Body-Felds mit Hilfe des Javabasierten<br />
XML-Viewers von Microsoft [Microsoft 1998] dargestellt. Dies zeigt exempla-<br />
risch, daß das Message-Objekt außerhalb des WAGS-Systems verarbeitet werden kann.<br />
Der XML-Viewer nutzt zur Auswertung der XML-Struktur einen vollständig implemen-<br />
tierten XML-Parser, der ebenso mit Java programmiert wurde. Im ersten Teil der Abbildung<br />
sind die Workflow-Steuerungsinformationen zu sehen. Im zweiten Teil der Abbil-<br />
dung werden die Strukturen eines Content-Blocks mit den dazugehörigen Variablen dargestellt.<br />
Mit Hilfe eines solchen XML-Parsers könnten so die Daten auf anderen Plattformen extrahiert<br />
werden.
Konzeption und prototypische Implementierung Seite 100<br />
Abbildung 38: Darstellung eines XML-Message-Objekts
Konzeption und prototypische Implementierung Seite 101<br />
5.2.3 Annahme und Auswertung eines eingehenden Message-Objekts<br />
Hat die Reco GmbH ihrerseits nun den internen Prozeß abgearbeitet, so wird ein entsprechendes<br />
in MOTF-kodiertes Message-Objekt erstellt und mittels E-Mail in die Gateway-<br />
Datenbank der Stadt Emmerich übermittelt.<br />
Der Server-Agent (Incoming Mail) untersucht nun alle eingegangenen E-Mail-Objekte<br />
hinsichtlich ihrer Eigenschaften. Enthält das Objekt keine Notes-konformen Merkmale<br />
(z. B. „FORM“-Feld), so wird eine Formatumwandlung vorgenommen. Dazu wird das<br />
Objekt an den Konverter übergeben.<br />
In der nachfolgenden Abbildung zeigt das, für die Rückumwandlung relevante Feld Body,<br />
das Bestandteil der eingegangenen E-Mail ist.<br />
Abbildung 39: XML-Message-Objekt vor der Umwandlung<br />
Der Konverter extrahiert aus dem Objekt das Body-Feld in ein temporäres Text-Feld und<br />
untersucht es hinsichtlich formatspezifischer Kennzeichen (z. B. XML, MIME, SGML).<br />
Im vorliegenden Fall wird das Kennzeichen „XML“ gefunden und das temporäre Feld wird<br />
an das XML-Formatmodul übergeben.<br />
Aus diesem Feld erstellt der Parser eine eindimensionale Tabelle, die einerseits die Kennzeichen<br />
(engl. tags) enthält, andererseits aber auch die Daten (siehe Abbildung 40). Dazu<br />
wird eine zeichenweise Auswertung des Datenstroms vorgenommen und die Struktur hinsichtlich<br />
der Kombination von „“untersucht.
Konzeption und prototypische Implementierung Seite 102<br />
Abbildung 40: Tabelle der XML-Elemente<br />
Aus dieser Tabelle können dann die Feldinformationen gewonnen und das Message-Objekt<br />
aufgebaut werden.<br />
Die Tabelle wird dazu folgendermaßen ausgewertet:<br />
1. Analyse und Auswertung der XML-Anweisungen, z. B. ?XML Version „1.0“?<br />
2. Analyse und Umwandlung der Workflow-Steuerungsfelder (z. B. mocode). Diese Felder<br />
werden als Notes-Felder an die bestehende E-Mail angehängt.<br />
3. Durchsuchen der Tabelle auf Content-Block-Strukturen. Der Beginn eines Content-<br />
Blocks wird durch die Kennung „contentenblock name=“xxxxx“ gekennzeichnet. Aus<br />
diesem Eintrag wird die ID des Content-Blocks in das entsprechende Notes-Feld (Generic_Block_x)<br />
übertragen.<br />
4. Umwandlung der Variablen in Lotus Notes Felder und Übertragung der Dateninhalte,<br />
die zu einem Content-Block gehören.<br />
5. Die Schritte 3 und 4 werden so lange wiederholt, bis das Ende der Tabelle erreicht<br />
wurde.<br />
Nach erfolgreicher Umwandlung sind alle Informationen aus dem XML-Dokument extrahiert<br />
und als Notes-Felder an die E-Mail angehängt (siehe Abbildung 41). Damit das
Konzeption und prototypische Implementierung Seite 103<br />
E-Mail-Objekt weiterverarbeitet werden kann, wird abschließend das Form-Feld erzeugt<br />
und an das Objekt angehängt.<br />
Abbildung 41: E-Mail-Objekt nach der XML-Konvertierung<br />
Damit ist die Arbeit des XML-Formatmoduls abgeschlossen, und die Verarbeitung des<br />
Notes-konformen Message-Objekts wird fortgeführt.<br />
Das Message-Objekt wird dabei einer Sicherheitskontrolle und Vollständigkeitsüberprüfung<br />
unterzogen. Aus dem External Directory werden die Internal Routing Informationen<br />
(IRI) entnommen. Die Tracking Informationen werden verarbeitet. Im Fehlerfall wird eine<br />
entsprechende Behandlung des Objekts vorgenommen (z. B. Information der Verantwortlichen).<br />
Andernfalls wird das Message-Objekt an die Applikationsdatenbank weitergeleitet<br />
und mit dem nächsten unbearbeiteten Eintrag in der Bearbeitungstabelle fortgefahren. Ist<br />
kein weiterer Eintrag mehr in der Bearbeitungstabelle enthalten, wird der Server-Agent<br />
von Lotus Notes in den Wartezustand zurückversetzt.
Konzeption und prototypische Implementierung Seite 104<br />
In diesem Kapitel wurde die Konzeption des Austauschformates MOTF und seine prototypische<br />
Realisierung in der WAGS-Umgebung gezeigt. Dazu wurden entsprechende Konzeptionen<br />
hinsichtlich des Konverters und des XML-Formats getroffen und die Architektur<br />
des Konverters sowie die Struktur der XML Document Type Definition für das Austauschformat<br />
erläutert.<br />
Mit zwei Fallbeispielen wurde die Funktionsweise des MOTF-Formats anhand eines Prototyps<br />
demonstriert. Dazu wurde ein Lotus Notes-konformes WAGS-Message-Objekt, das<br />
an eine andere Organisation gesendet werden sollte, aufgrund der Informationen aus dem<br />
External Directory an das XML-Formatmodul weitergeleitet. Innerhalb des Formatmoduls<br />
wurde dann gezeigt, wie die Felder des Notes-konformen Message-Objekts ausgelesen und<br />
in ein MOTF-Dokument umgewandelt wurden. Gleichfalls wurde anhand eines eingegan-<br />
genen E-Mail-Objekts demonstriert, wie die Erkennung des Formats erfolgte und die Konvertierung<br />
des in MOTF-kodierten Message-Objekts in ein Lotus Notes-konformes<br />
WAGS-Message-Objekt funktionierte.<br />
Nachfolgend wird die Leistung des Austauschformates und seiner prototypischen Imple-<br />
mentierung einer kritischen Betrachtung unterzogen.<br />
5.3 Kritische Betrachtung des Prototyps<br />
Der Prototyp des Konverters wurde nur als „proof of principle“ für das XML Austauschformat<br />
MOTF implementiert. Die Ergebnisse der Untersuchung aus Kapitel 4 ergaben, daß<br />
SGML und MIME ebenfalls als Basis für Austauschformate geeignet sind. Deshalb wurden<br />
bei der Programmierung des Konverters die Erkennung anderer Formate und die Wei-<br />
terleitung der Format-Dokumente an die entsprechenden Format-Module berücksichtigt.<br />
Der Parser, der im XML-Formatmodul zum Einsatz kommt, ist nach der XML-<br />
Spezifikation nicht vollständig implementiert. So kann nicht überprüft werden, ob ein<br />
XML-Dokument korrekt aufgebaut ist (Wellformness). Ebenso kann zur Zeit nicht sichergestellt<br />
werden, daß ein XML-Dokument gemäß den Syntax-Regeln der Document Type<br />
Definition für XML-Dokumente erstellt wurde. Das Problem könnte durch die Verwendung<br />
von frei erhältlichen Java-Parsern (Microsoft, IBM etc.) gelöst werden. Die Einbindung<br />
solcher Programme innerhalb der Programmierumgebung von Lotus Notes ist grund-
Konzeption und prototypische Implementierung Seite 105<br />
sätzlich möglich, scheitert aber zur Zeit noch an der unzureichenden Unterstützung von<br />
Java durch Lotus Notes.<br />
Ein weiteres Defizit ist die Konvertierung der Rich-Text-Felder von Lotus Notes. Diese<br />
Felder zeichnen sich durch ihre hohe Leistungsfähigkeit hinsichtlich der Aufnahme von<br />
unstrukturierten Daten (formatierter Text, Bilder, Ton- und Videosequenzen, Hyperlinks<br />
etc.) aus. Die Felder besitzen deshalb einen sehr komplexen Aufbau. Die Lotus Script<br />
Sprache stellt aber nur eingeschränkt Funktionen zur Bearbeitung der Rich-Text-Felder zur<br />
Verfügung. So können bereits mit den vorhandenen Lotus Script-Befehlen unformatierter<br />
Text sowie Dateianhänge eines Rich-Text-Felds extrahiert werden. Das Analysieren und<br />
Verwalten der Zusatzinformationen über Aufbau und Anordnung der Rich-Text-Felder ist<br />
jedoch nicht möglich. Dadurch wird der Umfang der Konvertierung von Rich-Text-Feldern<br />
erheblich gemindert. Die Suche nach Programmbibliotheken mit entsprechender Funktionalität<br />
blieb erfolglos. Auf eine Eigenentwicklung wurde an dieser Stelle verzichtet. Sie<br />
hätte den Rahmen dieser Diplomarbeit mit ihrer prototypischen Implementierung gesprengt.<br />
Die Entwicklung der Document Type Definition (DTD) orientierte sich an der Definition<br />
des Message-Objekts von Dietmar Saliger [Saliger 1998, S. 106], dem Aufbau der<br />
Compound Document-Struktur und der Lotus Notes-Programmierumgebung. Das Ergebnis<br />
zeigt, daß die Struktur des Message-Objekts nahezu vollständig übernommen werden<br />
konnte. Im Austauschformat MOTF sind zur Zeit noch keine Strukturen enthalten, die zur<br />
Aufnahme der Daten aus Rich-Text-Feldern geeignet sind. Weiterhin können grundlegende<br />
Bestandteile der Lotus Notes Compound Document-Struktur, wie z. B. Formulare,<br />
Zugriffslisten, digitale Signaturen etc. noch nicht konvertiert werden. Durch die Flexibilität<br />
und Erweiterbarkeit der XML Document-Type-Definition ist es aber möglich, diese Funktionen<br />
durch zukünftige Entwicklungen zu implementieren.
Zusammenfassung und Ausblick Seite 106<br />
6 Zusammenfassung und Ausblick<br />
Im Rahmen dieser Arbeit wurde die Aufgabenstellung bearbeitet, standardisierte Austauschformate<br />
zu untersuchen und auszuwählen, die für den Datenaustausch, basierend auf<br />
Informationscontainern, zwischen heterogenen weitverteilten Workflow-Management-<br />
Systemen geeignet sind. Zusätzlich wurde eine prototypische Kommunikation auf der Basis<br />
des WAGS-Informationscontainers (Message-Objekte) mit Hilfe eines Austauschformats<br />
realisiert.<br />
Die Arbeit beginnt mit einer Einführung in das Themengebiet und einer Einordnung der<br />
Workflow-Management-Thematik in die CSCW-Forschung. Die notwendigen Begriffe für<br />
diese Arbeit sowie andere Ansätze zum weitverteilten Workflow-Management in heterogenen<br />
Umgebungen werden im Rahmen des Grundlagenkapitels 2 vorgestellt. Die Arbeitsumgebungen<br />
Lotus Notes und das Wide Area Groupflow System werden in dem darauffolgenden<br />
Kapitel 3 beschrieben und grundlegend eingeführt.<br />
Die Definition der Anforderungen zur Abbildung von WAGS-Message-Objekten, die Untersuchung<br />
und Auswahl von geeigneten Implementierungsformaten in Kapitel 4 sowie die<br />
prototypische Realisierung in Kapitel 5 bilden den Hauptteil dieser Arbeit.<br />
Ein Ergebnis der Untersuchung ist, daß keines der untersuchten Austauschformate für den<br />
Transport der Message-Objekte geeignet war. Die Gründe liegen einerseits im Design der<br />
Formate, die ursprünglich speziell für die jeweils zu transportierenden Objekte (z.B. Do-<br />
kumente, Daten, Nachrichten) konzipiert wurden. Sie sind deshalb nicht oder nur teilweise<br />
in der Lage die notwendigen Anforderungen für die Abbildung von Message-Objekten zu<br />
erfüllen. Andererseits ist die Idee, Workflow-Daten mit Hilfe von Message-Objekten zu<br />
transportieren noch sehr neu und revolutionär. Infolge dessen ist zur Zeit der Bedarf der<br />
Industrie noch nicht groß genug, ein standardisiertes Austauschformat zu entwickeln, das<br />
für den Transport solcher Informationscontainer geeignet ist.<br />
Dennoch konnte die Aufgabenstellung durch die Entwicklung eines eigenen Austauschformats<br />
MOTF (Message Objekt Transport Format) ansatzweise gelöst werden. MOTF<br />
wurde mit der Extensible Markup Language (XML) realisiert, die für die Definition von<br />
Austauschformaten vom World Wide Web Consortium entwickelt wurde.
Zusammenfassung und Ausblick Seite 107<br />
Die Wahl fiel deshalb auf die XML-Sprache, weil sie sowohl ein verabschiedeter Standard<br />
ist als auch Eigenschaften und Möglichkeiten besitzt, die es ermöglichen die definierten<br />
Anforderungen zur Abbildung der Message-Objekte zu erfüllen. Ein weiterer wichtiger<br />
Grund ist die stetig steigende Akzeptanz und große Unterstützung von XML durch führende<br />
Hersteller und Arbeitsgruppen.<br />
So wird XML bereits in den Produkten von SAP (SAP R/3), Oracle (Applicationserver),<br />
Microsoft (Internet Explorer, Internet Information Server) und Netscape (Navigator), um<br />
nur einige zu nennen, unterstützt, oder die Integration in die entsprechenden Produkte ist<br />
angekündigt. Überdies gibt es große Bestrebungen, mit der Sprache XML standardisierte<br />
Austauschformate für vielfältige Zwecke zu entwickeln. Die größten Hersteller von<br />
Workgroup-Computing-Produkten (Lotus, Netscape, Microsoft) haben bereits gemeinsam<br />
die Implementierung eines Formats zum Austausch von Kalenderinformationen (iCal) begonnen.<br />
EDI-Arbeitsgruppen haben Vorschläge veröffentlicht, wie zukünftig EDI-Formate<br />
mit XML transportiert werden könnten. Damit ist XML auf dem besten Wege, das bevorzugte<br />
Werkzeug zur Entwicklung und Realisierung von Datenaustauschformaten zu wer-<br />
den.<br />
Die Entwicklung des MOTF-Formats mit XML ist zwar vorerst proprietär, jedoch kann<br />
das Format aufgrund der Eigenschaften, Möglichkeiten und Flexibilität von XML jederzeit<br />
an neue Anforderungen angepaßt werden. Deshalb sollte an der Entwicklung von MOTF<br />
auch weiterhin gearbeitet werden, um die fehlenden Eigenschaften, z. B. die Unterstützung<br />
komplexer Informationsfelder, zu ergänzen. Besser wäre es sogar, die Idee eines XML-<br />
basierten Austauschformats in das Standardisierungsgremium der Workflow Management<br />
Coalition einzubringen.<br />
Um die Funktionalität des Austauschformats zu überprüfen und damit weitere Erfahrungen<br />
zu sammeln, wären Tests mit Systemen anderer Workflow-Hersteller und eine Praxiserprobung<br />
wünschenswert.
Literaturverzeichnis Seite 108<br />
7 Literaturverzeichnis<br />
[Adobe 1996]<br />
Adobe System Incorporated, Portable Document Format, Reference Manual, Version 1.2,<br />
1996<br />
[Appelt 1991]<br />
Appelt, Dr. rer. nat. Wolfgang: Document Architecture in Open Systems: The ODA Standard;<br />
Springer Verlag Berlin Heidelberg 1991<br />
[Aubrey 1996]<br />
David Aubrey: MIME your mail, MIME protocol takes your messaging into the future. In<br />
Computer Shopper, 1996.<br />
[Behme/Minert 1998]<br />
Behme, Henning; Minert Stefan; Professionelles Web-Publishing mit der Extensible Mar-<br />
kup Language, Addision-Wesley-Longman, Bonn 1998<br />
[Brorenstein/Freed 1993]<br />
Brorenstein/Freed: MIME (Multipurpose Internet Mail Extensions) ,<br />
Part One:Mechanisms for Specifying and Describing the Format of Internet Message Bo-<br />
dies, 1993.<br />
[Bryan 1988]<br />
Bryan, Martin: SGML an author’s guide to the standard generalized, markup language,<br />
Addison-Welsley Publishing Company, 1988<br />
[Bryan 1997]<br />
Bryan, Martin: An Introduction to the Extensible Markup Language (XML). Aus:<br />
http://www.personal.u-net.com/~sgml/xmlintro.htm am 05.01.1998<br />
[Coleman/Khanna 1996]<br />
Coleman, D.; Khana, R. (Hrsg.): Groupware, Technology and Applications, Prentice Hall,<br />
New York, 1996<br />
[De la Crux 1996]
Literaturverzeichnis Seite 109<br />
Del la Crux, Irvel, Les Thaler: Inside Mapi, Microsoft Press, 1996<br />
[Deiters, W.]<br />
Dr. Wolfgang Deiters, Groupware- versus Workflow Management Systeme, Teamorientiertes<br />
Arbeit im Netz; Client Server Computing Nr. 1/98<br />
[Dierker/Sander 1996]<br />
Dierker, Markus; Sander, Martin: Lotus Notes 4.x, Arbeiten im Team, Addison-Wesley, 1.<br />
Auflage, Bonn, 1996.<br />
[Deutsch 1994]<br />
Deutsch, Markus: Unternehmenserfolg durch EDI - Strategie und Realisierung des elektronischen<br />
Datenaustausches, Vieweg Verlag, Braunschweig, 1994.<br />
[Fischer 1992]<br />
Fischer, J.: EDI-gestützte unternehmensübergreifende Teamarbeit, in: Nastansky, Ludwig<br />
(Hrsg.): Betriebswirtschaft aktuell - Workgroup Computing, Steuer und Wirtschaftsverlag,<br />
Hamburg, 1992.<br />
[Fischer 1993]<br />
Fischer, J.: Unternehmensübergreifende Datenmodellierung - der nächste folgerichtige<br />
Schritt der zwischenbetrieblichen Datenverarbeitung!, Wirtschaftsinformatik, 35/3, 1993,<br />
pp. 241-254.<br />
[Fischer/Herold/Dangelmeier/Nastansky/Wolf 1995]<br />
Fischer/Herold/Dangelmeier/Nastansky/Wolf 1995: Bausteine der Wirschaftsinformatik –<br />
Kapitel 2 Büroinformationssystem, Teamorientiertes konzeptionelles Infrastrukturmanagement,<br />
1995, pp. 269 – 290]<br />
[Gifkins 1989]<br />
Gifkins, Mike: EDI Technology, Blenheim Online, London, 1989<br />
[Grand 1993]<br />
Grand, Mark: MIME Overview, Mark Grand,<br />
http://www.mindspring.com/~mgrand/mime.html, 1993.<br />
[Groiss/Eder 1996]
Literaturverzeichnis Seite 110<br />
Groiss, Herbert; Eder, Johann: Kooperation von Workflow-Systemen im World-Wide<br />
Web, in: Tagungsband der EMISA Jahrestagung, Aachen, 1996.<br />
[Georg/Gruber 1995]<br />
Georg, Thorsten; Gruber, Peter: Elektronischer Geschäftsverkehr - EDI in deutschen Unternehmen,<br />
Computerwoche Verlag, München, 1995.<br />
[Hansen 1992]<br />
Hansen, Hans R.: Wirtschaftsinformatik I - Einführung in die betriebliche Datenverarbeitung,<br />
Gustav Fischer Verlag, 6. Auflage, Stuttgart, 1992.<br />
[Hasenkamp/Syring 1994]<br />
Hasenkamp, U.;Syring, M.: CSCW in Organisationen – Grundlage und Probleme, in: Hasenkamp,<br />
U. et al (Hrsg): CSCW – Computer Supported Cooperative Work, Informations-<br />
system für dezentralisierte Unternehmensstrukturen, Addision-Wesley, Bonn, 1994, S. 15 -<br />
37<br />
[Hasenkamp et al. 1994]<br />
Hasenkamp, U.; Kirn, S; Syring, M. (Hrsg.): CSCW – Computer Supported Cooperative<br />
Work, Informationssysteme für dezentralisierte Unternehmensstrukturen, Addision-<br />
Wesley, Bonn, 1994<br />
[Hein 1997]<br />
Hein, O.: Grapfische Visualisierung und Analyse verteilten Workflow Managements, Kon-<br />
zeption und prototypische Implementierung des Wide Area GroupFlow Analyzers, Diplomarbeit,<br />
<strong>Paderborn</strong>, 1997<br />
[Hilpert 1994]<br />
Hilpert, Wolfgang: The GroupFlow System: Workflow Management in Distributed Organizations,<br />
White Paper, University of <strong>Paderborn</strong>, Business Computing, 1994.<br />
[Hilpert/Nastansky/Riempp 1995]<br />
Hilpert, Wolfgang; Nastansky, Ludwig; Riempp, Gerold: Die Produktivität Groupwarebasierter<br />
Anwendungen im Workflow Management, in: Krcmar, H. (Hrsg.): Tagungsband<br />
des 14. Baden-Württemberg-Kolloquiums "Computer Supported Cooperative Work und
Literaturverzeichnis Seite 111<br />
Computer Aided Team - Verbesserung der Gruppenarbeit durch Computer", <strong>Universität</strong><br />
Hohenheim, Hohenheim, 1995, pp. 271-290.<br />
[Hofland/Utsler 1997]<br />
Hofland Peter;Utsler, Jim:Web-smart, business-process-aware applications are jum-starting<br />
a new era of work-flow proficiency. In Byte Magazin Vol 5. (1997)<br />
[Koch/Zielke 1996]<br />
Koch, G. O. ; Zielke F.: Workflow Management, Prozeßorientierten Arbeiten mit der Unternehmens-DV,<br />
Markt & Technik, Haar bei München, 1996]<br />
[Light 1997]<br />
Light, Richard: presenting XML, sams.net, Indianapolis, 1997<br />
[Mace/Flohr/Dobson/Graham]<br />
Mace, Scott; Flohr, Udo; Dobson, Rick; Graham, Toni: Die (R)evolution im World Wide<br />
Web, Deutschland Byte, April 1998, pp. 42-51<br />
[Mertens 1966]<br />
Mertens, Peter: Die zwischenbetriebliche Kooperation und Integration bei der automati-<br />
sierten Datenverarbeitung, Verlag Anton Hain, Meisenheim am Glan, 1966.<br />
[Mertens 1985]<br />
Mertens, Peter: Zwischenbetriebliche Integration der EDV, in: Informatik-Spektrum, Nr. 8,<br />
2, 1985, pp. 81-90.<br />
[Mertens 1993]<br />
Mertens, Peter: Integrierte Informationsverarbeitung 1, Gabler Verlag, 9. Auflage, Wiesbaden,<br />
1993.<br />
[Mertens/Bodendorf/König/Picot/Schumann 1996]<br />
Mertens, Peter; Bodendorf, F.; König, W.; Picot, Arnold; Schumann, M.: Grundzüge der<br />
Wirtschaftsinformatik, Springer Verlag, 4. Auflage, Berlin, Heidelberg, 1996.<br />
[Microsoft 1998]<br />
XML Viewer aus http://www.microsoft.com/XML
Literaturverzeichnis Seite 112<br />
[Nastansky et al. 1995]<br />
Nastansky, L.; Schicker, T.; Behrens, O. M.; Ehlers, P.: Büroinformationssysteme, in:<br />
Fischer, J.; Herold W.; Dangelmaier, W.; Nastansky. L.; Wolff, R. (Hrsg.): Bausteine der<br />
Wirtschaftsinformatik, S + W Steuer- und Wirtschaftsverlag, Hamburg, 1995,<br />
S. 269-369<br />
[Nastansky/Hilpert 1994]<br />
Nastansky, Ludwig; Hilpert, Wolfgang: The GroupFlow System: A Scalable Approach to<br />
Workflow Management between Cooperation and Automation, in: Wolfinger, Bernd (Ed.):<br />
Innovationen bei Rechen- und Kommunikationssystemen - Eine Herausforderung an die<br />
Informatik, Proceedings of 24th Anual Conference of the German Computer Society during<br />
13th World Computer Congress, IFIP '94, Springer Verlag, Berlin, Heidelberg etc.,<br />
1994, pp. 473 - 479.<br />
[Nastansky/Hilpert 1995]<br />
Nastansky, Ludwig; Hilpert, Wolfgang: Das GroupFlow System für Workflow-<br />
Management, Balance zwischen Struktur und Flexibilität, in: Business Computing, Vogel-<br />
Verlag , Würzburg, Nr. 7, Juli, 1995, pp. 30 - 31.<br />
[Nolan 1998]<br />
Nolan, Suzanne D.: Interoperability and Standards. Aus<br />
http://www.libraries.wayne.edu/~jlitman/nolan.html , 1998.<br />
[Rechenberg/Pomberger 1997]<br />
Rechenberg, Pomberger: Informatik Handbuch, Carl Hanser Verlag; München Wien; 1997<br />
[Riempp 1997a]<br />
Riempp, Gerold: Lotus Notes Anwendungen im World Wide Web, in: Hasenkamp, U.;<br />
Reiss, O. (Hrsg.): Tagungsband des Workshops "Lotus Notes im Internet: Technologien<br />
und Konzepte", Marburg, April, 1997, pp. 33-56.<br />
[Riempp 1997b]<br />
Riempp, Gerold: Workflow Management between distributed organizations - Wide Area<br />
GroupFlow System, Poster on the International Conference Wirtschaftsinformatik '97<br />
(WI'97), Berlin, February, 1997.
Literaturverzeichnis Seite 113<br />
[Riempp 1998]<br />
Riempp, Gerold: Wide Area Workflow Management - Conceptions and Solutions for Intraand<br />
Interorganizational Coordination and Interaction among Distributed Workflow Management<br />
Systems, Springer Verlag, London etc., 1998 (in publication).<br />
[Riempp/Nastansky 1996a]<br />
Riempp, Gerold; Nastansky, Ludwig: Von lokalem zu verteiltem Workflow Management -<br />
das Wide Area GroupFlow Phasenmodell zur Einführung und Optimierung verteilter Vorgangsbearbeitungssysteme,<br />
Arbeitspapier, <strong>Universität</strong> <strong>Paderborn</strong>, Lehr- und Forschungseinheit<br />
Wirtschaftsinformatik 2, <strong>Paderborn</strong>, 1996.<br />
[Riempp/Nastansky 1996b]<br />
Riempp, Gerold; Nastansky, Ludwig: Workflow Management zwischen verteilten Group-<br />
ware-basierten Büros (Wide Area OfficeFlow), Die WideOffice-Infrastruktur zur Interaktion<br />
vernetzter Teams, in: Uellner, St. (Hrsg.): Tagungsband des GI-Workshops "CSCW in<br />
großen Unternehmungen", Telekom AG, Darmstadt, 1996, pp. 193-207.<br />
[Riempp/Nastansky 1997]<br />
Riempp, Gerold; Nastansky, Ludwig: Workflow Management between distributed organizations<br />
- the Wide Area GroupFlow Approach, in: Lehner, F.; Dustar, S. (Hrsg.): Teleko-<br />
operation in Unternehmen, Deutscher <strong>Universität</strong>s Verlag, Gabler Edition Wissenschaft,<br />
Wiesbaden, 1997, pp. 265-282.<br />
[Robinson 1990]<br />
Robinson, Peter J. : Office Document Architecture, ELEDIS Journal No. 5, November –<br />
December 1990, Belgium. Aus: http://www.home.fh-<br />
karlsruhe.de/~bath0011/nwapps/oda.html<br />
[Saliger 1998]<br />
Saliger, Dietmar: Laufzeitumgebung für Groupware-basiertes verteiltes Workflow Management,<br />
Diplomarbeit, <strong>Universität</strong> GH <strong>Paderborn</strong>, 1998<br />
[Simon 1998]
Literaturverzeichnis Seite 114<br />
Simon, Stefan: Zwischenbetriebliche Integration - Stand der Forschung und Praxis bei der<br />
Verbindung operativer Informationssysteme über Organisationsgrenzen hinweg, Diplomarbeit,<br />
<strong>Universität</strong> GH <strong>Paderborn</strong>, 1998<br />
[Sievert 1996]<br />
Sievert, Jörg:Kooperation durch Dokumente. Aus: http://www.telematik.informatik.uni-<br />
karlsruhe.de/forschung/klung96/node19.html am 16.02.1998<br />
[Stein 1996]<br />
Stein, Dominik: Definition und Klassifikation der Begriffswelt um CSCW, Workgroup<br />
Computing, Groupware, Workflow Management, Seminararbeit, <strong>Universität</strong> Gesamthochschule<br />
Essen, 1996<br />
[Teufel 1996]<br />
Teufel, Stefanie: Computerunterstützte Gruppenarbeit - eine Einführung, in: Österle, H.;<br />
Vogler, P. (Hrsg.): Praxis des Workflow Managements, Vieweg, Braunschweig, Wiesba-<br />
den, 1996, pp. 35-63.<br />
[Touchard 1997]<br />
Touchard, J.: Modellierung verteilter vorgangsbearbeitung, Konzeption und prototypische<br />
Implementierung eines graphischen Vorgangseditors für verteiltes, Groupware-basiertes<br />
Workflow Management, Diplomarbeit, <strong>Universität</strong> GH <strong>Paderborn</strong>, 1997<br />
[Weid 1994]<br />
Weid, Hubert: Wettbewerbsvorteile durch Electronic Data Interchange, Hussverlag, München,<br />
1994<br />
[Wewers 1996]<br />
Wewers, Thorsten: Zwischenbetrieblich integrierte Informationsverarbeitung für die Abfallwirtschaft<br />
- dargestellt am Beispiel eines Workflow-Management-Systems für die Entworgung<br />
von Sonderabfällen, Arbeitspapier Nr. 4/96 des Bereichs Wirtschaftsinformatik 1,<br />
<strong>Universität</strong> Nürnberg-Erlangen, 1996.<br />
[Wewers/Faisst 1996]
Literaturverzeichnis Seite 115<br />
Wewers, Thorsten; Faisst, Wolfgang: Kooperierende Workflow-Management-Systeme für<br />
Virtuelle Unternehmen, in: Uellner, St. (Hrsg.), Tagungsband des GI-Workshops "CSCW<br />
in großen Unternehmen", Telekom AG, Darmstadt, 1996, pp. 167-175.<br />
[Wewers/Wargitsch 1997]<br />
Wewers, Thorsten; Wargitsch, Christoph: Zwischenbetrieblich integriertes Workflow-<br />
Management - dargestellt am Beispiel der Sonderabfallentsorgung, in: Mambrey, P.;<br />
Streitz, N.; Sucrow, B.; Unland, R. (Hrsg.): Rechnergestützte Kooperation in Verwaltungen<br />
und großen Unternehmen, Tagungsband zum Workshop während der Informatik '97,<br />
Aachen, 1997, pp. 64-85.<br />
[Wewers/Wargitsch 1998]<br />
Wewers, Thorsten; Wargitsch, Christoph: Four Dimensions of Interorganizational, Document-Oriented<br />
Workflow: A Case Study of the Approval of Hazardous-Waste Disposal, in:<br />
Proceedings of the 31st Hawaii International Conference on System Sciences, Hawaii,<br />
1998.<br />
[WFMC 1994]<br />
Workflow Management Coalition (Hrsg.): The Workflow Reference Model, Brussels, November,<br />
1994<br />
[WfMC 1996]<br />
WfMC, Workflow Management Coalition: Workflow Standard - Interoperability Abstract<br />
Specification, Document Number WFMC-TC-1012, Version 1.0, 20-Oct, 1996.<br />
[Whipple 1997]<br />
Whipple, Larry C.: Electronic data interchange, making it happen, 1997 Advisor Publications<br />
Inc. , Databased Web Advisor, 1.06.97, 1997.
Anhang Seite 116<br />
8 Anhang<br />
8.1 Relevante Internet-Ressourcen<br />
Die in der Tabelle aufgeführten Einträge, enthalten in vielen Fällen weitergehende Verweise.<br />
Nr Kurzbeschreibung URL<br />
1. XML Http://www.xml.com<br />
http://www.w3.org<br />
http://www.csclub.uwaterloo.ca/u/relander/XML/htt<br />
p://www.xmlinfo.com/<br />
http://www.xmlsoftware.com/<br />
http://www.sil.org/sgml/xml.html<br />
2. HTML Http://www.w3.org<br />
3. SGML Http://www.sgmlopen.org<br />
http://www.sil.org/sgml/sgml.html<br />
4. EDI/EDIFact Http://www.unicc.org/unece/trade/untdid/Welcome.<br />
5. Information on the European<br />
Commission's Open Information<br />
Interchange service<br />
6. XML for Electronic Data<br />
Interchange<br />
html<br />
Http://www2.echo.lu/oii/en/oii-home.html<br />
Http://www.geocities.com/WallStreet/Floor/5815/gu<br />
ide.htm<br />
7. Internet Mail Consortium Http://www.imc.org<br />
8. World Wide Web Journal Http://www.w3j.com
Anhang Seite 117<br />
8.2 Message-Objekt-Definition<br />
Ein Message Objekt setzt sich aus den drei unterschiedlichen Typen von Felder zusammen:<br />
Mail-Felder, Workflow-Felder und Nutz-Felder<br />
Mail-Felder<br />
Feldname Beschreibung<br />
SendTo<br />
(Text)<br />
Subject<br />
(Text)<br />
Workflow-Felder<br />
Ziel-Adresse für die E-Mail, i.d.R. die Gateway-DB oder<br />
die Applicationen-DB<br />
z.B. WAGS Application @ Janus<br />
Titel und Beschreibung des Message Objekts<br />
z.B. Angebotsanfrage<br />
Feldname Beschreibung<br />
MoAddressName<br />
Name des GRI-Elements bzw. EMail-Adresse (je nach<br />
(Text)<br />
Richtung)<br />
z.B. Hardware Profis GmbH/Angebot erstellen/Hardware<br />
MoCode<br />
(Text)<br />
MoMessageObjectID<br />
(Text)<br />
MoMessageReferenceID<br />
(Text)<br />
moMessageReplyTo<br />
(Text)<br />
Knoten-ID des sendenden Knotens<br />
z.B. 2-190DEAD4D933899DC125651E004E1132<br />
ID des aktuellen Message Objekts, das dieses eindeutig<br />
kennzeichnet (i.d.R. DocumentUniqueID),<br />
z.B. 6A4000F8BDF00112C125654E0037E55C<br />
ID des Message Objekts, auf das sich das aktuelle Message<br />
Objekt bezieht (vergleichbar mit der Angebotsnummer,<br />
die man bei einer Bestellung angibt)<br />
Standard ist ""<br />
ID des Message Objekts, auf das das aktuelle Message<br />
Objekt antwortet.<br />
Standard ist ""
Anhang Seite 118<br />
moProcessID<br />
(Text)<br />
Workflow-ID des aktuellen Vorgang, aus dem das Message<br />
Objekt gesendet wurde. Dieses wird in der sendenden<br />
Gateway-Datenbank für die interne Verwaltung der<br />
Message Objekt benutzt, aber extern nicht weitergegeben.<br />
Bei eingehenenden MOs ist dieses Feld nicht vorhanden<br />
oder "".<br />
moWorkflowID<br />
ID des Workflow-Typs<br />
(Text)<br />
Standard ist ""<br />
????? einige Felder für das Tracking, die noch nicht näher spezifiziert<br />
sind<br />
moMessageType (Text) Werte: Oneway, Request, Answer, Sync<br />
moMessageSource (Text) Werte: internal, external (Verbleibt in der sendenden<br />
Gateway-DB)<br />
Nutz-Felder<br />
Feldname Beschreibung<br />
Generic_Block_X mit X > 0<br />
(Text)<br />
Generic_Name_X mit X > 0<br />
(Text)<br />
Generic_Type_X mit X > 0<br />
(Text)<br />
Generic_Help_X mit X > 0<br />
(Text)<br />
Generic_Body_X mit X > 0<br />
(Rich-Text)<br />
ContentBlock_ContentField<br />
(je nach Typ)<br />
Enthält den Namen des aktuellen Content-Blocks<br />
z.B. Adresse<br />
Enthäl den Namen des aktuellen Content-Fields. Der<br />
Feldname setzt sich somit aus dem zuletzt benutzten<br />
Content-Block-Namens und dem Content-Field-Namen<br />
zusammen<br />
z.B. Kunde => Adresse_Kunde<br />
Bestimmt den Typ des Content-Fields.<br />
Mögliche Werte: "[txt]" = Text, "[rtx]" = Rich-Text,<br />
"[num]" = Number, "[tim]" = Date/Time oder "[???]" =<br />
unbekannt<br />
Enthält den Hilfetext zu dem aktuellen Content-Field.<br />
Enthält den Inhalt des Content-Blocks<br />
Falls die Felder nicht über die generischen Subform dargestellt<br />
und übermittelt werden. Der Content-Block-<br />
Name entspricht dem in dem Feld moContentBlocks<br />
z.B. Adresse_Kunde
Anhang Seite 119<br />
8.3 Ausgehendes XML-Messageobjekt<br />
<br />
<br />
<br />
Reco GmbH/Angebotsanfrage<br />
2-39B528C02033AB3EC125655E00611AA0<br />
<br />
Generic<br />
C1256487:002CE875<br />
WAGS1_Application @ WAW<br />
WAGS1_Gateway @ WAW<br />
FF0012BE1C14DC65C1256559003B8660<br />
MessageObject<br />
B0F0363B422E92C8C12565BB0049FD07<br />
<br />
<br />
<br />
Request<br />
WAGS1_Tracking @ WAW<br />
*!*wfCode||2-<br />
39B528C02033AB3EC125655E00611AA0:1*!*wfTask||Sending<br />
Message*!*<br />
*!*wfProcessID||2296232376A8B008C12565BB0049C415*!*wfType||Planung<br />
Containeranlage*!*wfJob||Projekt Tackenweide*!*wfStartDate||02.03.98<br />
14:25:43*!*wfFinishDate||*!*<br />
*!*wfTrackPrevCode||1-<br />
39B528C02033AB3EC125655E00611AA0:0*!*wfTrackPrevTask||Projekt<br />
spezifizieren*!*<br />
<br />
<br />
[txt]<br />
Name der Kundenadresse<br />
Stadt Emmerich<br />
<br />
<br />
[txt]<br />
Straße oder Postfach der Kundenadresse<br />
Postfach 5 10 43<br />
<br />
<br />
[num]<br />
Postleitzahl des Kundenadresse<br />
46446<br />
<br />
<br />
[txt]
Anhang Seite 120<br />
Ort der Kundenadresse<br />
Emmerich<br />
<br />
<br />
[txt]<br />
Kundennummer falls bekannt<br />
SE 42 65 43<br />
<br />
<br />
[txt]<br />
Name des Ansprechpartners<br />
Dietmar Saliger<br />
<br />
<br />
[txt]<br />
Telefonnummer des Anprechpartners oder anderen<br />
Verantwortlichen<br />
(02822) 5371-0<br />
<br />
<br />
[txt]<br />
Faxnummer des Ansprechpartners oder anderen Verantwortlichen<br />
(02822) 5371-10<br />
<br />
<br />
[txt]<br />
E-Mail Adresse<br />
dsaliger @notes.uni-paderborn.de<br />
<br />
<br />
<br />
<br />
[txt]<br />
möglichst genaue Beschreibung des Standort sowie evtl. Ansprechpartner<br />
vor Ort<br />
Tackenweide 4<br />
4664 Emmerich<br />
<br />
<br />
[tim]<br />
Gewünschter Zeitpunkt der Lieferung<br />
01.04.98<br />
<br />
<br />
[num]<br />
Angabe der Mietdauer in Wochen<br />
10<br />
Anhang Seite 121<br />
<br />
[rtx]<br />
möglichst genaue Beschreibung des Projekte (z.B. mit<br />
Planskizze)<br />
Beschreibung wie folgt: ...<br />
<br />
<br />
Danksagung<br />
Mein Dank gilt allen, die zum Gelingen dieser Diplomarbeit beigetragen haben. Besonders<br />
bedanken möchte ich mich bei Prof. Dr. Ludwig Nastansky, Diplom Wirtsch. Ing. Gerold<br />
Riempp und Dr. Dirk Hoppen für die Betreuung und die Anregungen im Rahmen vieler<br />
Gespräche.<br />
Eidesstattliche Erklärung<br />
Ich erkläre hiermit an Eides Statt, daß ich die vorliegende Arbeit selbständig und nur unter<br />
Verwendung der angegebenen Hilfsmittel angefertigt habe; die aus fremden Quellen direkt<br />
oder indirekt übernommenen Gedanken sind als solche kenntlich gemacht.<br />
Die Arbeit wurde bisher keiner anderen Prüfungsbehörde vorgelegt und auch noch nicht<br />
veröffentlicht.<br />
Rietberg, den 15.09.1998<br />
(Michael Groß)