- From: Clemm, Geoff <gclemm@rational.com>
- Date: Tue, 12 Jun 2001 22:14:30 -0400
- To: "'DeltaV'" <ietf-dav-versioning@w3.org>
From: John Hall [mailto:johnhall@evergo.net] From: Lisa Dusseault [mailto:lisa@xythos.com] By "in-place editing" I mean that when the VCR is checked out, clients can do any number of PUT, PROPPATCH and other write operations, before finally checking in. In the meantime, this work-in-progress is available for other users to see if they have permission to read the resource. First question: Does anybody plan to implement DeltaV this way? I would strongly consider this an option, if a default GET and PROPFIND did not reference the work in progress but instead referenced the last-checked-in-version. That is how working resources work. The version-controlled resource URL is a copy of the state of some checked-in version (but not the last checked-in version, but rather the last version specified in an UPDATE). The working resource has its own URL, and that is what the client that "checked it out" works with. In-place editing is precisely for those cases where you want the all clients to see "work in progress" at that URL (to see a checked in version, you look at a URL in a different workspace). Imagine this: After checkout, GET/PROPFIND from users that don't have the resource checked out refer to the last checked in copy. PUT/PROPPATCH are illegal. The easiest way to determine "which user has it checked out" is to give the "checked out version" its own URL. And PUT/PROPPATCH are illegal (unless your server has auto-versioning turned on). For the user with the resource checked out, all operations apply to the checkout-in-place copy. That gives you most of the functionality of the working resource model, avoids things like UPDATE/MERGE interactions with working resources, and avoids placing extra demands on the client. And how does a client indicate which checked out state it wants to access? Why make a client remember two strings (the checked-out "token" and the URL), which it only needs one string (the working-resource URL). (We need to support parallel checkouts, so a "the checked-out one" header does not suffice). If we weren't trying to be compatible with a 3rd party DAV + revision but not DeltaV server, I'd propose that we do it this way. The 3rd party server puts the working resource in an independent namespace. So you actually don't propose we do it this other way? Then we agree (:-). Cheers, Geoff
Received on Tuesday, 12 June 2001 22:09:12 UTC