- From: Martin Gudgin <mgudgin@microsoft.com>
- Date: Thu, 12 May 2005 15:40:43 -0700
- To: "Jonathan Marsh" <jmarsh@microsoft.com>, "Yalcinalp, Umit" <umit.yalcinalp@sap.com>, "Arthur Ryman" <ryman@ca.ibm.com>, "Sanjiva Weerawarana" <sanjiva@opensource.lk>
- Cc: <www-ws-desc@w3.org>
You might also have a input message that has SOAP headers but an empty SOAP body. Gudge > -----Original Message----- > From: www-ws-desc-request@w3.org > [mailto:www-ws-desc-request@w3.org] On Behalf Of Jonathan Marsh > Sent: 12 May 2005 15:02 > To: Yalcinalp, Umit; Arthur Ryman; Sanjiva Weerawarana > Cc: www-ws-desc@w3.org > Subject: RE: What is the purpose of #none? > > > Yes, this example looks a bit strange when only the SOAP over HTTP > binding is considered, as one could instead model this as a > out-only and > bind to the SOAP Response MEP. There are a couple of reasons > you might > not want to do that: first, you might not be using HTTP, or you might > not trust that the SOAP Response MEP is supported on the > other end; for > instance, you're using SOAP 1.1 or you are worried about the > deployment > of the SOAP Response MEP among your client base. > > It doesn't seem to me that the primer is promoting something that goes > against our current idea of best practice. > > > -----Original Message----- > > From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org] > > On Behalf Of Yalcinalp, Umit > > Sent: Thursday, May 12, 2005 10:21 AM > > To: Arthur Ryman; Sanjiva Weerawarana > > Cc: www-ws-desc@w3.org; www-ws-desc-request@w3.org > > Subject: RE: What is the purpose of #none? > > > > I just would like to get a feeling of the working groups > understanding > > of interaction of #none and the semantics of MEPs. > > > > The questions are very basic: > > > > Considering JUST the abstract level of WSDL: > > > > -- What is the difference between the following two cases? > > -- Why should a description choose one over the other? (or > What is the > > use case that needs to be differentiated for the > specification and for > > the primer? The definition of #none is very terse in the > spec and does > > not help someone using WSDL) > > > > > > (A) > > <interface name="fooInterface"> > > <operation name="bogusinout" > > pattern="http://www.w3.org/2005/05/wsdl/in-out"> > > <input messageLabel="In" element="#none" /> > > <output messageLabel="Out" element="tns:myoutput" /> > > </operation> > > </interface> > > > > (B) > > > > <interface name="foo2Interface"> > > <operation name="realout" > > pattern="http://www.w3.org/2005/05/wsdl/out-only"> > > <output messageLabel="Out" element="tns:myoutput" /> > > </operation> > > </interface> > > > > > > > > Further, can I have the following? (or variations of these you can > > just imagine...). It is perfectly legal of course. > > > > > > <interface name="MayBeNoOpInterface"> > > <operation name="whatever" > > pattern="http://www.w3.org/2005/05/wsdl/in-only"> > > <output messageLabel="Out" element="#none" /> > > </operation> > > </interface> > > > > Why would someone use this? > > > > I have answers to them, however I just want to hear from folks who > > wanted to put #none in the spec in the first place to refresh my > > memory about the motivation. > > > > --umit > > > > > > > > > > > > ________________________________ > > > > From: Arthur Ryman [mailto:ryman@ca.ibm.com] > > Sent: Thursday, May 12, 2005 9:39 AM > > To: Sanjiva Weerawarana > > Cc: Yalcinalp, Umit; www-ws-desc@w3.org; www-ws-desc- > > request@w3.org > > Subject: Re: What is the purpose of #none? > > > > > > > > Sanjiva, > > > > I thought #none was introduced to support the case where there > > was a SOAP body, but the body was empty, i.e. had no child elements. > > > > This is a different situation than an RPC style no-argument SOAP > > body which does contain a single empty child element. > > > > In both of these cases, the MEP is still input-output, NOT > > output-only. > > > > Is that correct? > > > > Arthur Ryman, > > Rational Desktop Tools Development > > > > phone: +1-905-413-3077, TL 969-3077 > > assistant: +1-905-413-2411, TL 969-2411 > > fax: +1-905-413-4920, TL 969-4920 > > mobile: +1-416-939-5063, text: 4169395063@fido.ca > > intranet: http://labweb.torolab.ibm.com/DRY6/ > > > > > > > > Sanjiva Weerawarana <sanjiva@opensource.lk> > > Sent by: www-ws-desc-request@w3.org > > > > 05/12/2005 11:13 AM > > > > > > To > > Arthur Ryman/Toronto/IBM@IBMCA > > cc > > "Yalcinalp, Umit" <umit.yalcinalp@sap.com>, www-ws- > > desc@w3.org, www-ws-desc-request@w3.org > > Subject > > Re: What is the purpose of #none? > > > > > > > > > > > > > > > > Hi Arthur, > > > > #none means there's *no input*, period. Its not that there are > > no > > arguments .. there will be no body at all. > > > > The usecase is some operation where just by connecting to the > > EPR its > > clear what must be sent back. > > > > Sanjiva. > > > > On Thu, 2005-05-12 at 08:20 -0400, Arthur Ryman wrote: > > > > > > Umit, > > > > > > I guess I didn't provide the motivation. > > > > > > Suppose you have an operation that takes no input arguments. > > It is > > > still a request-response, but the request is empty, e.g. get > > the > > > current time of day. > > > > > > Arthur Ryman, > > > Rational Desktop Tools Development > > > > > > phone: +1-905-413-3077, TL 969-3077 > > > assistant: +1-905-413-2411, TL 969-2411 > > > fax: +1-905-413-4920, TL 969-4920 > > > mobile: +1-416-939-5063, text: 4169395063@fido.ca > > > intranet: http://labweb.torolab.ibm.com/DRY6/ > > > > > > > > > Arthur Ryman/Toronto/IBM@IBMCA > > > Sent by: > > > www-ws-desc-request@w3.org > > > > > > 05/11/2005 05:36 PM > > > > > > > > > To > > > "Yalcinalp, Umit" > > > <umit.yalcinalp@sap.com> > > > cc > > > www-ws-desc@w3.org, www-ws-desc-request@w3.org > > > Subject > > > Re: What is the > > > purpose of #none? > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Umit, > > > > > > #none means the message is empty. > > > > > > Arthur Ryman, > > > Rational Desktop Tools Development > > > > > > phone: +1-905-413-3077, TL 969-3077 > > > assistant: +1-905-413-2411, TL 969-2411 > > > fax: +1-905-413-4920, TL 969-4920 > > > mobile: +1-416-939-5063, text: 4169395063@fido.ca > > > intranet: http://labweb.torolab.ibm.com/DRY6/ > > > > > > "Yalcinalp, Umit" > > > <umit.yalcinalp@sap.com> > > > Sent by: > > > www-ws-desc-request@w3.org > > > > > > 05/10/2005 09:45 PM > > > > > > > > > > > > To > > > <www-ws-desc@w3.org> > > > cc > > > > > > Subject > > > What is the > > > purpose of #none? > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > While I was reading the primer on service references, I came > > across an > > > interesting example in our primer. Apart from the fact that > > primer > > > talks about both Service and Endpoint references in Section > > 7.9 and > > > the reader is baffled about the differences here (endpoint > > references > > > are not introduced anywhere before) which is not the purpose > > of this > > > email, example 7.14 is particularly interesting: > > > > > > <interface name="reservationDetailsInterface"> > > > <operation name="retrieve" > > > pattern="http://www.w3.org/2005/05/wsdl/in-out"> > > > <input messageLabel="In" element="#none" /> > > > <output messageLabel="Out" > > > element="wdetails:reservationDetails" /> > > > </operation> > > > ... > > > Check out the binding: > > > <binding name="reservationDetailsSOAPBinding" > > > interface="tns:reservationDetailsInterface" > > > type="http://www.w3.org/2005/05/wsdl/soap" > > > > > wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP"> > > > > > > <operation ref="tns:retrieve" > > > wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- > > response" /> > > > <operation ref="tns:update" > > > wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- > > response" /> > > > </binding> > > > > > > The intent here appears to be that a "retrieve" action will > > cause > > > reservation details to be sent to the caller when an empty > > message is > > > received. According to our spec, this is perfectly legitimate, > > because > > > we allow empty messages, hence empty SOAP bodies to act as a > > trigger > > > for the response message. This pattern here seems like a poor > > man's > > > SOAP response MEP, which is modeled on top of SOAP request- > > response > > > MEP by passing the request message using WSDL request-response > > MEP. > > > Aren't we confused yet ? ;-) > > > > > > I am wondering why we wanted to allow #none. It seems the > > whole > > > purpose is to paypass a designed MEP to masquarade as another. > > Can > > > someone refresh my memory why we wanted to allow element > > content to be > > > empty again? (As a side comment, can anyone truly believe that > > this > > > kind of a WSDL definition will be usable by a service provider > > without > > > a mandatory SOAP Action header if many pseudo-output MEPs > > similar to > > > the one quoted above were to be assigned to the same endpoint? > > ) > > > > > > Do we really want to promote this usecase in the Primer? > > > > > > End-Of-Rant, > > > > > > --umit > > > > > > > > > > > > > >
Received on Thursday, 12 May 2005 22:40:51 UTC