Re: Workspaces as versionable resources

From: Tim Ellison/OTT/OTI (Tim_Ellison@oti.com)
Date: Tue, May 30 2000

  • Next message: Tim Ellison/OTT/OTI: "Re: stable URL's"

    To: ietf-dav-versioning@w3.org
    Message-ID: <OF60CC6AF2.73BFAD7B-ON852568EF.00529CF0@ott.oti.com>
    From: "Tim Ellison/OTT/OTI" <Tim_Ellison@oti.com>
    Date: Tue, 30 May 2000 11:09:49 -0400
    Subject: Re: Workspaces as versionable resources
    
    From: "Tim Ellison/OTT/OTI" <Tim_Ellison@oti.com>
    
       Once we removed dynamic revision selection from workspaces,
       a workspace provided all the functionality of a configuration,
       so there was no reason to have two different resource types
       (i.e. you can create a configuration, but it's now called
       a "workspace").
    
       <tim>
       Adding a collection to a configuration was a shallow operation (i.e., 
    the 
       configuration could contain 'holes' in the namespace).
       </tim>
    
    <geoff>
    The same is true for workspaces.  You can put a revision of a collection
    in a workspace, but put no revision of it's members.  That workspace
    would return whatever 4xx we use for "no revision selected" if you
    were to ask for one of those members (just as a configuration would have).
    </geoff>
    
    <tim_2/> Agreed.
    
       The way you create a deep revision of a collection
       is to place that collection in a workspace, and then
       create a baseline for that workspace.  So a deep revision
       of a collection is called a "baseline".
    
       <tim>
       Here the implication is that creating a baseline is a deep operation 
       (i.e., all reachable resources from root).  In this definition, a 
    baseline 
       will offer a 'deep revision' of a collection, but does not provide for 
    a 
       configuration.
    
       I'm not sure why I would want configuration anyway, though I can image 
       others would.
       </tim>
    
    <geoff>
    See above.  A baseline is a "deep revision" only if the workspace selects
    revisions of all the members.  So a baseline is as deep or shallow as you
    want to make it (based on what revisions you have selected for that 
    workspace).
    </geoff>
    
    <tim_2>
    Agreed.  Therefore we have lost the operation that would do the deep walk 
    of a collection in a workspace and capture it in a snapshot.  In the new 
    world, we would need to have something like
        SET-TARGET /colln/
        Target-Selector: http://foo/source_workspace
        Workspace: http://foo/destination_workspace
        Depth: infinity
        ...
    followed by
        MKBASELINE /baseline
        Workspace: http://foo/destination_workspace
        ...
    <tim_2/>