Semantic Web Services
Richard Cyganiak
<[email protected]>
8. Juli 2003
Seminar “Grundlagen des Semantic Web”
Prof. Robert Tolksdorf
Freie Universität Berlin, Institut für Informatik
1/43
Inhalt
•
•
•
•
•
Was sind Web Services?
Heutiger Stand der WS-Technologien
Wie’s weitergeht: Semantic Web Services
DAML-S
SWWS
2/43
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
3/43
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"
4/43
Populäre Beispiele
• Google
• Amazon
• Trackback
5/43
Probleme
• Beschreibung
• Automatisches Auffinden
• Automatisches Zusammenspiel
6/43
Heutiger Stand des WS-Stack
Flow, Composition: BPEL4WS
Discovery: UDDI
Description: WSDL
Messaging: SOAP
Syntax: XML
Transport: HTTP
7/43
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, ...)
8/43
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
9/43
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
10/43
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
11/43
ebXML
• Umfassende Lösung für den B2B-Bereich
• Überschneidungen mit anderen Standards
• Wohldefinierte Semantik
• Bestellungen, Rechnungen, ...
12/43
Semantic Web Services
Flow, Composition: BPEL4WS
Discovery: UDDI
Semantik
Description: WSDL
Messaging: SOAP
Syntax: XML
Transport: HTTP
13/43
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
14/43
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
15/43
Der “Magic Button” (2)
• Mit Web Service: Buche Ticket und Hotel!
16/43
Automatische Ausführung
• Dienstbeschreibung muss Aufruf des Dienstes
ermöglichen
• Nötige Eingaben
• Mögliche Ausgaben
• Wie aufrufen (URI, Protokoll)?
17/43
Automatisches Auffinden
• Benutzer definiert formale Kriterien
• passende Dienst werden automatisch aufgefunden
• “Matchmaking”
18/43
Automatisches Zusammenfügen
• Benutzer definiert “High-level”-Ziel
• Automatische Auswahl einzelner Dienste
• Verkettung der Dienste zur Erreichnung des Ziels
19/43
Vermittlung
• Nicht überall setzt sich ein Standard durch
• Vermittlung mittels Mediatoren (Adaptoren)
• Basis: Ontologien
20/43
Überwachung von Diensten
• Komplexe Dienste mit langer Ausführungszeit
(Monate)
• Status abfragen
• Änderungen vornehmen
• Einheitlich für beliebige Dienste
21/43
Semantic Web Services...
• ...ermöglichen automatisches
•
•
•
•
Auffinden
Ausführen
Zusammensetzen
Überwachen
• von Webdiensten
22/43
DAML-S
• ServiceProfile: Was macht der Dienst?
 Auffinden
• ServiceModel: Wie funktioniert er?
 Zusammensetzen
• ServiceGrounding: Wie zugreifen?
 Ausführung
23/43
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)
24/43
DAML Services Coalition
•
•
•
•
•
•
•
•
•
BBN
Carnegie Mellon University
ISI
SRI
Nokia
Stanford University
University of Southampton
Universtiy of Maryland
Yale University
25/43
Oberste Ebene
Resource
provides
presents
ServiceProfile
Service
supports
ServiceGrounding
describedBy
ServiceModel
• ServiceProfile: Was macht der Dienst?
• ServiceModel: Wie setzt er sich zusammen?
• ServiceGrounding: Wie zugreifen?
• Mapping abstrakter Parameter zu WSDL und URIs
26/43
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)
27/43
Service Models
• Anleitung zur Ausführung des Dienstes
• ähnlich BPEL4WS
• Dienst als Prozess
• AtomicProcess
• CompositeProcess
• SimpleProcess
28/43
Kontrollstrukturen für
CompositeProcess
•
•
•
•
•
•
•
•
Sequence
Split
Split + Join
Unordered
Choose
If-Then-Else
Repeat-Until
Aber noch keine Modellierung für Bedingungen
definiert
29/43
Außerdem
• Beschreibung von Ressourcen
• consumable, reusable
• use, replenish
• lock, release
• DAML Time
30/43
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
31/43
Semantic Web Enabled
Web Services (SWWS)
Ausgangspunkt: Was brauchen wir, um das Web in
ein intelligentes, verteiltes informationsverarbeitendes System zu verwandeln?
32/43
SWWS
•
•
•
•
•
Groß angelegtes und ehrgeiziges Projekt
EU-gefördert 2002-2005
Breite Industrieunterstützung
Leiter: Dieter Fensel, Uni Innsbruck
Noch in der Analyse-Phase
33/43
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)
34/43
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
35/43
Web Service Modeling
Framework (WSMF)
•
•
•
•
Ontologien
Goal repository
Beschreibung von Webdiensten
Mediatoren
36/43
Ontologien
• Terminologie für die anderen Bestandteile
• Abbildung der Semantik inkompatibler
Komponenten auf gemeinsame Ontologie
37/43
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
38/43
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
39/43
Mediatoren
• Vermitteln/übersetzen/transformieren zwischen
•
•
•
•
Datenstrukturen
Business Logic
Message Exchange Protocols
Dienstaufruf
40/43
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
41/43
Die SWWS-Vision
Dynamisch
Statisch
UDDI, WSDL, SOAP
Intelligent
Web Services
WWW
Semantic Web
URI, HTML, HTTP
RDF(S), OWL
Web Services
Zeit
42/43
Weitere Informationen
• DAML-S
http://www.daml.org/services/
• SWWS
http://swws.semanticweb.org/
• W3C Web Services Activity
http://www.w3.org/2002/ws/
• OASIS
http://www.oasis-open.org/
43/43

Semantic Web Services