- From: Peter Raymond <Peter.Raymond@merant.com>
- Date: Thu, 27 Sep 2001 10:50:51 +0100
- To: ietf-dav-versioning@w3.org
- Message-ID: <20CF1CE11441D411919C0008C7C5A13B02969C18@stalmail.eu.merant.com>
Hi, I thought I understood what was captured in the Baseline Collection (the collection which captures the state of the Baseline-Controlled Collection), but reading the spec in more detail with others in MERANT some seeds of doubt have been sown. Below is a detailed explanation, but I guess the basic question is, given: build | + include ---- globals.h Where build and include are collections and globals.h is a VCR. Does the Baseline Collection contain either: 1) A binding to a collection where that collection contains a binding to a VCR for globals.h. or 2) One binding called "include/globals.h" which points to the VCR for globals.h. Is the Baseline Collection "deep" (containing collections and their members) or "shallow" does it only contain VCRs and have "multi-segment" bindings to indicate the presence of collections? Here is my analysis of the specification which shows this is ambiguous...... Section 12 says: "In order to allow efficient baseline implementation, the state of a baseline of a collection is limited to be a set of versions and their names relative to the collection" Is it a set of versions or a set of VCRs pointing to versions? I thought it was the latter. Section 12.3.1 describes the members of the Baseline Collection to be VCRs not versions. In the postcondition DAV:select-existing-baseline it also talks about VCRs being created for each "version in the baseline", this gives the impression that versions (not VCRs) are captured by the baseline collection. Are the bindings to the VCRs in the Baseline Collection "multi-segment", eg build/src/gui/main.c or does the Baseline Collection capture the collections that were members of the original collection? We talk about the baseline capturing the state of the version-controlled members of a collection, but does it actually also capture the state of the collections that are in the configuration rooted at the baseline-controlled collection? I think the bindings are "multi-segment" and the Baseline Collection is "flat", the only hint to this is in the DAV:select-existing-baseline postcondition where it says that "Any nested collections that are needed to provide the appropriate name for a version-controlled member will be created", this hints that the baseline collection did not contain collections, it contained "multi-segment" bindings and now collections need to be created. But the DAV:create-new-baseline postcondition says: "The DAV:baseline-collection of the new baseline MUST identify a collection whose members have the same relative name and DAV:checked-in version as the version-controlled members of the request collection" This hints that the bindings are relative names (same as in the original collection). So I would say the specification is ambiguous. If we can clarify this I will happily update the deltaV FAQ to include a good definition of the Baseline Collection. Regards, -- Peter Raymond - MERANT Principal Architect (PVCS) Tel: +44 (0)1727 813362 Fax: +44 (0)1727 869804 mailto:Peter.Raymond@merant.com WWW: http://www.merant.com
Received on Thursday, 27 September 2001 05:52:24 UTC