Binding

Bei einem Binding handelt es sich um die Festlegung eines konkreten Protokolls und Datenformats für einen Port Type.

Ein Binding hat einen eindeutigen Namen. Es referenziert einen Port Type, die enthaltenen Operations und Messages. Extensibility Elemente werden benutzt, um das konkrete Format von Input-, Output- und Fault-Elementen festzulegen. Außerdem gibt es Informationen für das Binding an sich und / oder jede Operation.

Ein Binding legt genau ein Protokoll fest. Bindings legen keine Adressen fest, das geschieht mit der Hilfe von Ports (siehe Port).

Zur Definition von Bindings wird das Element binding innerhalb des Elements definitions verwendet.

<binding name="nmtoken" type="qname">*
<soap:binding style="rpc|document" transport="uri" />
<wsaw:UsingAddressing wsdl:required="true" />?
<operation name="nmtoken">*
<soap:operation soapAction="uri"? style="rpc|document"? />?
<input name="nmtoken"? >?
<soap:body parts="nmtokens"? use="literal|encoded" encodingStyle="uri-list"? namespace="uri"?>
<soap:header message="qname" part="nmtoken" use="literal|encoded" encodingStyle="uri-list"? namespace="uri"?>*
<soap:headerfault message="qname" part="nmtoken" use="literal|encoded" encodingStyle="uri-list"? namespace="uri"?/>*
<soap:header>
</input>
<output name="nmtoken"? >?
<soap:body parts="nmtokens"? use="literal|encoded" encodingStyle="uri-list"? namespace="uri"?>
<soap:header message="qname" part="nmtoken" use="literal|encoded" encodingStyle="uri-list"? namespace="uri"?>*
<soap:headerfault message="qname" part="nmtoken" use="literal|encoded" encodingStyle="uri-list"? namespace="uri"?/>*
<soap:header>
</output>
<fault name="nmtoken">*
<soap:fault name="nmtoken" use="literal|encoded" encodingStyle="uri-list"? namespace="uri"?>
</fault>
</operation>
</binding>