On Jan 2, 2007, at 7:15 AM, Chris Burdess wrote:
> Benjamin Carlyle wrote:
> > If I PUT several times to <http://example.com/mydocument>, is it
> > important to me that the <http://example.com/mydocument;1>,
> > <http://example.com/mydocument;2>, and <http://example.com/
> mydocument;3>
> > resources are created? My operation has succeeded. Whatever else the
> > server chooses to do with my submission is up to it. I don't see any
> > need to redirect a client to a specific new document version in
> order to
> > allow their PUT operation to proceed.
>
> It does seem to be a bit of a bone of contention. If we assume that
> /mydocument *does* change, i.e. that it is equivalent to
> /mydocument;current or maybe /mydocument?revision=current , and always
> reflects the state of the last change, then the PUT to /mydocument is
> only idempotent with respect to /mydocument and not to the entire
> namespace. This is a problem since RFC 2616 defines an idempotent
> method
> in terms of its side-effects not its direct effects, if you see what I
> mean.
*sigh*
Just ignore the definition of idempotent in RFC 2616. Anything
specified in HTTP that defines how the server shall implement the
semantics of an interface method is wrong, by definition. What
matters is the effect on the interface as expected by the client,
not what actually happens on the server to implement that effect.
....Roy