- From: Greg Stein <gstein@lyra.org>
- Date: Wed, 15 Nov 2000 17:58:34 -0800
- To: Tim_Ellison@uk.ibm.com
- Cc: ietf-dav-versioning@w3.org
We need to be able to do a CHECKOUT on a collection version so that we can perform operations within the collection and on the collection itself. In Subversion, I've been planning to do a CHECKOUT on a parent collection version resource, which will return a location such as: http://host.name/repo/$svn/wrk/100.3 I can then do the following: PUT http://host.name/repo/$svn/wrk/100.3/newfile.html or even: COPY http://host.name/repo/somedir/foo.c Destination: http://host.name/repo/$svn/wrk/100.3/foo.c (or a MOVE if the source's parent is checked out) The working resource for the collection is also handy for deleting or for replacing the collection: DELETE http://host.name/repo/$svn/wrk/100.3 (note that this request also requires a checked-out parent) COPY http://host.name/repo/somedir/ Destination: http://host.name/repo/$svn/wrk/100.3 Overwrite: T DELETE of a member is a CHECKOUT of two items: the thing to DELETE and the parent collection. Without being able to do a CHECKOUT on a collection, there wouldn't be a way to do any of the above. Cheers, -g On Wed, Nov 15, 2000 at 11:37:56AM +0000, Tim_Ellison@uk.ibm.com wrote: > > > I propose that we disallow CHECKOUT of a collection version. > > Tim Ellison > Java Technology Centre, MP146 > IBM UK Laboratory, Hursley Park, Winchester, UK. > tel: +44 (0)1962 819872 internal: 249872 MOBx: 270452 > ---------------------- Forwarded by Tim Ellison/UK/IBM on 2000-11-15 11:35 > AM --------------------------- > > Tim Ellison > 2000-11-10 10:45 AM > > To: ietf-dav-versioning@w3.org > cc: > From: Tim Ellison/UK/IBM@IBMGB > Subject: Working collections > > > It seems a long time since this was last discussed -- well I've forgotten > the explanation so here goes: > > We agreed that URLs to versions exist outside the normal DAV namespace. > This is concept is variously reflected in the spec as virtually hosted URLs > (http://repo.webdav.org/his/23/ver/42) and 'stolen' parts of the root > collection namespace (e.g. http://www.webdav.org/repo/wr-157.html). > > Clients should not, therefore, expect to be able to construct new URLs > based on these server maintained URLs (i.e. removing / adding segments to > reach other resources). > > Q1: > We know that a versioned collection is a mapping from names to version > histories. So when you check out a versioned collection what can you do > with the resulting working collection? Are you constrained to creating > members that bind to histories only? Are you prevented from creating new > bindings at all? > > Q2: > Can you delete bindings from a working collection -- presumably yes since > if you can't change a working collection's members you can only use them to > change properties? (There is clearly a good case for checked out collection > version selectors). > > When the server sees a URL to a working collection, say of the form > http://repo.webdav.org/vr/9/wr/1/foo it can 'know' about the form of these > URLs to determine that everything up to 'foo' is the URL to the working > collection and 'foo' is the member of that collection, but there would be > (typically) no relationship between that URL and the URL of the history > resource that 'foo' is currently bound to; so it would not be possible to > slash-through 'foo' to reach other resources. > > Tim > > -- Greg Stein, http://www.lyra.org/
Received on Wednesday, 15 November 2000 20:58:41 UTC