- From: David Orchard <dorchard@bea.com>
- Date: Mon, 19 May 2003 11:42:54 +0200
- To: <noah_mendelsohn@us.ibm.com>, "'Ian B. Jacobs'" <ij@w3.org>
- Cc: <www-tag@w3.org>, <xml-dist-app@w3.org>
I'm uncomfortable with the suggested wording. There is a rough implied assertion that GET=non-rpc, POST=rpc. However, there is a distinction between RPC, as defined by the RPC encoding in SOAP, and RPC as defined by having methods inside a body. This mode is sometimes called "smuggling", "tunnelling". Thus the term RPC is unclear in this context. The important point is that from a determination of whether a service exposes a generic vs specific method interface, the use of SOAP RPC encoding is irrelevent. RPC requests can easily be sent using document encoding instead of RPC. SOAP does not define the crucial difference between RPC invokes - where the method is in the body - and RPC encoded invokes. The Web services architecture group has been having extensive discussions about how to charaterize and describe service that expose a generic interface - that is GET/PUT/DELETE in the case of HTTP - versus methods inside the body. Some of the terms bandied about include specific vs generic, open vs generic, api vs generic, rpc vs generic, direct vs mediated, etc. [1] I think that at this time, Ian's summary is actually more accurate of the current state of affairs. That is, GET is supported, without RPC vs non-rpc invoke styles being referenced. Cheers, Dave PS. I think it's very neat to be able to post a URI to the ws-arch document to support a point of discussion on web services arch. [1] http://www.w3.org/TR/2003/WD-ws-arch-20030514/#id2617205 > -----Original Message----- > From: xml-dist-app-request@w3.org > [mailto:xml-dist-app-request@w3.org]On > Behalf Of noah_mendelsohn@us.ibm.com > Sent: Friday, May 16, 2003 5:54 PM > To: Ian B. Jacobs > Cc: www-tag@w3.org; xml-dist-app@w3.org > Subject: Re: [whenToUseGet] PUT/POST & GET with SOAP > > > > Ian Jacobs writes: > > > > A couple of suggestions: > > > > > > * The "Ongoing work on GET in Web Services" section [2] > has a good > > > reference to the SOAP support for RPC with GET, but you > might also > want to > > > link [3], which describes SOAP's WebMethod feature. As > you may be > aware, > > > use of any flavor of RPC is optional in SOAP. Various > alternatives > are > > > possible, and a "document" style is commonly employed. > The WebMethod > > > feature, which is supported by the normative SOAP HTTP > binding[4], > allows > > > get to be used with any type of SOAP traffic, whether RPC > or not. I > > > expect and hope that many non-RPC users of SOAP will > avail themselves > of > > > the opportunity to name resources with URIs, and to use get when > > > appropriate. > > > > The reference is helpful, thank you. > > > > I am going to go out on a limb and ask whether you could draft a few > > sentences to be included. > > Sure, I'll try, with the proviso that this input has no > official standing > as far as the XMLP WG is concerned: > > <original> > > 6 Ongoing work on GET in Web Services > > Since the first publication of this finding, W3C's XML > Protocol Working > Group has added a GET method to SOAP 1.2 (cf. section 4.1.2 of > [SOAPADJUNCTS]. > > Section 3 of WSDL 1.2 Bindings [WSDL] provides a binding to HTTP GET, > which makes it possible to respect the principle of using GET > for safe > operations. However, to represent safety in a more > straightforward manner, > it should be a property of operations themselves, not just a > feature of > bindings. > </original> > > <suggested> > 6 Ongoing work on GET in Web Services > > Since the first publication of this finding, W3C's XML > Protocol Working > Group has enhanced SOAP Version 1.2 to support use of GET for safe > operations (cf. section 6.4 of [SOAPADJUNCTS].) Specific > conventions are > also now suggested for use of GET in conjunction with SOAP Remote > Procedure Calls (cf. section 4.1.2 of [SOAPADJUNCTS].) The SOAP HTTP > binding (cf. section 7 of [SOAPADJUNCTS]) has been modified > accordingly, > and thus supports appropriate use of GET and POST in for both > RPC-oriented > and non-RPC SOAP message exchanges. Indeed, non-normative > conventions are > suggested which allow traditional Web servers (I.e. those not > specifically > enabled for SOAP support) to interoperate with SOAP clients > using GET and > resource representations in media type application/soap+xml > (cf. section > 7.1.3 of [SOAPADJUNCTS]). > > Section 3 of WSDL 1.2 Bindings [WSDL] provides a binding to HTTP GET, > which makes it possible to respect the principle of using GET > for safe > operations. However, to represent safety in a more > straightforward manner, > it should be a property of operations themselves, not just a > feature of > bindings. > </suggested> > > You may want to clean up the wording, but I think the above should be > sufficient to point you in the right direction. If there's > anything else > I can do to help, please let me know. > > ------------------------------------------------------------------ > Noah Mendelsohn Voice: 1-617-693-4036 > IBM Corporation Fax: 1-617-693-8676 > One Rogers Street > Cambridge, MA 02142 > ------------------------------------------------------------------ > > > > > > > > "Ian B. Jacobs" <ij@w3.org> > 05/13/2003 12:15 AM > > > To: noah_mendelsohn@us.ibm.com > cc: www-tag@w3.org, xml-dist-app@w3.org > Subject: Re: [whenToUseGet] PUT/POST & GET with SOAP > > > On Mon, 2003-05-12 at 22:44, noah_mendelsohn@us.ibm.com wrote: > > I've taken a look at the latest draft of: "URIs, > Addressability, and > the > > use of HTTP GET and POST".[1] Overall, I think it's really > excellent. > > Thank you, Noah. It's really starting to represent a bunch of > input from > the community! > > > A couple of suggestions: > > > > * The "Ongoing work on GET in Web Services" section [2] has a good > > reference to the SOAP support for RPC with GET, but you > might also want > to > > link [3], which describes SOAP's WebMethod feature. As you may be > aware, > > use of any flavor of RPC is optional in SOAP. Various > alternatives are > > possible, and a "document" style is commonly employed. The > WebMethod > > feature, which is supported by the normative SOAP HTTP binding[4], > allows > > get to be used with any type of SOAP traffic, whether RPC > or not. I > > expect and hope that many non-RPC users of SOAP will avail > themselves of > > > the opportunity to name resources with URIs, and to use get when > > appropriate. > > The reference is helpful, thank you. > > I am going to go out on a limb and ask whether you could draft a few > sentences to be included. > > > * At several points the draft recommends using POST, but never PUT, > > implying that perhaps use of PUT is always inappropriate. As I > suggested > > in [4], there may be an opportunity to do some detailed and > valuable > > clarification on the PUT/POST distinction. At the very > least, it would > > seem appropriate to indicate that PUT or POST should be used as > > appropriate, perhaps just referring the reader back to RFC 2396 for > > details? > > Yes, that seems appropriate to avoid a misunderstanding; this finding > is limited in scope to discussion of GET and POST (and HEAD a little). > > I am following the discussion of PUT to monitor whether there is > an architectural issue that needs discusion in the mime type > finding, in a separate finding, or simply in the architecture > document. > I've not yet understood what the architectural issue is, or whether > RFC 2616 requires clarification for the scenario at the beginning > of the thread: what to do when no header sent by the client to the > server. > > > Thank you. BTW: these are my personal comments, not sent > on behalf of > > the protocols WG. Again, I think this is overall a terrific job! > > Thank you, > > _ Ian > > > > > Noah > > > > > > [1] http://www.w3.org/2001/tag/doc/whenToUseGet.html > > [2] http://www.w3.org/2001/tag/doc/whenToUseGet.html#webservices > > [3] http://www.w3.org/TR/2003/PR-soap12-part2-20030507/#WebMethodFeature > [4] http://lists.w3.org/Archives/Public/www-tag/2003May/0041.html > > ------------------------------------------------------------------ > Noah Mendelsohn Voice: 1-617-693-4036 > IBM Corporation Fax: 1-617-693-8676 > One Rogers Street > Cambridge, MA 02142 > ------------------------------------------------------------------ -- Ian Jacobs (ij@w3.org) http://www.w3.org/People/Jacobs Tel: +1 718 260-9447
Received on Monday, 19 May 2003 05:42:18 UTC