Mithilfe von WSDL festgelegte SOAP-Standardnachrichtenformate

Die Industriestandardsprache WSDL (Web Services Description Language), die ein Schema für XML-Dokumente für die Definition von Webdiensten definiert, bietet zwei zentrale SOAP-Formatierungsoptionen. Beide Optionen werden in XML-Elementen angegeben, die sich nicht im primären WSDL-Namespace https://schemas.xmlsoap.org/wsdl/, sondern im Namespace https://schemas.xmlsoap.org/wsdl/soap/ befinden. Mit dem zweiten Namespace wird ein Webdienst an das SOAP-Protokoll gebunden.

SOAP-Formatierungsoptionen

Es sind zwei Formatierungsoptionen verfügbar:

  • Style: Für das untergeordnete Element und möglicherweise die diesem untergeordneten Elemente des Body-Elements einer SOAP-Nachricht. Diese Option wird als style-Attribut eines binding-WSDL-Elements (normalerweise) oder eines operation-Elements angegeben.

  • Use: Für die Webdienstmethodenparameter oder Rückgabewerte, die auf der nächsttieferen Ebene angezeigt werden. Diese Option wird als use-Attribut eines body-Elements angegeben.

Nähere Informationen zur SOAP-Spezifikation finden Sie auf der W3C-Website (http://www.w3.org/TR/SOAP). Die W3C-Website enthält auch nähere Informationen zur WSDL-Spezifikation.

Zulässige Werte des Style-Attributs

WSDL lässt zwei Werte für das style-Attribut zu, das die gesamte SOAP-Textformatierung steuert:

  • RPC: Parameter oder Rückgabewerte werden automatisch in ein übergeordnetes Element eingefügt, das dem SOAP-Element Body direkt untergeordnet ist. Parameter und Rückgabewerte werden ohne Namespacequalifizierung angegeben. Dieses Schema wird in Abschnitt 7 der SOAP 1.1-Spezifikation beschrieben. Angabe style="rpc".

    Für eine SOAP-Anforderung wird das Element, das dem SOAP-Element Body direkt untergeordnet ist, nach einem WSDL-operation-Element benannt, das der Webdienstmethode zugeordnet ist. Jedes Element innerhalb dieses Elements stellt einen Parameter dar und ist nach dem jeweiligen Parameter benannt.

    Bei einer SOAP-Antwort entspricht der Name des Elements, das dem SOAP-Body-Element direkt untergeordnet ist, dem Vorgangsnamen mit dem Suffix Response. Stellt das untergeordnete Element einen Rückgabewert dar, setzt sich sein Name aus dem Vorgangsnamen und dem Suffix Return zusammen.

  • Document: Der gesamte Inhalt des SOAP-Body-Elements wird in WSDL in Form von XML-Elementen angegeben, die in einer XML-Schemadefinition definiert sind. Das XML-Schema wird im WSDL-Dokument angegeben oder in das WSDL-Dokument importiert. Das WSDL-Dokument geht nicht auf Parameter und Rückgabewerte ein, es befasst sich nur mit XML-Dokumenten. Der Entwickler oder wünschenswerterweise die Webdienstinfrastruktur kümmert sich darum, wie Parameter und Rückgabewerte in XML-Schemaelemente und -typen übersetzt werden. Angabe style="document".

    Die XML-Elemente der obersten Ebene werden als Nachrichtenteile angegeben, d. h. als part-Elemente, die in einem message-Element definiert sind und auf XSD-Elementdeklarationen verweisen. Normalerweise gibt es nur einen Teil, sodass das SOAP-Body-Element tatsächlich ein XML-Dokument enthält, obwohl WSDL an und für sich mehrere Elemente zulässt.

WSDL lässt zwei Werte für das use-Attribut zu, das die Formatierung von Parametern und Rückgabewerten steuert:

  • Encoded: Die Daten werden gemäß einem Schema formatiert, das in Abschnitt 5 der SOAP 1.1-Spezifikation beschrieben ist. In der SOAP-Codierung wird eine Teilmenge des XML-Schemas für Bindungen zwischen XML-Dokumenten und den Daten, die diese darstellen, verwendet. Zudem werden in der SOAP-Codierung Verweise für Elemente eingesetzt, die mehrmals in einem Dokument vorkommen. Angabe use="encoded".

  • Literal: Die Daten werden literal gemäß den im WSDL-Dokument angegebenen oder in dieses importierten XML-Schemadefinitionen formatiert. Angabe use="literal".

Siehe auch

Weitere Ressourcen

Anpassen der Formatierung von SOAP-Nachrichten

Footer image

Copyright © 2007 by Microsoft Corporation. Alle Rechte vorbehalten.