Nächste Version des Web-Service-Protokolls

W3C verabschiedet Spezifikation für Soap 1.2

04.07.2003
MÜNCHEN (CW) - Soap 1.2 repräsentiert die erste Version des Web-Service-Protokolls, für die das W3-Consortium verantwortlich zeichnet. Viele Neuerungen entspringen der Abstimmung von Soap auf andere XML-Standards wie Namespaces oder Schema. In der Arbeitsgruppe waren fast alle großen Softwarefirmen vertreten.

Soap zählt als XML-basierendes Kommunikationsprotokoll zu den technischen Grundlagen für Web-Services. In seiner ersten selbst verantworteten Ausführung wollte das W3C dieser Bedeutung gerecht werden und eine robuste sowie leistungsfähige Technologie entwerfen. Nach Einschätzung von Tim Berners-Lee, W3C-Director und Urvater des Web, wurde Soap 1.2 als erste Version umfangreichen Tests unterworfen und lag bereits in mehreren Implementierungen vor, ehe die Spezifikation verabschiedet wurde. Dazu zählen solche aus der Open-Source-Welt (Apache, Perl) ebenso wie jene von großen Herstellern (Bea, Microsoft). Diese breite Akzeptanz gilt als wichtige Voraussetzung dafür, dass Web-Services das Versprechen der Interoperabilität zwischen verschiedenen Plattformen wie Java, .NET oder freien Scriptsprachen einlösen können.

Das W3C als Hüter mehrerer wichtiger XML-Standards legte vor allem Wert darauf, dass diese Eingang in Soap 1.2 finden. So zählt die Unterstützung für Namespaces (http://www.w3.org/TR/REC-xml-names) zu den Neuerungen gegenüber der Version 1.1. Sie erlaubt die gleichzeitige Verwendung von Elementen aus mehreren Quellen, ohne dass dabei Namenskonflikte auftreten. Darüber hinaus wurde der Kommunikationsmechanismus enger mit XML Schema verzahnt. Bereits in der W3C Note zu Soap 1.1 (http://www.w3.org/TR/SOAP) sah das W3C die Möglichkeit vor, zur Bezeichnung von Datentypen für Parameter oder Rückgabewerte auf "XML Schema Part 2: Datatypes" zurückzugreifen.

Die Spezifikation von Soap 1.2 besteht aus vier Teilen. Den Kern machen das Messaging Framework und die es ergänzenden "Adjuncts" aus. Hinzu kommen Anweisungen und Tests für Programmierer von Soap-Prozessoren sowie ein umfangreiches Tutorial. Das Messaging Framework schreibt unter anderem vor, wie Soap-Nachrichten verarbeitet werden müssen, definiert Mechanismen für Erweiterungen, die innerhalb und außerhalb des Soap-Umschlags genutzt werden dürfen, sowie die Bindung an Transportprotokolle. Als solches herrscht weiterhin HTTP vor, der Versand über E-Mail per SMTP ist zwar möglich, aber nicht Teil der Spezifikation. Dazu existiert eine eigene W3C-Notiz namens "Soap Version 1.2 Email Binding", die bereits im Juni letzten Jahres publiziert wurde. Eine interessante Neuerung bietet der HTTP-Transport in Soap 1.2, indem er nun auch GET-Anfragen berücksichtigt.

Unterstützung für HTTP-GET

Anwendungen können daher auf ein einfaches HTTP-GET Soap-Nachrichten als Antwort erhalten. Voraussetzung dafür ist nur, dass sie im "Accept"-Header den für Soap neu eingeführten Mime-Type "application/soap+xml" angeben.

Bei allen technischen Neuerungen hat das W3C nicht vergessen, sich des Namensproblems anzunehmen. Nachdem schon öfter kritisiert wurde, dass es bei Soap nicht um den Zugriff auf Objekte gehe, gilt der Name jetzt offiziell nicht mehr als Abkürzung für "Simple Object Access Protocol". (ws)