Re: Proposed issue; Visibility of Web services

On Tue, May 27, 2003 at 05:45:20PM -0400, noah_mendelsohn@us.ibm.com wrote:
> Hi.  I really think I've stated my position, I feel that you've stated 
> yours, and we're all going in circles.

Familiar territory. 8-(

I'll respond below where I feel there remains a disconnect, and leave
it to your discretion to explore further ... or not.

> I think I did that.  What I did not do is write a box shipping application 
> that went through the motions of being prepared until the last minute to 
> deal with weather reports coming back from what I expected to be a request 
> for box tracking information.  I compiled in that application dependency 
> earlier than I suspect you would prefer.

I wouldn't say that, exactly.  REST doesn't preclude all compiled-in
dependancies; it says nothing about them, in fact.  I don't think I've
ever written a RESTful Web app that didn't have some.

But what REST does say is that the interface must be uniform.  This
means that compiled-in dependancies cannot include those on service-
specific interfaces.

> I mean trying to avoid compiling into the application anything more 
> specific about expected responses (or required bodies on POST requests) 
> than is implied by the media type itself.  I think your objection to WSDL 
> is that it requires one to commit early to a contract that is specific in 
> the sense of, to use the example above, tracking a box.

Only as it relates to the interface semantics.  It's perfectly RESTful
to expect BoxML, or whatever, from a URI.

I've said before that I see WSDL being very useful as an improved style
of form.  It could even be used to pre-specify some things that would
normally be discovered dynamically, such as media types or namespaces.
I have no objection to that at all.  My only major objection to WSDL, is
that it permits service-specific interfaces to be declared.

>  On the other hand, there comes a level at which the 
> filesystem really, really wants to know that it's writing to a seekable 
> disk arm, and not to a modem.

That's true, but two things;

1. It is possible to know you are dealing with some specific kind of
thing, and to interact with it, without using an interface specific
to that thing.

2. There's a cost/benefit tradeoff to service-specific interfaces.
One of the costs is visibility, a property that gets messages past
firewalls.

I hope that helps too.

MB
-- 
Mark Baker.   Ottawa, Ontario, CANADA.        http://www.markbaker.ca
Web architecture consulting, technical reports, evaluation & analysis
  Actively seeking contract work or employment

Received on Wednesday, 28 May 2003 02:20:46 UTC