- From: Julian F. Reschke <julian.reschke@greenbytes.de>
- Date: Mon, 6 Aug 2001 16:50:27 +0200
- To: <ietf-dav-versioning@w3.org>
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). Some possible strategies: 1) Pass the information as proprietary live properties. 2) Pass the information as properties in the DAV: namespace, and define the behaviour in the deltaV spec. 3) (preferred) 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 xmlns:D="DAV:"> <D:expected-version-URI>http://repo.webdav.org/his/23/ver/32</D:expected-ver sion-URI> </D:checkout> (Note that we would need to define an (optional) response body for CHECKOUT). 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 409 Forbidden Cache-Control: no-cache Content-Type: text/xml; charset="utf-8" Content-Length: xxxx <D:error 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:error>
Received on Monday, 6 August 2001 10:50:39 UTC