430 likes | 541 Vues
Semantic Web Services. Richard Cyganiak <cyganiak@inf.fu-berlin.de> 8. Juli 2003. Seminar “Grundlagen des Semantic Web” Prof. Robert Tolksdorf Freie Universität Berlin, Institut für Informatik. Inhalt. Was sind Web Services? Heutiger Stand der WS-Technologien
E N D
Semantic Web Services Richard Cyganiak<cyganiak@inf.fu-berlin.de> 8. Juli 2003 Seminar “Grundlagen des Semantic Web” Prof. Robert Tolksdorf Freie Universität Berlin, Institut für Informatik
Inhalt • Was sind Web Services? • Heutiger Stand der WS-Technologien • Wie’s weitergeht: Semantic Web Services • DAML-S • SWWS
Was sind Web Services? • Software-Komponenten, die Funktionalität über das Internet zur Verfügung stellen • Web-Ressourcen, die nicht nur statische Informationen liefern, sondern das Auslösen von Aktionen erlauben • Kauf eines Produkts • ein Gerät steuern • automatisch aufrufbar • Web Services = Webdienste
Webdienste aus zwei Perspektiven • Aufruf von Funktionen aus einer Bibliothek • Biblothek liegt auf einem entfernten Server • Vorteil: Discovery, Deployment • Web-Applikationen, für Computer bedienbar • keine HTML-Formulare mit HTML-Antwortseiten • sondern XML-Anfragen und XML-Antworten • Vorteil: Ausführung automatisieren • Vorteil: komplexe Dienste aus Einzeldiensten "zusammenstecken"
Populäre Beispiele • Google • Amazon • Trackback
Probleme • Beschreibung • Automatisches Auffinden • Automatisches Zusammenspiel
Heutiger Stand des WS-Stack Flow, Composition: BPEL4WS Discovery: UDDI Description: WSDL Messaging: SOAP Syntax: XML Transport: HTTP
SOAP • Simple Object Access Protocol • W3C Note, Mai 2000 • “Envelope” (Umschlag) für ein XML-Dokument • Mechanismen zum XML-Codieren von • Methodenaufrufen • Programmiersprachlichen Datenstrukturen (Arrays, ...)
WSDL • Web Service Description Language • Version 1.2: W3C Working Draft, Juni 2003 • “Wie rufe ich Dienst auf? Wie sieht Antwort aus?” • Interface-Beschreibung • Funktionsnamen, Parameter, Antworttyp usw. • Dokumentation der Semantik nur textuell
UDDI • Universal Description, Discovery and Integration • OASIS; Version 3, Juli 2002 • “Gelbe Seiten” für (nicht nur Web-)dienste • Unternehmen mit Kontaktdaten • Dienste mit “Access Points” (URI, mailto, Tel, ...) • Auffinden von Diensten über Klassifikationen • Nur textuelle Beschreibung der Semantik
BPEL4WS • Business Process Execution Language for Web Services • Draft, Mai 2003 • Webdienste zusammenfügen • Formale Protokollspezifikation für Geschäftsabläufe zwischen Unternehmen • BPEL-Server kann Spezifikation automatisch ausführen • Abläufe und Teilnehmer müssen vorher feststehen
ebXML • Umfassende Lösung für den B2B-Bereich • Überschneidungen mit anderen Standards • Wohldefinierte Semantik • Bestellungen, Rechnungen, ...
Semantic Web Services Flow, Composition: BPEL4WS Semantik Discovery: UDDI Description: WSDL Messaging: SOAP Syntax: XML Transport: HTTP
SW, WS, SWWS • Semantic Web • Informationen maschinenlesbar machen • globalen Austausch ermöglichen • intelligente Schlüsse ziehen • Web Services • Dienste über das Web anbieten • Semantic Web Services • automatischen Auffinden, Aufrufen, Kombinieren und Überwachen von Webdiensten
Der “Magic Button” (1) • Warum reicht Semantic Web nicht aus? • Kongress-Homepage • Finde Flüge zum Kongressort • Finde Hotel in der Nähe • zum Kongresszeitpunkt • müssen meine Kreditkarte akzeptieren • Zeige Ergebnis an
Der “Magic Button” (2) • Mit Web Service: Buche Ticket und Hotel!
Automatische Ausführung • Dienstbeschreibung muss Aufruf des Dienstes ermöglichen • Nötige Eingaben • Mögliche Ausgaben • Wie aufrufen (URI, Protokoll)?
Automatisches Auffinden • Benutzer definiert formale Kriterien • passende Dienst werden automatisch aufgefunden • “Matchmaking”
Automatisches Zusammenfügen • Benutzer definiert “High-level”-Ziel • Automatische Auswahl einzelner Dienste • Verkettung der Dienste zur Erreichnung des Ziels
Vermittlung • Nicht überall setzt sich ein Standard durch • Vermittlung mittels Mediatoren (Adaptoren) • Basis: Ontologien
Überwachung von Diensten • Komplexe Dienste mit langer Ausführungszeit (Monate) • Status abfragen • Änderungen vornehmen • Einheitlich für beliebige Dienste
Semantic Web Services... • ...ermöglichen automatisches • Auffinden • Ausführen • Zusammensetzen • Überwachen • von Webdiensten
DAML-S • ServiceProfile: Was macht der Dienst? • Auffinden • ServiceModel: Wie funktioniert er? • Zusammensetzen • ServiceGrounding: Wie zugreifen? • Ausführung
DAML-S • Ontologie für Dienste • Ausgangspunkt: Was können wir mit DAML+OIL machen? • seit 2001 in Entwicklung • alle 7-10 Monate neue Version; aktuell 0.9 • noch große Lücken (Rules, Logic)
DAML Services Coalition • BBN • Carnegie Mellon University • ISI • SRI • Nokia • Stanford University • University of Southampton • Universtiy of Maryland • Yale University
Oberste Ebene Resource Service ServiceGrounding supports • ServiceProfile: Was macht der Dienst? • ServiceModel: Wie setzt er sich zusammen? • ServiceGrounding: Wie zugreifen? • Mapping abstrakter Parameter zu WSDL und URIs provides presents describedBy ServiceProfile ServiceModel
Service Profiles • Welche Organisation bietet den Dienst an? • Kontaktdaten • Charakteristiken des Dienstes? • Klassifikation, Qualitätsrating • in anderen Ontologien zu definieren • Welche Funktion hat er? • Input • Output • Preconditions (braucht DAML-Rules) • Effect (braucht DAML-Rules)
Service Models • Anleitung zur Ausführung des Dienstes • ähnlich BPEL4WS • Dienst als Prozess • AtomicProcess • CompositeProcess • SimpleProcess
Kontrollstrukturen für CompositeProcess • Sequence • Split • Split + Join • Unordered • Choose • If-Then-Else • Repeat-Until • Aber noch keine Modellierung für Bedingungen definiert
Außerdem • Beschreibung von Ressourcen • consumable, reusable • use, replenish • lock, release • DAML Time
DAML-S: Zusammenfassung • Ontologie zur Beschreibung von Webdiensten • Grundlage: DAML+OIL (demnächst OWL) • Auffinden, Zusammenstellen, Ausführen • Entscheidende Teile noch nicht definiert • weil man an die Grenzen von DAML+OIL stößt • Nicht modular
Semantic Web EnabledWeb Services (SWWS) Ausgangspunkt: Was brauchen wir, um das Web in ein intelligentes, verteiltes informationsverarbei-tendes System zu verwandeln?
SWWS • Groß angelegtes und ehrgeiziges Projekt • EU-gefördert 2002-2005 • Breite Industrieunterstützung • Leiter: Dieter Fensel, Uni Innsbruck • Noch in der Analyse-Phase
Deliverables • Umfassendes Framework für Web Services (WSMF) • Service zum semantischen Auffinden von WS • Lösung zur Vermittlung zwischen Diensten • Grundlage: semantische Beschreibung der Daten und Geschäftslogik • Plattform, die das alles realisiert • Drei Fallstudien (B2C und B2B)
Analyse: Anforderungen Zurück zum Beispiel “Angestellter bestellt Computer” • Prozess modellien • Prozess ausfühen • Sicherheit und Zuverlässigkeit des Netzes • Hersteller und Vertragsanbieter finden • Preise und Produkte vergleichbar machen • verschiedene Dokumenttypen transformieren • Computerkauf und Vertragsabschluss müssen entweder beide gelingen oder keins von beiden
Web Service Modeling Framework (WSMF) • Ontologien • Goal repository • Beschreibung von Webdiensten • Mediatoren
Ontologien • Terminologie für die anderen Bestandteile • Abbildung der Semantik inkompatibler Komponenten auf gemeinsame Ontologie
Goal Repositories • Ziele des Klienten bei der Verwendung eines WS • Pre-conditions • Was muss gelten, damit ich den WS benutzen darf? • Welche Eingabeinformationen bereitstellen? • Post-conditions • Bedingungen, die für die Ausgaben zutreffen
Beschreibung von Webdiensten • Black Box Description • Außenansicht des Dienstes • Pre- und Post-conditions, Ein- und Ausgaben • Web Service und Goal Repository müssen nicht die gleiche Terminologie sprechen • Gray Box Description • Zusammenspiel einzelner Dienste • ähnlich BPEL4WS, DAML-S Process Model
Mediatoren • Vermitteln/übersetzen/transformieren zwischen • Datenstrukturen • Business Logic • Message Exchange Protocols • Dienstaufruf
SWWS: Zusammenfassung • Zuerst ambitionierte Requirements ermitteln • WSMF: Framework zur Erfüllung der Requirements • Bestehende Standards/Initiativen in dieses Framework einpassen (DAML-S, BPEL4WS) • Noch in der Analyse-Phase
Die SWWS-Vision Web Services UDDI, WSDL, SOAP IntelligentWeb Services Dynamisch WWW URI, HTML, HTTP Semantic Web RDF(S), OWL Statisch Zeit
Weitere Informationen • DAML-Shttp://www.daml.org/services/ • SWWShttp://swws.semanticweb.org/ • W3C Web Services Activityhttp://www.w3.org/2002/ws/ • OASIShttp://www.oasis-open.org/