- From: Clemm, Geoff <gclemm@rational.com>
- Date: Thu, 28 Jun 2001 14:57:15 -0400
- To: ietf-dav-versioning@w3.org
From: John Hall [mailto:johnhall@evergo.net] What if the original root version has been deleted? To answer this, you would want to look at the DELETE semantics in the version-history feature. There you will find: (DAV:version-history-has-root): If the root version of a version history was deleted, the server MUST have updated the DAV:root-version of the version history to refer to another version that is an ancestor of all other remaining versions in that version history. A result of this postcondition is that every version history will have at least one version. I could return the earliest version, null, or somehow make the root version special and non-deleteable. Yes (with a caveat), no, and yes. You are allowed to return the earlierst version if it is the ancestor of all other remaining versions (which it would be, if you do not allow branching). You are not allowed to return null (because of the DAV:version-history-has-root postcondition). You can make the root version special and non-deletable. But the last would require custom errors for DELETE The spec defines this error code. It is DAV:version-history-has-root. As I am coming to understand how this process works, I'm anticipating the following reaction: 1) The spec is silent, do it any way you want. Not this time (:-). 2) We don't think versions should ever be deleted. The protocol has always supported explicit version deletion (it is only implicit version deletion as a side effect of deleting another resource which has met resistance). 3) If you allow the root to be deleted, returning the earliest version is probably the least bad option. Returning the new root (effectively updating the DAV:root-version) is a good option. Refusing to delete it is also a good option. 4) A special cannot-delete-root-version element is out of the question. Yes, but only because we already have defined DAV:version-history-has-root for this case. Cheers, Geoff
Received on Thursday, 28 June 2001 14:57:46 UTC