33
SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch- Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne Kurz HKI-Proseminar (Teil 1) Texte als Information Referat von Feyza Fevziye Imren Datum: 29.01.2010

SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Embed Size (px)

Citation preview

Page 1: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

SOAP (Simple Object Access Protocol)

Universität zu KölnInstitut für Historisch-Kulturwissenschaftliche

Informationsverarbeitung WS 09/10

M.A. Susanne KurzHKI-Proseminar (Teil 1) Texte als Information

Referat von Feyza Fevziye ImrenDatum: 29.01.2010

Page 2: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Gliederung:

• Was ist SOAP?• Entwicklung• Funktionsweise von SOAP

Page 3: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Was ist SOAP?

• Netzwerkprotokoll• Ermöglicht Kommunikation zwischen

verteilten Netzwerksystemen• Remote Procedure Calls • Ziel: Unterstützung des

plattformunabhängigen Nachrichtenaustausch

• Stützt sich an XML und (z.B.) HTTP

Page 4: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Anwendungsbereiche

• Abwicklung von Suchanfragen durch SOAP (request-reponse; RPC)

• Wechselseitige, dialogorientierter Austausch von XML-Dokumenten

• Z.B. Authentifizierungen bei Bestellungen (Online-Shops), oder Elemente bei Suchanfragen in Suchmachinen

Page 5: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Entwicklung

• 1998: Dave Winer und Microsoft entwickeln den Vorgänger XML-RPC

• 1999: SOAP-Version 0.9, später 1.0• 2000: Unterstützung von IBM, Lotus & Sun• 2001: SOAP 1.1 Software bei W3C als ein

Standart• 2003: SOAP 1.2 wird anerkannt• Seit dem KEIN Akronym mehr

Page 6: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Funktionsweise von SOAP

Page 7: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Beispiel einer SOAP-Nachricht

Page 8: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Grundstruktur

„Envelope-Element“: Referenz durch Namensraum-Attribut auf: http://www.w3.org/2003/05/soap-envelope/

SOAP Header: optionaler Erweiterungsmechanismus (z.B. für Authentifikation oder Transaktionsverarbeitung)

SOAP Body: Pflichtelement (enthält eigentliche Dateninformationen)

Page 9: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

SOAP Bespiel<?xml version='1.0' ?><env:Envelopexmlns:env="http://www.w3.org/2003/05/soap-envelope"><env:Header>….<env:Header><env:Body><wetter xmlns="http://www.soapwetter.de/wetter"><plz>57068</plz></wetter></env:Body></env:Envelope>

Page 10: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Die Übermittlung

Page 11: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Der Header (optional)

- hier: Authentifizierung anhand eines Benutzernamens und eines Passworts

-Wenn der Empfänger den Header nicht verarbeiten kann, wird er ignoriert. Es sei denn, das Attribut „mustUnderstand“ ist gesetzt.

Page 12: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Fluganfrage

Reservierung mit Header-Blöcken und einem Body

Page 13: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

<?xml version='1.0' ?><env:Envelopexmlns:env="http://www.w3.org/2003/05/soap-envelope"><env:Header>

<m:reservationxmlns:m="http://travelcompany.example.org/reservation"env:role="http://www.w3.org/2003/05/soap-envelope/role/next"env:mustUnderstand="true"><m:reference>uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d</m:reference><m:dateAndTime>2001-11-29T13:20:00.000-05:00</m:dateAndTime></m:reservation><n:passengerxmlns:n="http://mycompany.example.com/employees"env:role="http://www.w3.org/2003/05/soap-envelope/role/next"env:mustUnderstand="true"><n:name>Åke Jógvan Øyvind</n:name></n:passenger>

</env:Header><env:Body><p:itinerary xmlns:p="http://travelcompany.example.org/reservation/travel"><p:departure><p:departing>New York</p:departing><p:arriving>Los Angeles</p:arriving><p:departureDate>2001-12-14</p:departureDate><p:departureTime>late afternoon</p:departureTime><p:seatPreference>aisle</p:seatPreference></p:departure><p:return><p:departing>Los Angeles</p:departing><p:arriving>New York</p:arriving><p:departureDate>2001-12-20</p:departureDate><p:departureTime>mid-morning</p:departureTime><p:seatPreference/></p:return></p:itinerary><q:lodgingxmlns:q="http://travelcompany.example.org/reservation/hotels"><q:preference>none</q:preference></q:lodging></env:Body>

</env:Envelope>

Page 14: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Antwort auf Fluganfrage

• wechselseitige (back-and forth) Konversation

• Dialogorietierter Austausch von XML-Dokumenten

Page 15: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

<?xml version='1.0' ?><env:Envelopexmlns:env="http://www.w3.org/2003/05/soap-envelope"><env:Header><m:reservationxmlns:m="http://travelcompany.example.org/reservation"env:role="http://www.w3.org/2003/05/soap-envelope/role/next"env:mustUnderstand="true"><m:reference>uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d</m:reference><m:dateAndTime>2001-11-29T13:35:00.000-05:00</m:dateAndTime></m:reservation><n:passengerxmlns:n="http://mycompany.example.com/employees"env:role="http://www.w3.org/2003/05/soap-envelope/role/next"env:mustUnderstand="true"><n:name>Åke Jógvan Øyvind</n:name></n:passenger></env:Header><env:Body><p:itineraryClarificationxmlns:p="http://travelcompany.example.org/reservation/travel"><p:departure><p:departing><p:airportChoices>JFK LGA EWR</p:airportChoices></p:departing></p:departure><p:return><p:arriving><p:airportChoices>JFK LGA EWR</p:airportChoices></p:arriving></p:return></p:itineraryClarification></env:Body></env:Envelope>

Page 16: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Diese Antwort führt den Nachrichtenaustausch fort<?xml version='1.0' ?>

<env:Envelopexmlns:env="http://www.w3.org/2003/05/soap-envelope"><env:Header><m:reservationxmlns:m="http://travelcompany.example.org/reservation"env:role="http://www.w3.org/2003/05/soap-envelope/role/next"env:mustUnderstand="true"><m:reference>uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d</m:reference><m:dateAndTime>2001-11-29T13:36:50.000-05:00</m:dateAndTime></m:reservation><n:passengerxmlns:n="http://mycompany.example.com/employees"env:role="http://www.w3.org/2003/05/soap-envelope/role/next"env:mustUnderstand="true"><n:name>Åke Jógvan Øyvind</n:name></n:passenger></env:Header><env:Body><p:itineraryxmlns:p="http://travelcompany.example.org/reservation/travel"><p:departure><p:departing>LGA</p:departing></p:departure><p:return><p:arriving>EWR</p:arriving></p:return></p:itinerary></env:Body></env:Envelope>

Page 17: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Entfernte Prozeduraufrufe (RPC)

• Entfernte Methoden des Servers werden per Web Services aufgerufen

• ein struct wird modelliert, der den Namen der Prozedur oder Methode beinhaltet

• env:encodingStyle Attribut mit dem Wert http://www.w3.org/2003/05/soap-encoding (Um zu verdeutlichen, dass der Inhalt der Struktur gemäß den SOAP-Kodierungsregeln serialisiert worden ist)

Page 18: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Fehlerszenarien

• Das SOAP-Fault-Element ist ein Unterelement des Bodys

• Besteht aus Subelementen Code, Reason und den optionalen Elementen Node, Role und Detail

Page 19: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Quellen:• http://poseidon.home.tlink.de/w3c/REC-soap12-part0-

20030624-de_DE/#L1149• http://www.w3.org/TR/2003/REC-soap12-part1-

20030624/• http://www.w3.org/TR/2003/REC-soap12-part2-

20030624/• http://www.wi-ler.net/html/img/pool/papers/

php_soap.pdf?sid=6002d4db63ab7590f96e6d66978cf02c

• http://www.schoenberg-solutions.de/dl/SOAP_SEC_060810.pdf

Page 20: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

SMIL

(Synchronized Multimedia Integration Language)

Page 21: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Was ist SMIL?

• XML basierend• Von W3C entwickelter Standard• Markup - Sprache für zeitsynchronisierte,

audiovisuelle und multimediale Inhalte• Als Dateierweiterung wird .smi oder .smil

verwendet• Aktuellste Version: SMIL 3.0

Page 22: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Ziele• Einheitliche 'Sprache' für interaktive Multimedia-• Präsentationen vor allem im Internet• Anzeigen von mehrere Dateien zur gleichen Zeit• Verfügt über Definition von Sequenz und Dauer

der einzelnen Elemente• Verfügt über Definition von Position und

Sichtbarkeit der Elemente• Anwendungsmöglichkeit mit SVG• Multimediaobjekte, die auf räumlich verteilten

Servern liegen, können zu einer einheitlichen Präsentation zusammengefasst werden

Page 23: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Eigenschaften

• Spezifikation des Layouts und Synchronisation• Ermöglicht die integrierte Darstellung und

Verlinkung unterschiedlicher Medien zu einer linearen oder interaktiven Multimedia-Präsentation – online wie offline.

• Anpassung an die Übertragungsbandbreite; Bildschirmauflösung und Farbtiefe

• Auswahl an Sprachversionen• Unterstützung von Hyperlinks

Page 24: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Grundstruktur<smil> <head> <meta name="copyright" content="Inhalt" /> <layout> <!—Layout-Elemente --> </layout> </head> <body> <!—Media- und Synchronisations-Elemente --></body> </smil>

Page 25: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Beispiel<smil><head><layout><root-layout id=“video” width="300" height="200"/><region id=“comment" left="25" top="50" width=“35" height=“29" /><region id=“bild" left=“135" top=“60" width=“43" height=“75" /><region id=“titel" left=“37" top=“115" width=“215" height="15" /></layout></head><body><seq><img src="bild.jpg" alt="Testbild" region= “video" dur=“5s”/><img src=“date.gif" region="video" begin="1.0s" end="3.0s"/> </seq></body></smil>

Page 26: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Eigenschaften• Unterstützt alle gängige standardisierten

Medienformate für Text, Grafik, Video, Sound:• img: JPEG, GIF, PNG, etc.• video: MPEG, AVI, MOV, etc.• audio: MP3, WAV, AU, etc.• animation: z.B SVG• text: TXT, ASCII, etc.• Ab 2.0 können die SMIL-Anweisungen in• andere Datei-Formate wie XHTML oder SVG• eingebettet werden

Page 27: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

In welchen Player/Browserumgebungen können die SMIL-Applikationen abgespielt

werden?

• Ambulant 1.8 Open Source Player- als eigene Applikation- als FireFox PlugIn• RealPlayer – der beste Player für SMIL• Internet Explorer 6 (7 noch nicht, daran wird beiSMIL 3.0 gearbeitet)• QuickTime, jedoch nur SMIL 1.0!

Page 28: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Zeitliche Steuerung• Parallel• Sequentiell• Ereignisbasiert• In Abhängigkeit von…• Variable Zeit• Beispiel:

<body><img src="bild.jpg" alt="Bild" region= " video" dur="3s" begin="2s" /></body>…..

Page 29: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Synchronisationselemente

• - <seq>-Element – Sequenz für Nacheinanderabspielen• - <excl>-Element – einzelne Objekte ohne Reihenfolge• - <par>-Element – paralleles Abspielen der

Medienobjekte• Kombinationen von <par>, <seq> und <excl>• Wiederholungen

Page 30: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Ereignisbasierte Synchronisation mit Zeit als Ereignis

Page 31: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Ereignisbasierte Synchronisationmit Interaktions – Ereignissen

• - Nutzung des <excl>-Elements für zeitunabhängige• Präsentationen• - Als Ereignis kann z.B. ein Klick auf ein Objekt definiert

werden<body><excl><img src="bild1.jpg" id="bild1" region="bild" begin="0s;bild2.activateEvent" dur="indefinite" /><img src="bild2.jpg" id="bild2" region="bild"begin="bild1.activateEvent" dur="indefinite" /></excl></body>

Page 32: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Logische SynchronisationBeispiel: Wahl geeigneter Streams in Abh. von Bandbreite<par><text .../><switch><par system-bitrate="40000">...</par><par system-bitrate="24000">...</par><par system-bitrate="10000">........</par></switch></par>

Page 33: SOAP (Simple Object Access Protocol) Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 09/10 M.A. Susanne

Quellen

• http://www.w3.org/2000/xp/Group/ • http://www.xml.com/pub/a/2002/05/29/smil

.html• http://poseidon.home.tlink.de/w3c/REC-

soap12-part0-20030624-de_DE/#L1149• http://www.w3.org/TR/2003/REC-soap12-

part1-20030624/