- From: Marc Hadley <Marc.Hadley@Sun.COM>
- Date: Wed, 02 Nov 2005 09:47:46 -0500
- To: "Yalcinalp, Umit" <umit.yalcinalp@sap.com>
- Cc: public-ws-addressing@w3.org
- Message-id: <B383CC95-41BE-465B-8ABE-D22C795A8E5A@Sun.COM>
I definitely intended for the HTTP specifics to be included, it just didn't seem worth duplicating that part of your proposal in my proposal. That's what I meant by: > Most of the requirements and considerations detailed in the prior > proposal[2] still apply and for brevity I have not duplicated them > here. I guess I could have been a little more explicit about that. Marc. On Nov 1, 2005, at 9:24 PM, Yalcinalp, Umit wrote: > > I have one clarifying question since I need to read this again more > carefully. > > Our proposal specifically defined how the request-response would > use two > distinct HTTP connections, 202, etc. I think this is crucial to > specify > somewhere as this behaviour is probably the only concrete agreement > that > we got as a result of the Async TF and the interaction diagrams are > now > part of the test suite documents, etc. > > I did not see in your proposal where this behaviour would be specified > since your target is to specify the Async mechanism in a protocol > independent way. I definitely want to see the protocol specific > behaviour that we can standardize and agree on. In my opinion, leaving > it as part of the test suite but not putting it in the spec would be a > grave mistake. > > I am wondering whether you are suggesting that we should leave this > completely out of scope or integrate it part of the specification, > as we > have done it in our proposal, define the semantics for SOAP 1.x/HTTP > (covering the wire requirements for ii, and iii in particular). Since > your proposal did not specify the sections in the WSDL binding it > would > change, I could not assess this whether this is intentional or not or > whether you were intending to add SOAP 1.x/HTTP specific behaviour to > clarify how Async element would specificly work in the context of SOAP > 1.x/HTTP binding. > > As I have said many times before, I am not opposing extensibility, > but I > would have a very big problem with losing the definition for the wire > level requirement. > > Thanks. > > --umit > >> -----Original Message----- >> From: public-ws-addressing-request@w3.org >> [mailto:public-ws-addressing-request@w3.org] On Behalf Of Marc Hadley >> Sent: Tuesday, Nov 01, 2005 2:46 PM >> To: public-ws-addressing@w3.org >> Subject: Issue 59 alternate proposal >> >> In fulfillment of my action item from this weeks telcon, below is an >> alternate proposal for issue 59 that is not SOAP/HTTP specific and >> supports alternate bindings for async responses. Most of the >> requirements and considerations detailed in the prior proposal[2] >> still apply and for brevity I have not duplicated them here. >> >> Marc. >> >> [1] http://www.w3.org/2002/ws/addr/wd-issues/#i059 >> [2] http://www.w3.org/mid/ >> 2BA6015847F82645A9BB31C7F9D6416556A801@uspale20.pal.sap.corp >> >> ---8<--- >> >> The wsaw:UsingAddressing element is extended with a boolean >> attribute >> called "asyncOnly". When false, the endpoint can support either >> synchronous or asynchronous usage; when true the endpoint can only >> support asynchronous use. The default value of asyncOnly is false. >> Asynchronous capabilities are declared using a new wsaw:Async >> element >> as described below. >> >> A new element, wsaw:Async, is used to declare asynchronous >> capabilities. The element is empty with a single optional attribute >> called 'binding'. The binding attribute is of type xs:QName and is >> used to refer to a WSDL binding of the same interface/port type to a >> protocol. Omission of the attribute is equivalent to its inclusion >> with a value that refers to the same binding for which the >> asynchronous capabilities are being declared. >> >> Some examples (for ease of comparison, I only include examples that >> show UsingAddressing in a WSDL 2.0 binding but the intent is that >> this could also be used in an endpoint, operation or the WSDL 1.1 >> equivalents): >> >> (i) A sync-only binding >> >> <binding name="reservationSOAPBinding" >> interface="tns:reservationInterface" >> type="http://www.w3.org/2005/08/wsdl/soap12" >> wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP"> >> <wsaw:UsingAddressing wsdl:required="true" /> >> <operation ref="tns:opCheckAvailability" >> wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- >> response" /> >> <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" /> >> </binding> >> >> (ii) A sync/async binding where the operation responses can >> either be >> sent over the HTTP response or using a separate HTTP request >> >> <binding name="reservationSOAPBinding" >> interface="tns:reservationInterface" >> type="http://www.w3.org/2005/08/wsdl/soap12" >> wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP"> >> <wsaw:UsingAddressing wsdl:required="true"> >> <wsaw:Async/> >> </wsaw:UsingAddressing> >> <operation ref="tns:opCheckAvailability" >> wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- >> response" /> >> <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" /> >> </binding> >> >> (iii) An async-only binding where the operation response is always >> sent over a separate HTTP connection >> >> <binding name="reservationSOAPBinding" >> interface="tns:reservationInterface" >> type="http://www.w3.org/2005/08/wsdl/soap12" >> wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP"> >> <wsaw:UsingAddressing asyncOnly="true" wsdl:required="true"> >> <wsaw:Async/> >> </wsaw:UsingAddressing> >> <operation ref="tns:opCheckAvailability" >> wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- >> response" /> >> <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" /> >> </binding> >> >> (vi) An async-only SOAP/HTTP binding where the operation responses >> are sent in an email. I made up the http://www.w3.org/2003/05/soap/ >> bindings/SMTP protocol identifier as an example. >> >> <binding name="reservationSOAPBinding" >> interface="tns:reservationInterface" >> type="http://www.w3.org/2005/08/wsdl/soap12" >> wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP"> >> <wsaw:UsingAddressing asyncOnly="true" wsdl:required="true"> >> <wsaw:Async binding="tns:reservationSOAPSMTPBinding"/> >> </wsaw:UsingAddressing> >> <operation ref="tns:opCheckAvailability" >> wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- >> response" /> >> <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" /> >> </binding> >> >> <binding name="reservationSOAPSMTPBinding" >> interface="tns:reservationInterface" >> type="http://www.w3.org/2005/08/wsdl/soap12" >> wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/SMTP"> >> <wsaw:UsingAddressing wsdl:required="true"/> >> <operation ref="tns:opCheckAvailability" >> wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- >> response" /> >> <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" /> >> </binding> >> >> (v) A sync/async SOAP/HTTP binding where the operation responses can >> either be sent over the HTTP response, using a separate HTTP >> request, >> or in an email. I made up the >> http://www.w3.org/2003/05/soap/bindings/ >> SMTP protocol identifier as an example. >> >> <binding name="reservationSOAPBinding" >> interface="tns:reservationInterface" >> type="http://www.w3.org/2005/08/wsdl/soap12" >> wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP"> >> <wsaw:UsingAddressing wsdl:required="true"> >> <wsaw:Async/> >> <wsaw:Async binding="tns:reservationSOAPSMTPBinding"/> >> </wsaw:UsingAddressing> >> <operation ref="tns:opCheckAvailability" >> wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- >> response" /> >> <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" /> >> </binding> >> >> <binding name="reservationSOAPSMTPBinding" >> interface="tns:reservationInterface" >> type="http://www.w3.org/2005/08/wsdl/soap12" >> wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/SMTP"> >> <wsaw:UsingAddressing wsdl:required="true"/> >> <operation ref="tns:opCheckAvailability" >> wsoap:mep="http://www.w3.org/2003/05/soap/mep/request- >> response" /> >> <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" /> >> </binding> >> >> The above covers declaration of asynchronous support at the endpoint >> or binding granularity. It may also be desirable to support such >> declaration at the operation level though I'm not convinced that it >> makes sense to extend such granularity to the UsingAddressing >> element >> itself. To declare async support at the operation level I'd propose >> to allow the UsingAddressing element to be used at the WSDL >> operation >> level with the following semantics: >> >> (a) The value of the UsingAddressing/@asyncOnly specified at the >> binding or port level is overidden by the value of the >> UsingAddressing/@asyncOnly specified at the operation level >> (b) The child wsaw:Async elements of the UsingAddressing >> specified at >> the operation level are added to the child wsaw:Async >> elements of the >> UsingAddressing specified at the binding or port level. >> >> --- >> Marc Hadley <marc.hadley at sun.com> >> Business Alliances, CTO Office, Sun Microsystems. >> >> >> --- Marc Hadley <marc.hadley at sun.com> Business Alliances, CTO Office, Sun Microsystems.
Attachments
- application/pkcs7-signature attachment: smime.p7s
Received on Wednesday, 2 November 2005 14:47:10 UTC