Re: Approaches to SOAP MEPs and WSD/WSA requirements

Yves Lafon <[email protected]>
Newsgroups gmane.text.xml.distributed
Message-ID <[email protected]>
On Tue, 25 Oct 2005, Anish Karmarkar wrote:

> 2) No-MEP: Don't define an abstract SOAP MEP(s) which can be bound to
> various transports. Abstract SOAP MEPs are not useful because:
>  1. One still has to define how that SOAP MEP is used with a particular
>     transport and
Yes, but at least you _can_ link a HTTP request/reply to a SOAP 
request/reply "natively". If you remove the notion of SOAP level MEP, then 
you pretty much end in tunneling

>  2. WS-Addressing provides a way to specify whether SOAP messages are
>     sent on the transport-level back-channel or not, potentially
>     modifying the abstract SOAP MEP.

Well, no. If WS-Addressing is in use, then the description should indicate 
that multiple SOAP level MEP might be used.

> Instead, we specify how SOAP messages are carried by specific
> transport-level messages. In the case of HTTP, we specify :
> 1) how HTTP requests can be sent with a SOAP env in its entity body,
> HTTP-methods allowed/required/disallowed, and constraints on HTTP
> header/values, if any.
> 2) how HTTP requests can be sent without a SOAP env in its entity body,
> HTTP-methods allowed/required/disallowed and constraints on HTTP
> header/values, if any.
> 3) how HTTP response can be sent with a SOAP env in its entity body and
> constraints on HTTP header/values, if any.
> 4) how HTTP response can be sent without a SOAP env in its entity body
> and constraints on HTTP header/values, if any.
> 
> The user of the HTTP transport binding decides which method to use,
> whether to have the SOAP env in the entity body or not. To that end, the
> WSDL description and/or WS-A headers may help constraint the HTTP-method,
> whether there is a SOAP env in the response etc. If needed, we may choose
> to define HTTP specific properties that can be used by WSDL descriptions
> to specify constraints such as: entity body of a HTTP response must/must
> not be empty.
> 
> Example 1:
> A WSDL processor processes a WSDL containing a req-res WSDL MEP along
> with a SOAP/HTTP binding and decides to send a SOAP request over HTTP
> request, it includes the wsa:ReplyTo with a value of "anonymous". The
> service then responds with a HTTP response containing the SOAP response.

I don't see the point of using wsa in that case.

> Example 2:
> A WSDL processor processes a WSDL containing a req-res WSDL MEP along
> with a SOAP/HTTP binding and decides to send a SOAP request over HTTP
> request, it includes the wsa:ReplyTo with a value of
> non-"anonymous"-soap-http endpoint. The service then responds with a HTTP
> response containing an empty entity-body. The service also sends a HTTP
> request containing a SOAP response to the endpoint pointed to by
> wsa:ReplyTo. The endpoint pointed to by wsa:ReplyTo responds with a HTTP
> response containing an empty entity body.

In that cas you are defining an exchange involving 2 MEPs between 3 SOAP 
nodes, even if you are able to model this as a request/response in WSDL. 
Those are at different level and should not be mixed. Also having the 
message in an HTTP response or in a HTTP request has not the same 
semantic. If you say that they are equivalent because you just want to 
send the message, you are doing tunneling.

-- 
Yves Lafon - W3C
"Baroula que barouleras, au tiéu toujou t'entourneras."
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.