Полный синтаксис WSDL
Полный синтаксис WSDL 1.2, описанный в рабочем черновике W3C, приведён ниже:
Пример
<wsdl:definitions name="nmtoken"? targetNamespace="uri">
<import namespace="uri" location="uri"/> *
<wsdl:documentation .... /> ?
<wsdl:types> ?
<wsdl:documentation .... /> ?
<xsd:schema .... /> *
</wsdl:types>
<wsdl:message name="ncname"> *
<wsdl:documentation .... /> ?
<part name="ncname" element="qname"? type="qname"?/> *
</wsdl:message>
<wsdl:portType name="ncname"> *
<wsdl:documentation .... /> ?
<wsdl:operation name="ncname"> *
<wsdl:documentation .... /> ?
<wsdl:input сообщение="qname"> ?
<wsdl:documentation .... /> ?
</wsdl:input>
<wsdl:output сообщение="qname"> ?
<wsdl:documentation .... /> ?
</wsdl:output>
<wsdl:fault имя="ncname" сообщение="qname"> *
<wsdl:documentation .... /> ?
</wsdl:fault>
</wsdl:operation>
</wsdl:portType>
<wsdl:serviceType имя="ncname"> *
<wsdl:portType имя="qname"/> +
</wsdl:serviceType>
<wsdl:binding имя="ncname" тип="qname"> *
<wsdl:documentation .... /> ?
<-- привязка детали --> *
<wsdl:operation имя="ncname"> *
<wsdl:documentation .... /> ?
<-- привязка детали --> *
<wsdl:input> ?
<wsdl:documentation .... /> ?
<-- binding детали -->
</wsdl:input>
<wsdl:output> ?
<wsdl:documentation .... /> ?
<-- binding детали --> *
</wsdl:output>
<wsdl:fault name="ncname"> *
<wsdl:documentation .... /> ?
<-- binding детали --> *
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="ncname" serviceType="qname"> *
<wsdl:documentation .... /> ?
<wsdl:port name="ncname" binding="qname"> *
<wsdl:documentation .... /> ?
<-- address детали -->
</wsdl:port>
</wsdl:service>
</wsdl:definitions>