W3C home > Mailing lists > Public > ietf-dav-versioning@w3.org > July to September 2001

Clarification on what exactly is captured in the Baseline Collect ion...

From: Peter Raymond <Peter.Raymond@merant.com>
Date: Thu, 27 Sep 2001 10:50:51 +0100
Message-ID: <20CF1CE11441D411919C0008C7C5A13B02969C18@stalmail.eu.merant.com>
To: ietf-dav-versioning@w3.org
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 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 13:57:42 GMT