- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Wed, 02 Dec 2009 18:59:01 +0100
- To: Jan Algermissen <algermissen1971@mac.com>
- CC: Geoffrey M Clemm <geoffrey.clemm@us.ibm.com>, Atom-syntax Syntax' <atom-syntax@imc.org>, WebDAV <w3c-dist-auth@w3.org>, w3c-dist-auth-request@w3.org
Jan Algermissen wrote: > Julian, > > On Dec 1, 2009, at 3:07 PM, Julian Reschke wrote: > >> Jan Algermissen wrote: >>> ... >>> Hmm, I think so. The definition in a sense implies that the version >>> is created as a result of the modification. Which is IMHO *never* the >>> case for working copies. >>> Surely the draft must define 'working copy'. What is the nature of a >>> working copy? What is its true nature? I think: being *used* for >>> creating new versions. So, what about: >>>>>> "A "working copy" is a resource at a server-defined URL that can >>>>>> be *used* to create a new version of a versioned resource." >>> ... >> >> So, substituting "modified" by "used". I'm ok with that. > > Fine. > >> >>> and remove checkout/checkin completely. ('use' instead of 'modify' >>> sounds less like "The modification cause the versioning" (which it >>> never does by nature of a working copy (IMHO - s.a.)) >>> If the draft wanted to define it, then it woud be something like: >>> checkout: an operation on a resource that creates a working copy >>> checkin: an operation on a working copy that creates a new version of >>> its corresponding versioned resource. >> >> The issue here is that in some systems, checkout will not create a new >> resource, just flip a bit on the versioned resource. >> >> Also, (I think) there are systems where checking in does not create a >> new version, but flips a bit on the working resource *making* it a >> version (at the same URL). >> >> Thus, defining this would need to be defined in a more generic way. My >> attempt: >> >> "Checkout: an operation on a versioned resource that creates a working >> copy, or changes the versioned resource to be a working-copy as well >> ("in-place versioning"). >> >> Checkin: an operation on a working copy that creates a new version of >> its corresponding versioned resource. >> >> Note: the operations for putting a resource under version control, and >> for checking in and checking out depend on the protocol in use and are >> beyond the scope of this document; see [CMIS], [RFC3253] and [JSR-283] >> for details)." > > > Sounds good to me. > ... OK, I have added the text as proposed in my copy at <http://greenbytes.de/tech/webdav/draft-brown-versioning-link-relations-latest.html>, the terminology section now reads: Versioned Resource When a resource is put under version control, it becomes a "versioned resource". Many servers protect versioned resources from modifications by considering them "checked in", and by requiring a "checkout" operation before modification, and a "checkin" operation to get back to the "checked-in" state. Other servers allow modification, in which case the checkout/checkin operation may happen implicitly. Version History A "version history" resource is a resource that contains all the versions of a particular versioned resource. Predecessor, Successor When a versioned resource is checked out and then subsequently checked in, the version that was checked out becomes a "predecessor" of the version created by the checkin. A client can specify multiple predecessors for a new version if the new version is logically a merge of those predecessors. The inverse of the predecessor relation is the "successor" relation. Therefore, if X is a predecessor of Y, then Y is a successor of X. Working Copy A "working copy" is a resource at a server-defined URL that can be used to create a new version of a versioned resource. Checkin A "checkin" is an operation on a versioned resource that creates a working copy, or changes the versioned resource to be a working- copy as well ("in-place versioning"). Checkout A "checkout" is an operation on a working copy that creates a new version of its corresponding versioned resource. Note: the operations for putting a resource under version control, and for checking in and checking out depend on the protocol in use and are beyond the scope of this document; see [CMIS], [RFC3253] and [JSR-283] for examples. ...as always, feedback appreciated, Julian
Received on Wednesday, 2 December 2009 17:59:50 UTC