Michael Klein Automatisierung dienstorientierten Rechnens durch semantische Dienstbeschreibungen Automatisierung dienstorientierten Rechnens durch semantische Dienstbeschreibungen von Michael Klein Universitätsverlag Karlsruhe 2006 Print on Demand ISBN 3-86644-013-8 Impressum Universitätsverlag Karlsruhe c/o Universitätsbibliothek Straße am Forum 2 D-76131 Karlsruhe www.uvka.de Dieses Werk ist unter folgender Creative Commons-Lizenz lizenziert: http://creativecommons.org/licenses/by-nc-nd/2.0/de/ Dissertation, Friedrich-Schiller-Universität Jena Fakultät für Mathematik und Informatik, 2006 Automatisierung dienstorientierten Rechnens durch semantische Dienstbeschreibungen Dissertation zur Erlangung des akademischen Grades Doktor-Ingenieur (Dr.-Ing.) vorgelegt dem Rat der Fakult ̈ at f ̈ ur Mathematik und Informatik der Friedrich-Schiller-Universit ̈ at Jena von Dipl.-Inform. Michael Klein geboren am 12.03.1976 in Traben-Trarbach Erstgutachterin: Prof. Dr. Birgitta K ̈ onig-Ries Zweitgutachter: Prof. Dr. Rudi Studer Tag der letzten Pr ̈ ufung des Rigorosums: 9. Februar 2006 Tag der ̈ offentlichen Verteidigung: 13. Februar 2006 Geleitwort Betrachtet man das heutige World Wide Web, so sind Weiterentwicklungen entlang von zwei Dimensionen nahe liegend: Zum einen ist es w ̈ unschenswert, ̈ uber diese Infrastruktur nicht nur Informationen verf ̈ ugbar zu machen, sondern nahtlos auch den Zugriff auf Funktionalit ̈ at, die von anderen Rechnern bereit gestellt wird, zu erm ̈ oglichen. Web Services erm ̈ oglichen die Erf ̈ ullung dieses Wunsches. Ein Webservice ist ein St ̈ uck Software, das ̈ uber das Inter- net zugreifbar ist, das seine Funktionalit ̈ at und seine Schnittstellen in Beschreibungen ver ̈ offentlicht und dessen Funktionalit ̈ at mittels XML-basierter Nachrichten, die ̈ uber Internet-Prtokolle ausgetauscht werden, aufrufbar macht. Zum anderen ist es w ̈ unschenswert, Information in einer nicht nur f ̈ ur Menschen, son- dern auch f ̈ ur Maschinen verst ̈ andlichen Form verf ̈ ugbar zu machen. Entwicklungen im Bereich des Semantic Web versuchen dieses Ziel zu erreichen. Grundidee hier ist es, Informationen mittels Ontologien semantisch zu annotieren. Kombiniert man beide Dimensionen, so erh ̈ alt man als Ziel ein System, in dem Funk- tionalit ̈ at in Form von Semantic Web Services f ̈ ur Maschinen automatisch, ohne menschliches Eingreifen nutzbar wird. Hier handelt es sich um ein Thema, das in den letzten Jahren zunehmend an Bedeutung gewonnen hat. Das vorliegende Werk greift einen – wenn nicht den – zentralen Aspekt aus den zahl- reichen Problemen, die im Zusammenhang mit Semantic Web Services zu l ̈ osen sind, heraus: die Bereitstellung einer geeigneten Sprache zur Dienstbeschreibung. Eine sol- che Sprache muss eine Reihe von Anforderungen erf ̈ ullen – und diese Anforderungen sind, wie es unangenehmerweise h ̈ aufig bei Anforderungen der Fall ist, teils wider- spr ̈ uchlich: Auf der einen Seite wird eine Sprache ben ̈ otigt, die ausdrucksstark genug ist, um beliebige Dienstangebote und -anfragen pr ̈ azise beschreiben zu k ̈ onnen. Auf der anderen Seite muss es m ̈ oglich sein, diese Beschreibungen effizient zu verarbeiten, insbesondere muss der automatische, semantisch korrekte Abgleich von Dienstange- boten und -anfragen m ̈ oglich sein. Zu guter Letzt muss die Sprache auch noch prak- tisch einsetzbar sein, was insbesondere erfordert, dass der Aufwand, den ein Nutzer betreiben muss, um die Sprache verwenden zu k ̈ onnen, sich in Grenzen h ̈ alt. Existierende Ans ̈ atze m ̈ ussen hier oft unbefriedigende Kompromisse eingehen: Was n ̈ utzt beispielsweise eine Sprache, mit der Dienste detailliert beschrieben werden VII k ̈ onnen, die jedoch unentscheidbar ist und es somit unm ̈ oglich macht, alle Information, die in die Dienstbeschreibung geflossen ist, auch auszuwerten, um zu einem Angebot m ̈ oglichst gut passende Dienste zu finden? Michael Klein gelingt es in seiner Arbeit, eine Balance zwischen diesen drei Anfor- derungen zu finden. Er schl ̈ agt eine Sprache vor, die gerade m ̈ achtig genug ist, um relevante Aspekte von Diensten zu beschreiben, die einfach genug ist, so dass alle in Beschreibungen enthalten Informationen auch tats ̈ achlich f ̈ ur den Abgleich zwischen Angeboten und Anfragen genutzt werden k ̈ onnen und die einen gangbaren Kompro- miss zwischen vorab zu Leistendem und Verarbeitbarkeit eingeht. Mit dieser Sprache ist es nun m ̈ oglich – zumindest f ̈ ur relativ einfach aufgebaute Dienste – Anfragen und Angebote pr ̈ azise zu beschreiben und automatisch gegenein- ander abzugleichen. Somit wird eine vollautomatische Dienstnutzung Realit ̈ at. Die Sprache ist so gestaltet, dass eine geradlinige Erweiterung f ̈ ur komplexere F ̈ alle problemlos m ̈ oglich, ja zum jetzigen Zeitpunkt sogar schon in Arbeit ist. Sie liefert so- mit eine wertvolle Grundlage f ̈ ur hoffentlich viele weiterf ̈ uhrende Arbeiten im Umfeld der automatischen Dienstnutzung. Es bleibt mir, der Arbeit einen breiten Leserkreis und einen nachhaltigen Einfluss auf die weitere Forschung im Bereich der Semantic Web Services zu w ̈ unschen. Jena, im Februar 2006 Birgitta K ̈ onig-Ries VIII Vorwort und Danksagung Das vorliegende Buch stellt meine Dissertation dar, die w ̈ ahrend meiner Arbeit am Institut f ̈ ur Programmstrukturen und Datenorganisation der Universit ̈ at Karlsruhe, Lehrstuhl Prof. Lockemann bzw. Prof. B ̈ ohm im Rahmen des Projekts DIANE (Diens- te in Ad-hoc-Netzen), einem Teilprojekt des DFG-Schwerpunktprogramms SPP1140 ”Basissoftware f ̈ ur Selbstorganisierende Infrastrukturen f ̈ ur Vernetzte Mobile Syste- me“ entstanden ist. Zum Gelingen der Arbeit haben eine Vielzahl von Personen bei- getragen, bei denen ich mich an dieser Stelle bedanken m ̈ ochte. Zun ̈ achst m ̈ ochte ich meiner Erstgutachterin Prof. Dr. Birgitta K ̈ onig-Ries danken. Als ihr erstes ”Doktorkind“ genoss ich eine besonders intensive Betreuung. Stets stand sie f ̈ ur Diskussionen zu Fragestellungen der Arbeit zur Verf ̈ ugung. Auch ihr st ̈ andiges Daraufpochen, die Ideen der Dissertation in Form von Papieren zu ver ̈ offentlichen, war zwar anf ̈ anglich stressig, stellte sich r ̈ uckblickend jedoch als enorm vorteilhaft f ̈ ur das Vorankommen und die Qualit ̈ at der Arbeit heraus. Ihren oft benutzten Satz ”Wenn man eine Idee hinschreiben muss, wird man gezwungen, sie sich klar zu ma- chen“, w ̈ urde ich heute sofort unterschreiben. Und die mit den Ver ̈ offentlichungen verbundenen Konferenzbesuche in aller Welt waren ein angenehmer Nebeneffekt. Bir- gitta K ̈ onig-Ries betreute jedoch nicht nur meine Dissertation. Bei allen Arbeiten am Institut – war es die Durchf ̈ uhrung von Praktika und Seminaren, die Betreuung von Studien- und Diplomarbeiten, das Schreiben von Antr ̈ agen oder die Organisation von Workshops – stand sie mir tatkr ̈ aftig zur Seite. Daneben will ich meinem B ̈ uro- und Projektkollegen Philipp Obreiter danken, mit dem ich die H ̈ ohen und insbesondere auch die Tiefen des nicht immer ganz einfachen Mitarbeiteralltags durchgemacht habe. Neben zahlreichen Ratschl ̈ agen, Warnungen, Tipps, Hinweisen und Vorschl ̈ agen f ̈ ur meine Forschungen, habe ich von ihm vor allem auch viel Nicht-Fachliches f ̈ ur das Leben außerhalb der Universit ̈ at gelernt: im Bereich des Teekochens, im Bereich neuer Musik, Kriegsf ̈ uhrung, chinesischer Schriftzeichen, oder Spieltheorie. Seine Mottos vom ”Explizitmachen“ und ”Trade-offs-Erkennen“ habe ich nach anf ̈ anglicher Skepsis ̈ ubernommen. Zu bedanken habe ich mich ebenfalls bei vier Professoren: Zun ̈ achst Prof. Dr. Studer , der freundlicherweise das Korreferat der Dissertation ̈ ubernommen und viel Interesse an der Arbeit gezeigt hat. Dann bei Prof. Dr. Dr. h.c. Lockemann , der die Betreu- ung meiner Arbeit vor der Berufung von Prof. K ̈ onig-Ries ̈ ubernommen hatte, bei IX Prof. Dr. Alt , der den Vorsitz meiner Pr ̈ ufungskommission in Jena ̈ ubernommen hat, sowie bei Prof. Dr. B ̈ ohm , dem Nachfolger von Prof. Lockemann, an dessen Institut ich ab 2005 arbeiten durfte. Dank gilt aber nat ̈ urlich auch all meinen Studierenden, deren Ergebnisse aus Studien- und Diplomarbeiten in meine Dissertation eingeflossen sind. Ganz besonders m ̈ ochte ich folgende Personen erw ̈ ahnen: Erstens Michael M ̈ ussig , der in seiner Diplomarbeit wichtige Teile des Vergleichers konzipiert und implementiert hat und die sogar in- nerhalb eines gemeinsamen Zeitschriftenartikels ver ̈ offentlicht wurde. Zweitens Mirco Stern , der in seiner Studienarbeit einen Generator f ̈ ur Dienstbeschreibungen entwi- ckelte, mit dessen Hilfe die Korrektheit der implementierten Komponenten ̈ uberpr ̈ uft werden konnte, und in seiner Diplomarbeit bereits weiterf ̈ uhrende Arbeiten auf dem Gebiet der Dienstkomposition basierend auf dem entwickelten Ansatz betrachtete. Drittens Thomas Fischer , der in seiner Studienarbeit die Komponente zur Ausf ̈ uhrung von Diensten erstellte und sich in seiner Diplomarbeit mit der Durchf ̈ uhrung von Ex- perimenten um wichtige Teile der Evaluation k ̈ ummerte. Weiterhin danke ich Holger Schmitt , der in seiner Diplomarbeit erste Ideen zur Ontologieverwaltung untersuchte, Daniel Matheis , in dessen Studienarbeit der entstandene Ansatz zur Implementie- rung einer mobilen Anwendung zur Gruppenkooperation eingesetzt wurde, Thomas Herzog , der in seiner Studienarbeit ein Werkzeug erstellte, das es einem Benutzer erlaubt, Beschreibungen der entwickelten Sprache auf graphischem Wege einzugeben, sowie Frank Schell , Christoph Schaa und Thorsten H ̈ ollrigl , die in ihrer gemeinsamen Studienarbeit erste Vorschl ̈ age f ̈ ur die formale Notation der Beschreibungssprache machten. Auch meine Arbeitskollegen haben Dank verdient. Zuerst genannt sei hier Jutta M ̈ ulle , die ”Managerin des Instituts“, die ich stets zu allen organisatorischen und fachlichen Dingen rund um das IPD fragen konnte und die auch immer eine hilfreiche Antwort parat hatte. Wichtig f ̈ ur eine erfolgreiche Dissertation ist auch ein angenehmes Ar- beitsumfeld. Hierf ̈ ur will ich allen meinen Kollegen danken, vor allem Philipp Bender , Heiko Schepperle , Jens Nimis , Daniel Pfeifer , Antje Dietrich , Khaldoun Ateyeh und Bj ̈ orn-Oliver Hartmann , mit denen ich mich insbesondere beim allt ̈ aglichen Kaffee in der Mensa austauschen konnte. Und Dank gilt nat ̈ urlich auch den Sekret ̈ arinnen Frau G ̈ otz , Frau Horcic , Frau Wegl und Frau Weisenburger , die mir immer freundlich bei allen organisatorischen Dingen am Institut halfen. Nicht zuletzt haben aber auch Personen außerhalb des universit ̈ aren Umfelds dazu beigetragen, dass ich diese Arbeit verwirklichen konnte. Da sind zun ̈ achst meine El- tern Margit und Berthold , meine Großeltern sowie Matthias und Linda , die immer an die Realisierung meiner Pl ̈ ane geglaubt und mich entsprechend unterst ̈ utzt haben. Dank gilt aber auch allen meinen Freunden in Karlsruhe und im Hunsr ̈ uck, die mich immer wieder von meiner Arbeit abgelenkt und so f ̈ ur den n ̈ otigen Ausgleich gesorgt haben. Karlsruhe, im M ̈ arz 2006 Michael Klein X Inhaltsverzeichnis I. Ausgangspunkt 1 1. Einleitung 3 1.1. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Szenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2.1. Szenario 1: Internetbasierte Gesch ̈ aftsprozesse . . . . . . . . . 5 1.2.2. Szenario 2: Mobile Anwendungen . . . . . . . . . . . . . . . . 8 1.3. Ziel der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4. Herausforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.5. Abgrenzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.6. Eigener Ansatz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.7. Gliederung der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2. Grundlagen 17 2.1. Webdienste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1.1. Web Service Description Language (WSDL) . . . . . . . . . . 18 2.1.2. Simple Object Access Protocol (SOAP) . . . . . . . . . . . . . 20 2.1.3. Universal Description, Discovery, and Integration (UDDI) . . . 21 2.1.4. Werkzeuge f ̈ ur den Umgang mit Webdiensten . . . . . . . . . 22 2.1.5. Erweiterungen zu WSDL, SOAP und UDDI . . . . . . . . . . 23 2.1.6. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2. Das Semantische Web . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2.1. Idee des Semantischen Webs . . . . . . . . . . . . . . . . . . . 24 2.2.2. Ontologien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2.3. F-Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.2.4. RDF und RDFS . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.2.5. OWL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.2.6. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . 37 XI Inhaltsverzeichnis 3. Stand der Forschung 39 3.1. Anforderungen an semantische Dienstbeschreibungssprachen . . . . . 39 3.2. OWL-S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.2.1. Aufbau von OWL-S . . . . . . . . . . . . . . . . . . . . . . . . 43 3.2.2. Vergleich von OWL-S-Beschreibungen . . . . . . . . . . . . . . 50 3.2.3. Bewertung von OWL-S . . . . . . . . . . . . . . . . . . . . . . 56 3.3. WSMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.3.1. Konzeptionelles Modell von WSMO . . . . . . . . . . . . . . . 59 3.3.2. Grundlegende Sprache: WSML . . . . . . . . . . . . . . . . . 62 3.3.3. Die Ausf ̈ uhrungsumgebung: WSMX . . . . . . . . . . . . . . . 65 3.3.4. Vergleich von Beschreibungen in WSMO . . . . . . . . . . . . 66 3.3.5. Bewertung von WSMO . . . . . . . . . . . . . . . . . . . . . . 72 3.4. Weitere Forschungsans ̈ atze . . . . . . . . . . . . . . . . . . . . . . . . 74 3.4.1. SWSF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 3.4.2. METEOR-S . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.4.3. IRS-III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 3.4.4. WSDL-S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.4.5. Weitere Ans ̈ atze . . . . . . . . . . . . . . . . . . . . . . . . . . 79 3.5. Zusammenfassung der Erf ̈ ullung der Anforderungen . . . . . . . . . . 80 3.6. Arbeiten in verwandten Gebieten . . . . . . . . . . . . . . . . . . . . 81 3.6.1. Wiederverwendung von Komponenten . . . . . . . . . . . . . 81 3.6.2. Agentensysteme . . . . . . . . . . . . . . . . . . . . . . . . . . 83 3.6.3. Grid Computing . . . . . . . . . . . . . . . . . . . . . . . . . 86 3.6.4. Information Retrieval . . . . . . . . . . . . . . . . . . . . . . . 88 3.7. Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 II. Eigener Ansatz 91 4. ̈ Uberblick ̈ uber den eigenen Ansatz 93 4.1. Konzeptionelles Modell des Ansatzes . . . . . . . . . . . . . . . . . . 96 4.2. Generische Ontologiesprache DE-I . . . . . . . . . . . . . . . . . . . . 102 4.3. Dienstspezifische Ontologiesprache DE-II . . . . . . . . . . . . . . . . 107 4.4. Dienstbeschreibungssprache DSD . . . . . . . . . . . . . . . . . . . . 114 4.5. Vergleich von DSD-Beschreibungen . . . . . . . . . . . . . . . . . . . 116 4.6. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 5. Generische Ontologiesprache: DIANE Elements I 119 5.1. Repr ̈ asentationsformen . . . . . . . . . . . . . . . . . . . . . . . . . . 119 5.2. Schemata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 5.2.1. Primitive Datentypen . . . . . . . . . . . . . . . . . . . . . . . 121 5.2.2. Klassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 XII Inhaltsverzeichnis 5.2.3. Ontologien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 5.2.4. Wertbestimmte und Entit ̈ atsklassen . . . . . . . . . . . . . . . 130 5.2.5. ̈ Offentliche und teil ̈ offentliche Entit ̈ atsklassen . . . . . . . . . 131 5.2.6. Vererbungsbeschr ̈ ankungen . . . . . . . . . . . . . . . . . . . . 132 5.2.7. Dom ̈ anenspezifische Berechnungen auf Instanzen . . . . . . . . 133 5.3. Instanzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 5.3.1. Werte primitiver Typen . . . . . . . . . . . . . . . . . . . . . 134 5.3.2. Instanzen von Klassen . . . . . . . . . . . . . . . . . . . . . . 135 5.3.3. Anforderungen an das F ̈ ullen von Attributen . . . . . . . . . . 137 5.3.4. ̈ Offentliche und private benamte Instanzen . . . . . . . . . . . 138 5.3.5. Gleichheit von Instanzen . . . . . . . . . . . . . . . . . . . . . 139 5.3.6. Vordefinierte Instanzen . . . . . . . . . . . . . . . . . . . . . . 141 5.4. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 6. Dienstspezifische Ontologiesprache: DIANE Elements II 143 6.1. Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 6.1.1. Typbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . 145 6.1.2. Direkte Bedingungen . . . . . . . . . . . . . . . . . . . . . . . 146 6.1.3. Attributbedingungen . . . . . . . . . . . . . . . . . . . . . . . 147 6.1.4. Fehlstrategien . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 6.1.5. Verbindungsstrategien . . . . . . . . . . . . . . . . . . . . . . 148 6.1.6. Typvergleichsstrategien . . . . . . . . . . . . . . . . . . . . . . 149 6.1.7. Test auf Mengenzugeh ̈ origkeit . . . . . . . . . . . . . . . . . . 150 6.2. Unscharfe Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 6.2.1. Unscharfe direkte Bedingungen . . . . . . . . . . . . . . . . . 151 6.2.2. Unscharfe Fehlstrategien . . . . . . . . . . . . . . . . . . . . . 152 6.2.3. Unscharfe Verbindungsstrategien . . . . . . . . . . . . . . . . 152 6.2.4. Unscharfe Typvergleichsstrategien . . . . . . . . . . . . . . . . 153 6.2.5. Test auf unscharfe Mengenzugeh ̈ origkeit . . . . . . . . . . . . 154 6.3. Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 6.3.1. Bindungszustand . . . . . . . . . . . . . . . . . . . . . . . . . 154 6.4. Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 6.5. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 7. Dienstbeschreibungssprache: DIANE Service Description 159 7.1. Struktur von Dienstbeschreibungen in DSD . . . . . . . . . . . . . . . 159 7.1.1. Obere Ontologie . . . . . . . . . . . . . . . . . . . . . . . . . . 161 7.1.2. Obere Dienstontologie . . . . . . . . . . . . . . . . . . . . . . 162 7.1.3. Kategorieontologien . . . . . . . . . . . . . . . . . . . . . . . . 165 7.1.4. Dom ̈ anenontologien . . . . . . . . . . . . . . . . . . . . . . . . 170 7.1.5. Prinzipieller Aufbau von Dienstbeschreibungen . . . . . . . . . 171 7.2. Bedeutung von Dienstbeschreibungen in DSD . . . . . . . . . . . . . 172 XIII Inhaltsverzeichnis 7.2.1. Ablauf von Dienstbereitstellung und Dienstnutzung . . . . . . 172 7.2.2. Erweiterte Semantik der Sprachelemente aus DE-II . . . . . . 176 7.2.3. Zusammenfassung: Gesamtsemantik von Dienstbeschreibungen 180 7.3. Besondere Eigenschaften von Dienstbeschreibungen . . . . . . . . . . 181 7.3.1. Eindeutig und mehrdeutig spezifizierbare Dienste . . . . . . . 182 7.3.2. Unterbestimmte Dienstbeschreibungen . . . . . . . . . . . . . 183 7.3.3. Eigenschaften von Vorbedingungen . . . . . . . . . . . . . . . 185 7.4. Kommentierte Beispiele f ̈ ur Dienstbeschreibungen . . . . . . . . . . . 187 7.4.1. Beispielbeschreibung eines Wissensdienstes . . . . . . . . . . . 187 7.4.2. Beispielhafte Anfragebeschreibung . . . . . . . . . . . . . . . . 187 7.4.3. Beispielbeschreibung eines Realweltdienstes . . . . . . . . . . 190 7.5. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 8. Axiomatische Semantik von DE und DSD 193 8.1. Modale, temporale Pr ̈ adikatenlogik . . . . . . . . . . . . . . . . . . . 193 8.2. Klassen und Instanzen . . . . . . . . . . . . . . . . . . . . . . . . . . 194 8.3. Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 8.3.1. Aufbau von Mengen . . . . . . . . . . . . . . . . . . . . . . . 202 8.3.2. Elemente einer Menge, contains . . . . . . . . . . . . . . . . . 204 8.4. Unscharfe Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 8.5. Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 8.6. Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 8.7. Dienstbeschreibungen . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 8.7.1. Dienstangebotsbeschreibungen . . . . . . . . . . . . . . . . . . 212 8.7.2. Dienstanfragebeschreibungen . . . . . . . . . . . . . . . . . . . 214 8.8. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 9. Vergleich von Dienstbeschreibungen 217 9.1. Vergleich von Effekten . . . . . . . . . . . . . . . . . . . . . . . . . . 218 9.1.1. Vergleich variablenfreier Mengen . . . . . . . . . . . . . . . . . 221 9.1.2. Optimale Konfiguration der Eingabevariablen des Angebots 228 9.1.3. Optimale Konfigurationen der Ausgabevariablen der Anfrage . 233 9.1.4. Unbekannte F ̈ ullwerte . . . . . . . . . . . . . . . . . . . . . . 234 9.1.5. Einbeziehen der Sch ̈ atzphase . . . . . . . . . . . . . . . . . . . 235 9.1.6. Vergleich mehrerer Effekte . . . . . . . . . . . . . . . . . . . . 235 9.1.7. Gesamtablauf des Effektvergleichs . . . . . . . . . . . . . . . . 236 9.2. ̈ Uberpr ̈ ufung von Vorbedingungen . . . . . . . . . . . . . . . . . . . . 237 9.3. Trennung von Vor- und Hauptvergleich . . . . . . . . . . . . . . . . . 238 9.4. Gesamtbeispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 9.5. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 XIV Inhaltsverzeichnis III. Schluss 245 10.Evaluation 247 10.1. Innere Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 10.1.1. Test 1: Automatisierbarkeit der Dienstnutzung . . . . . . . . . 250 10.1.2. Test 2: Effiziente Vergleichbarkeit . . . . . . . . . . . . . . . . 252 10.2. ̈ Außere Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 10.2.1. Test 3: Vollst ̈ andige und effiziente Erfassbarkeit realer Dienste 257 10.2.2. Test 4: Unabh ̈ angige Erstellbarkeit von Beschreibungen . . . . 265 10.3. Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 11.Weiterf ̈ uhrende Arbeiten 275 11.1. Kombination von Diensten . . . . . . . . . . . . . . . . . . . . . . . . 275 11.1.1. Verkettung von Diensten . . . . . . . . . . . . . . . . . . . . . 277 11.1.2. Mehrere Effekte in der Anfrage . . . . . . . . . . . . . . . . . 277 11.1.3. Iterationsdirektiven . . . . . . . . . . . . . . . . . . . . . . . . 280 11.1.4. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . 283 11.2. Erweiterte Ausf ̈ uhrung von Diensten . . . . . . . . . . . . . . . . . . 284 11.2.1. Choreographie . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 11.2.2. Orchestrierung . . . . . . . . . . . . . . . . . . . . . . . . . . 285 11.2.3. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . 286 11.3. Dienstnutzung in mobilen Umgebungen . . . . . . . . . . . . . . . . . 287 11.3.1. Kontextbeachtende Dienstnutzung . . . . . . . . . . . . . . . 288 11.3.2. Dienstvermittlung in mobilen Netzen . . . . . . . . . . . . . . 290 11.3.3. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . 291 11.4. Infrastrukturelle Erweiterungen . . . . . . . . . . . . . . . . . . . . . 292 11.4.1. Ontologieverwaltung . . . . . . . . . . . . . . . . . . . . . . . 293 11.4.2. Vertrauensw ̈ urdige Dienstbeschreibungen . . . . . . . . . . . . 296 11.4.3. Erstellung von Dienstbeschreibungen . . . . . . . . . . . . . . 297 11.4.4. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . 298 11.5. Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 12.Zusammenfassung und Ausblick 299 12.1. Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 12.2. Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 IV. Anhang 309 A. Grounding in DSD 311 A.1. Schema des Groundings . . . . . . . . . . . . . . . . . . . . . . . . . 311 A.2. Beispiel f ̈ ur ein Grounding . . . . . . . . . . . . . . . . . . . . . . . . 312 A.3. Mapping zwischen Datentypen . . . . . . . . . . . . . . . . . . . . . . 314 XV Inhaltsverzeichnis B. Repr ̈ asentationsformen f-dsd und j-dsd 317 B.1. Schemata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 B.1.1. Primitive Datentypen . . . . . . . . . . . . . . . . . . . . . . . 317 B.1.2. Klassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 B.2. Instanzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325 B.2.1. Werte primitiver Typen . . . . . . . . . . . . . . . . . . . . . 325 B.2.2. Instanzen von Klassen . . . . . . . . . . . . . . . . . . . . . . 325 B.3. Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 B.3.1. Typbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . 328 B.3.2. Direkte Bedingungen . . . . . . . . . . . . . . . . . . . . . . . 329 B.3.3. Attributbedingungen . . . . . . . . . . . . . . . . . . . . . . . 330 B.3.4. Fehlstrategien . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 B.3.5. Verbindungsstrategien . . . . . . . . . . . . . . . . . . . . . . 331 B.3.6. Typvergleichsstrategien . . . . . . . . . . . . . . . . . . . . . . 332 B.3.7. Test auf Mengenzugeh ̈ origkeit . . . . . . . . . . . . . . . . . . 332 B.4. Unscharfe Mengen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 B.4.1. Unscharfe direkte Bedingungen . . . . . . . . . . . . . . . . . 333 B.4.2. Unscharfe Fehlstrategien . . . . . . . . . . . . . . . . . . . . . 334 B.4.3. Unscharfe Verbindungsstrategien . . . . . . . . . . . . . . . . 334 B.4.4. Unscharfe Typvergleichsstrategien . . . . . . . . . . . . . . . . 335 B.4.5. Test auf unscharfe Mengenzugeh ̈ origkeit . . . . . . . . . . . . 335 B.5. Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 B.5.1. Bindungszustand . . . . . . . . . . . . . . . . . . . . . . . . . 336 B.5.2. Kategorien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 B.6. Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 C. Formale Grammatik von DIANE Elements 339 D. Verwendete Ontologien 345 D.1. Die obere Ontologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 D.1.1. top . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 D.2. Die obere Dienstontologie . . . . . . . . . . . . . . . . . . . . . . . . 346 D.2.1. upper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 D.2.2. upper.profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 D.2.3. upper.grounding . . . . . . . . . . . . . . . . . . . . . . . . . 347 D.3. Kategorieontologien . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 D.3.1. category . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 D.3.2. category.represenation . . . . . . . . . . . . . . . . . . . . . . 348 D.3.3. category.knowledge . . . . . . . . . . . . . . . . . . . . . . . . 348 D.3.4. category.possession . . . . . . . . . . . . . . . . . . . . . . . . 349 D.3.5. category.assignment . . . . . . . . . . . . . . . . . . . . . . . . 351 D.3.6. category.valuation . . . . . . . . . . . . . . . . . . . . . . . . . 352 XVI Inhaltsverzeichnis D.3.7. category.position . . . . . . . . . . . . . . . . . . . . . . . . . 353 D.3.8. category.relationship . . . . . . . . . . . . . . . . . . . . . . . 354 D.3.9. category.instantiation . . . . . . . . . . . . . . . . . . . . . . . 355 D.3.10.category.capability . . . . . . . . . . . . . . . . . . . . . . . . 356 D.3.11.category.access . . . . . . . . . . . . . . . . . . . . . . . . . . 356 D.4. Wichtige Dom ̈ anenontologien . . . . . . . . . . . . . . . . . . . . . . 357 D.4.1. domain.telecommunication . . . . . . . . . . . . . . . . . . . . 357 D.4.2. domain.information . . . . . . . . . . . . . . . . . . . . . . . . 358 XVII Inhaltsverzeichnis XVIII