Date: Fri, 10 Dec 1999 00:25:34 -0500 Message-Id: <9912100525.AA02998@tantalum> From: "Geoffrey M. Clemm" <geoffrey.clemm@rational.com> To: ietf-dav-versioning@w3.org In-Reply-To: <85256841.00680411.00@d54mta03.raleigh.ibm.com> Subject: Re: Activity, Workspace, Configuration From: jamsden@us.ibm.com Budi Surjanto <surjanto@informatik.uni-kl.de> on 12/08/99 10:45:35 AM As explained, a collection and a configuration contains a set of versioned resources resp. revisions of versioned resources. What is exactly the semantic of the containment relationship? Is it the aggregation? <jra> Collections contain member URL segments, not resources or versioned resources. These segments represent bindings to some resource. Configurations contain members that are bindings to a particular revision of a versioned resource. So the containment relationship is to the bindings, not the resources themselves which could be stored somewhere else, or in some other collection. </jra> This is made explicit in BIND protocol being developed by the advanced collection team. As Jim says, the state of a collection is a set of bindings, where a binding is the association of a URL segment with a resource. The resource is owned by the server, and its lifetime is not determined by the collection(s) that contain it (although a server is allowed to garbage collect a resource that has no bindings to it). Is it correct that one can build collection resp. configuration hierarchically? Yes for collections, and as Jim points out, no for configurations. Baselines can be built hierarchically though. For example: A, B, C are versioned resources and {a1}, {b1}, and {c1} the corresponding revisions of each of them. CL1 and CL2 are collections whereas CL1 contains {A, CL2} and CL2 contains {B, C}. CO1 and CO2 are configurations whereas CO1 contains {a1, CO2} and CO2 contains {b1, c1}. In the latter case, if a revision c2 of c1 was made, does it effect some kind of "revision propagation" of the other revisions contained in the configuration hierarchy (CO1 and CO2), since they are related to each other in a some way? <jra> Configurations can't contain configurations. This is to keep revision selection simpler. </jra> Even if configurations were allowed to be hierarchical, no such revision propagation would be supported. This kind of propagation of change is provided through the revision-selection-rule mechanism of the workspace. In particular, the revision-selection-rule gives the client the appropriate semantics for defining what kind of propagation it wants to take place. Cheers, Geoff