On 31/07/07, Mark Baker <[EMAIL PROTECTED]> wrote:
>
>
>
>
>
>
> I think I can distill this conversation down to one point...
>
>  On 7/30/07, Steve Jones <[EMAIL PROTECTED]> wrote:
>  > >  > Makes sense but isn't supported?  A bit of a contradiction in terms
>  > >  > there surely?  Either it makes sense (and therefore should be
>  > >  > supported) or it doesn't make sense and therefore isn't supported.
>  > >
>  > >  It *is* supported, it just isn't implemented.
>  >
>  > That really doesn't make sense.  If I am a consumer I want to know
>  > what the resource can do.  Claiming that it "supports" something means
>  > that it "does" something.  Its a strange definition of support that
>  > says "X supports DELETE" and when someone calls DELETE it says that it
>  > can't complete that request.
>
>  That's only because "supports" is defined rather loosely, or at least
>  not in a way that makes it easy to distinguish which part of it is
>  interface and which is implementation.

Its not really interface v implementation, its technical interface
(GET, POST, DELETE, PUT) v Business Interface (what actually is going
to happen).  Consumers are only actually interested in the later and
the former is purely the mechanism for accessing it.


>   If a given resource can't be
>  deleted, then the server need only return a 405 response when
>  requested to delete it.  So it "makes sense" in the sense that the
>  meaning of a "DELETE http://example.org/some-trade"; message is uniform
>  and understood by all parties.

This really is contorting reality to fit the technical design.  To say
that the "Meaning" of delete is that it may or may not happen is a
trifle odd.  If you ask people what DELETE means then they will say
that it removes and destroys the resource.  The semantic of the
operation should be what its real-world effect is.

>  That doesn't mean every resource can
>  be deleted though, which is part of the reason why HTTP defines the
>  405 status code.

That is a runtime thing, which is not part of the interface from a
consumers perspective when they design their interaction.  This isn't
an effective, or acceptable, way of understanding what is valid for a
given system.  The effort of coding a system that can, for all
resources, cope with 405s is just wasted effort.  The consumers would
need this information published in advance, and would therefore not
call DELETE, therefore (for the consumers) the DELETE message does not
exist as a valid call.

>
>  Mark.


Steve

>  --
>  Mark Baker.  Ottawa, Ontario, CANADA.         http://www.markbaker.ca
>  Coactus; Web-inspired integration strategies  http://www.coactus.com
>                    

Reply via email to