WSDL operation types

An operation type defines the expected use of the WSDL input, output and fault elements in the WSDL definition.

Operation types fall into two categories:
  • request-style
  • solicit-style - this type is not widely used and is not WS-I compliant.
Input and output messages:
  • An input message is always the one being sent to the Web service
  • An output message is always the one returned from the Web service
Effect of styles on input/output:
  • In request-style, the input message is sent first; that is, the interaction is initiated by the client
  • In solicit-style, the output message is sent first; that is, the interaction is initiated by the Web service

The operation type does impose some requirements on the flow (for example, whether the broker is initiating the interaction or listening). It is your responsibility to construct an appropriate flow for the operation type.

The presence and ordering of input and output messages implicitly defines the operation type in WSDL 1.1. For example a WSDL operation defining a single wsdl:input followed by a single wsdl:output implies that the operation type is request-response. Zero or more (*) wsdl:fault definitions may also appear and the Web service would return either the expected output message or one of the defined faults messages.

Table 1. WSDL 1.1 Operation Types
Operation Type Description Analogous to... Order of Messages
request-response client calls Web service – response expected method call Input output fault*
solicit-response Web service solicits client – response expected callback output input fault*
one-way client calls Web service – no response expected procedure – no return input
notification Web service calls client – no response expected signal – no response output
Related concepts
Message flows overview