On Jun 6, 2004, at 1:09 PM, John Panzer wrote:
Ken MacLeod wrote:
...+1. I think of these as two separate things that happen to go well together, like chocolate and peanut butter:
* Although WebDAV does not use POST, there does not seem to be any conflict in Atom specifying POST for creating server-located resources and at some point using WebDAV actions on the resources after they've been created.
(a) Simple creation of resources through binary POST in which the server has complete control of the final URI (option #6);
(b) WebDAV -- or something upwardly compatible with WebDAV -- which allows for client-controlled URIs, moving, deleting, locking, etc.
Microsoft's Exchange 2000 WebDAV engine combines these two in pretty much the way you describe. When the user is creating a new item in a WebDAV-compliant collection and doesn't care what the URL is, as long as it's unique, it uses POST with a request-URI of the target parent collection. The server generates a unique URI inside the WebDAV collection. If the client wishes to choose the URL for a new resource, or if the client wishes to overwrite an existing resource, the client uses PUT instead.
This POST usage isn't canonicalized as part of the standard capabilities of a standard WebDAV collection, but it's a simple extension and one could easily imagine standardizing it.