- From: John Barone <jbarone@xythos.com>
- Date: Thu, 16 Mar 2006 12:55:10 -0800
- To: "'Manfred Baedke'" <manfred.baedke@greenbytes.de>
- Cc: <w3c-dist-auth@w3.org>
- Message-ID: <NSNOVPS00411b63Kbc900000e8a@NSNOVPS00411.nacio.xythos.com>
"Section 6.1 defines what a lock is. This is done by giving a set of "axioms", propositions using the term 'lock' which are true by convention. It should be possible to read the spec without the slightest idea what a lock could be. Let us assume that we have no such idea and read section 6.1. Then we have an understanding of what a lock is, but we would be very surprised if someone spoke of 'moving locks'. We would say something like: "Hey, wait, how can you move it if it does not even have a location?". If one thinks that it makes sense to move a lock, he simply has an understanding of the term 'lock' that does not match the definitions in this specification. If the specification never mentioned 'moving locks', why would any reader think that this term even had a meaning?" [John] I still don't agree. The basic question is if you copy a resource has a lock, does the target resource have a lock (albeit with a different lock-root). The answer is "no" it doesn't, if the target is not under a locked parent; that should be clearly stated somewhere. Similarly a locked resource that is MOVED, does it still have a lock? The answer here is also "no" it doesn't, if the target is not under a locked parent; this should also be clearly stated somewhere. Why not clear up ambiguity with definitive statements? Argue as you might, clearly there are those who believe there is ambiguity, otherwise this language wouldn't have been added. BTW, this language, or something similar was in the previous 2518 spec., and I don't see a compelling reason to remove it now. -John _____ From: Manfred Baedke [mailto:manfred.baedke@greenbytes.de] Sent: Thursday, March 16, 2006 10:25 AM To: John Barone Cc: w3c-dist-auth@w3.org Subject: Re: rfc2518bis-14: locking terminology John Barone wrote: "My main point here is the use of undefined terminology, though I indeed think that section 6.1 will be perfectly clear on the distinction between a depth 0 and a depth infinity lock as soon as 6.1.4 uses the term 'member' instead of 'internal member'. 7.4 contains nothing new, and a list of special cases can never be as concise as the general principle itself. " [John] OK, I can see that; however section 6.1.4 does not make the distinction between depth 0 and depth infinity locks. This section needs to be cleaned up to make that distinction, and spell out the exact bahavior in both cases. Maybe combining what's in section 7. bullet 2 and what's currently in section 6.1.4. Agreed that section 6.1 should define lock depth. [John] If the root of a lock is a collection, it's important to make clear that that collection is locked, along with all it's decendents. I think this statement should stay (but perhaps reworded to be more precise). My point here is that URIs cannot be locked. Resources can be locked, but the root of the lock is not a resource. [John] If the target URI for a depth infinity lock request is a collection, the collection IS most certainly locked. But to your point, if the language in section 6.1.x is cleaned up, this entire section can be removed. The target URI of a lock request will never be a collection, but the URI of a collection. An URI is an URI and a resource is a resource. As defined in 6.1, resources can be locked. URIs can't. Move/Copy behavior... Well, copying locks is as undefined as lock duplication How could one think that a lock could be moved if it is not defined what this could mean? ... by the same token, what does it mean to duplicate or move live or dead properties; those operations aren't defined either for properties, and yet you MUST/SHOULD do it. I don't see the harm here, in fact I think it's a very good idea to explicitly state this in the spec. to remove ambiguity. I think the copy/move MUST NOT statements should be kept either in a 7.x section, or wrapped into a revised 6.1.4 section. Well, if the spec does not define what it means to move a property, then it should either correct this or stop to use this terminology. Section 6.1 defines what a lock is. This is done by giving a set of "axioms", propositions using the term 'lock' which are true by convention. It should be possible to read the spec without the slightest idea what a lock could be. Let us assume that we have no such idea and read section 6.1. Then we have an understanding of what a lock is, but we would be very surprised if someone spoke of 'moving locks'. We would say something like: "Hey, wait, how can you move it if it does not even have a location?". If one thinks that it makes sense to move a lock, he simply has an understanding of the term 'lock' that does not match the definitions in this specification. If the specification never mentioned 'moving locks', why would any reader think that this term even had a meaning? Regards, Manfred
Received on Thursday, 16 March 2006 20:55:20 UTC