Re: Role of operations?

On Jun 16, 2005, at 3:37 AM, Mark Baker wrote:

>
>
> Stefan,
>
> On Wed, Jun 15, 2005 at 11:04:06PM +0200, Stefan Tilkov wrote:
>
>> But if you want to generate code from the service description - and
>> I'm not arguing for it, just pointing out the options - there will be
>> some abstract description of what interactions (to avoid the term
>> 'operations') are possible, and what data is being exchanged.
>>
>
> I don't think you can so easily sweep the operation under the rug.
>
> By choosing to publish a RESTful service (ah, it's nice to be able to
> treat that as axiomatic for once! 8-), the service provider has
> explicitly opted to avoid application specific operations, and use  
> uniform
> ones instead.  I don't think it's in in the interest of either the
> service provider, nor would-be consumers, to introduce other  
> operations
> in a description language, since at best IMO, they'd just serve to
> confuse.
>

I'm not sure that generating an implementation that hides the generic  
interface behind an application-specific API violates REST principles  
- it's not visible at the boundaries between consumers and providers.

If the point of the description language is not to describe how  
multiple interactions relate to each other, I wonder what the point  
might be instead. One can argue that we don't need a description  
language for RESTful services - after all, people got by without one  
just fine until now. But if one exists, I still maintain that one of  
the usage scenarios will be code generation.

In any case, the line between code generation and runtime  
interpretation starts to blur, especially once you start generating  
something else than code.

Stefan

> For that reason, I don't think the Py* libraries constitute a good
> example of what it is we're trying to accomplish/enable here.
>
> Cheers,
>
> Mark.
> -- 
> Mark Baker.  Ottawa, Ontario, CANADA.          http://www.markbaker.ca
> Coactus; Web-inspired integration strategies   http://www.coactus.com
>
>

Received on Thursday, 16 June 2005 06:18:56 UTC