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
Copyright © 2007 by Microsoft Corporation. Alle Rechte vorbehalten.