>>>>> "terrel" == Terrel Shumway <[EMAIL PROTECTED]> writes:

  terrel> On Thu, 2002-04-25 at 15:49, Ian Bicking wrote:
  >> To me that doesn't seem to make sense.  All the actions in WebDAV
  >> are represented as methods (GET, COPY, etc).  In a browser it's
  >> different -- the methods are really only GET and POST, which are
  >> overloaded with other semantics anyway.  So you have to represent
  >> the action differently, basically through variables.
  >>
  >> I think it makes most sense to only have the resource name in the
  >> URL, i.e., /articles/500.  Or maybe /article-500, since the
  >> "articles" collection is not really that meaningful, it only says
  >> what "500" is supposed to refer to.  I'm not sure which one is
  >> best.

  terrel> /articles/ does make sense as an index page that will
  terrel> display a list of available articles or allow you to search
  terrel> for one.

Sure, and more to the point, whether GET /articles returns anything at
all other than 404, GET /articles/500 is a perfectly sane use of a
HTTP method on a member-uri, /articles/500, of a DAV collection,
/articles. As far as I can tell, the DAV RFC says conformant
implementations must implement DAV collections; maybe /articles isn't
a very good example name of one, but it's pretty clear that it is.
 
  >> OTOH, both actions might be possible, with different semantics

  terrel> That is too spooky. I like /articles/500/?action=delete

Hmm, once more: GET is supposed to be idempotent *and* safe.

  terrel> I agree. GET should be idempotent unless there is a clear
  terrel> indication otherwise such as
  terrel> "/?action=this+will+change+your+document+forever" or
  terrel> "/?bill=charge+my+visa&amount=5+zillion+dollars"

Those are idempotent, afaict. :>

Idempotent doesn't mean 'side-effect free'; it means "repeated
applications have the same effect as the first one" (for some pretty
vaguely undefined time span, though).

In the *WebDAV* context, using anything but DELETE to delete a
resource (or, more precisely, "remove it from urispace") is prima
facie wrong, in my view.

  terrel> (CountVisits is OK, because the intent is clear from the
  terrel> content.)

It's still idempotent because each GET does the same thing, namely,
return the *current state* of the resource identified by the URI; that
that resource has variable parts is not pertinent to whether the
method that returns its current state is idempotent. At least, that's
how I see it. :>

Best,
Kendall Clark

_______________________________________________
Webware-discuss mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/webware-discuss

Reply via email to