- From: Julian F. Reschke <julian.reschke@greenbytes.de>
- Date: Fri, 7 Sep 2001 21:23:13 +0200
- To: <ietf-dav-versioning@w3.org>
Hi, I have updated my proposal. The main changes are: 1) I am now using the defined element names for the response bodies (checkin-response, checkout-response) [Geoff, thanks for adding this to draft 17] 2) FORBIDDEN is 403, not 409. Julian -- Feature request for CHECKIN/OUT extension In many cases, a versioning-aware client might want to display/include the URI of the version it's editing *while* it's edited. For instance, a versioning aware editor might include this as meta-information, or the author of a document might want to know the URI of the version *before* it's checked in. A well-known example is the W3C way of referring to document versions in recommendations: it contains HREFs to "the current version", to "this version" and to the "previous version". Something like this is currently impossible with deltaV, as the version URI is determined at the time of CHECKIN. Proposal: 1) Extend CHECKOUT to optionally return an "expected CHECKIN URI". 2) Extend CHECKIN to optionally use the "expected CHECKIN URI", failing the request if it's not possible to checkin the resource with the desired version URI (in which case a new "expected CHECKIN URI" is returned). I propose to pass the information in the request/response bodies of CHECKIN / CHECKOUT, such as: CHECKOUT method: >>REQUEST CHECKOUT /foo.html HTTP/1.1 Host: www.webdav.org Content-Type: text/xml; charset="utf-8" Content-Length: xxxx <D:checkout xmlns:D="DAV:"> <D:compute-expected-version-URI /> </D:checkout> >>RESPONSE HTTP/1.1 200 OK Cache-Control: no-cache Content-Type: text/xml; charset="utf-8" Content-Length: xxxx <D:checkout-response xmlns:D="DAV:"> <D:expected-version-URI>http://repo.webdav.org/his/23/ver/32</D:expected-ver sion-URI> </D:checkout-response> (Note: if the expected-version-URI cannot be computed, the server will simply not include it in it's answer). CHECKIN method: >>REQUEST CHECKIN /foo.html HTTP/1.1 Host: www.webdav.org Content-Type: text/xml; charset="utf-8" Content-Length: xxxx <D:checkin xmlns:D="DAV:"> <D:expected-version-URI>http://repo.webdav.org/his/23/ver/32</D:expected-ver sion-URI> </D:checkin> >>RESPONSE HTTP/1.1 201 Created Location: http://repo.webdav.org/his/23/ver/32 Cache-Control: no-cache or >>RESPONSE HTTP/1.1 403 Forbidden Cache-Control: no-cache Content-Type: text/xml; charset="utf-8" Content-Length: xxxx <D:checkin-response xmlns:D="DAV:"> <D:cannot-assign-expected-version-URI /> <D:expected-version-URI>http://repo.webdav.org/his/23/ver/33</D:expected-ver sion-URI> </D:checkin-response>
Received on Friday, 7 September 2001 15:23:55 UTC