- From: Mark Nottingham <mnot@mnot.net>
- Date: Tue, 28 Aug 2001 12:46:25 -0700
- To: Paul Prescod <paulp@ActiveState.com>
- Cc: xml-dist-app@w3.org
As pointed out, HTTP software that refuses long URIs isn't 'broken'; it's allowed by the spec. More to the point, one of SOAP's requirements to be transport-independent. As such, AFAIK the only approach to this problem that preserves SOAP's architecture is to develop a means of encoding the envelope into the request-URI. I.e., it's not enough to say: http://www.example.com/service?arg1=foo&arg2=bar because one can't encode the entire range of SOAP envelopes possible; while this encoding happens to be good enough for RPC, it isn't possible to encode anything more complex. That's not to say that this approach can't be done; it's just that the request isn't SOAP. The way to do it would be to actually serialize the XML infoset as URI parameters and/or query arguments. I.e., http://www.example.com/service?*some XML Infoset serialisation* In this manner, none of the expressiveness of SOAP is lost. Unfortunately, doing so doesn't gain the benefits that are being looked for; because there are a number equivalent ways to encode a message infoset in section 5, I think we'll find that the same service in fact would have a number of different URIs, based on how client implementations encode the data. On Mon, Aug 27, 2001 at 08:28:47PM -0700, Paul Prescod wrote: > Hugo Haas wrote: > > > >... > > GET and POST, for HTML forms, address different problems. > > Agreed. > > >... > > The same way it makes sense to use POST sometimes instead of GET (and > > vice versa) for HTML forms, I think that the use of SOAP over HTTP > > POST sometimes makes sense, and sometimes does not. > > Agreed. > > > I will note that, depending on the kind of request which is done, it > > might not be achievable with GET even though it's idempotent, e.g. if > > the data structures are very complex. > > Arguable. What spec. restricts the complexity of data sent through GET? > I agree that there are various social expectations that URIs be simple > and short and also that there may be some software that is poorly set up > to handle long complex ones. But I'm not sure how much of this problem > is really real and how much is merely expectation. Maybe if SOAP pushed > the limits a little we could find out what HTTP software is really > broken and fix it. > > Anyhow, I would be satisfied if SOAP allows me to access simple web > services with simple parameters in a simple way (i.e. through a URI) and > if I need to deal with complex data I'll move on to more complex > solutions. Most idempotent web services will have short, simple > parameters just as most idempotent web sites do. > -- > Take a recipe. Leave a recipe. > Python Cookbook! http://www.ActiveState.com/pythoncookbook > -- Mark Nottingham http://www.mnot.net/
Received on Tuesday, 28 August 2001 15:46:27 UTC