Mit diesem Baumstrukturformat können Sie auf komfortable Weise auf die wichtigen Teile der SOAP-Nachricht zugreifen.
Nachfolgend ein Diagramm der SOAP-Domänenbaumstruktur:
Der Inhalt der Body-Unterverzeichnisstruktur hängt vom WSDL-Stil ab.
Es ist zu beachten, dass Anhänge einer MTOM-Nachricht als Teil des SOAP-Inhalts integriert als Base-64-Zeichen dargestellt werden.
Eine Ausgabenachricht verwendet die hier definierten Namespace-Präfixe, um Elemente in den entsprechenden Namespaces zu qualifizieren.
Wenn SOAP.Context ursprünglich in einem Empfangsknoten erstellt wurde, enthält es möglicherweise bereits alle benötigten Namespace-Präfix-Definitionen.
Wenn SOAP.Context nicht vorhanden ist oder die abgehende Nachricht zusätzliche Namespaces verwendet, generiert der SOAP-Parser alle erforderlichen Namespace-Präfixe automatisch.
Alternativ können Sie ein eigenes Namespace-Präfix angeben. Der Name eines Namespace-Präfixes hat in der Regel keine Auswirkung auf die Bedeutung einer Nachricht, wobei eine wichtige Ausnahme gilt. Befindet sich im Nachrichteninhalt ein qualifizierter Name, muss die Nachricht eine entsprechende Namespace-Präfix-Definition enthalten.
-- Erstellung einer SOAP-Fehlernachricht. Ebenso wie die Definition des
-- richtigen Namespace für das Fault-Element, muss es auch eine
-- Bindung für das im faultcode-Element verwendete Namespace-Präfix
-- geben (wird unter SOAP.Context.Namespace konfiguriert)
-- Senden einer neuen benutzerdefinierten SOAP 1.2-Fehlernachricht
DECLARE soapenv NAMESPACE 'http://www.w3.org/2003/05/soap-envelope';
DECLARE xml NAMESPACE 'http://www.w3.org/XML/1998/namespace';
DECLARE myNS NAMESPACE 'http://myNS';
SET OutputRoot.SOAP.Context.Namespace.(SOAP.NamespaceDecl)xmlns:soapenv = soapenv;
SET OutputRoot.SOAP.Context.Namespace.(SOAP.NamespaceDecl)xmlns:myNS = myNS;
SET OutputRoot.SOAP.Body.soapenv:Fault.soapenv:Code.soapenv:Value = 'soapenv:Receiver';
SET OutputRoot.SOAP.Body.soapenv:Fault.soapenv:Code.soapenv:Subcode.soapenv:Value = 'my:subcode value';
SET OutputRoot.SOAP.Body.soapenv:Fault.soapenv:Reason.soapenv:Text = 'my Reason string';
SET OutputRoot.SOAP.Body.soapenv:Fault.soapenv:Reason.soapenv:Text.(SOAP.Attribute)xml:lang = 'en';
SET OutputRoot.SOAP.Body.soapenv:Fault.soapenv:Node = 'my Node string';
SET OutputRoot.SOAP.Body.soapenv:Fault.soapenv:Role = 'my Role string';
SET OutputRoot.SOAP.Body.soapenv:Fault.soapenv:Detail.my:Text = 'my detail string';
-- Senden einer neuen benutzerdefinierten SOAP 1.1-Fehlernachricht
DECLARE soapenv NAMESPACE 'http://schemas.xmlsoap.org/soap/envelope/';
SET OutputRoot.SOAP.Context.Namespace.(SOAP.NamespaceDecl)xmlns:soapenv = soapenv;
SET OutputRoot.SOAP.Body.soapenv:Fault.faultcode = 'soapenv:Receiver';
SET OutputRoot.SOAP.Body.soapenv:Fault.faultstring = 'my fault string';
SET OutputRoot.SOAP.Body.soapenv:Fault.faultactor = 'my fault actor';
SET OutputRoot.SOAP.Body.soapenv:Fault.detail.Text = 'my detail string';
Verwenden Sie zum Erstellen einer grafischen Datenzuordnung für die SOAP-Domäne die von IBM® gelieferte Nachricht für die SOAP-Domänenbaumstruktur als Eingabe für die Zuordnung, als Ausgabe oder für beides. Weitere Informationen zu von IBM gelieferten Nachrichten finden Sie im Abschnitt Nachrichtengruppen: IBM eigene Nachrichten, die importiert werden können. Definieren Sie den spezifischen Inhalt des SOAP-Hauptteils mithilfe der Funktion 'Cast' oder der Funktion 'Submap' der grafischen Datenzuordnung. Im Abschnitt Transformationstypen im Editor für grafische Datenzuordnungen finden Sie weitere Informationen zu Zuordnungsfunktionen.