Re: Naive question

From: Geoffrey M. Clemm (geoffrey.clemm@rational.com)
Date: Fri, Sep 15 2000

  • Next message: Henry K. Harbury: "RE: Versioning TeleConf ... 2pm-3pm EST"

    Date: Fri, 15 Sep 2000 09:35:02 -0400 (EDT)
    Message-Id: <200009151335.JAA09723@tantalum.atria.com>
    From: "Geoffrey M. Clemm" <geoffrey.clemm@rational.com>
    To: ietf-dav-versioning@w3.org
    Subject: Re: Naive question
    
    
       From: Tim_Ellison@uk.ibm.com
    
       <tim/> I also thought that the Target-Selector could be used to locally
       override the Version-Selector target.
    
    What DAV:getlastmodified do you expect to get back from PROPFIND when
    you use a Target-Selector header?  If you change the version selector
    to refer to an older version, the difference between these is
    especially critical.
    
    For a Target-Selector header, I believe the answer should be "the one
    for the version", because you want the modification date of the
    version you specified.
    
    Without a Target-Selector header, I believe the answer must be "the
    one for the target selector".  In particular, the modification date
    for the target selector should increase on every SET-TARGET operation
    on that target selector.
    
    So a Target-Selector header should be a redirector (and causes the
    request to be redirected to the specified version), but a version
    selector is *not* a redirector, but rather is a resource in its own
    right (which happens to have the same content and dead properties
    of some other resource, namely the resource identified by the DAV:target
    property of the version selector).
    
    Similar arguments apply for MOVE, DELETE, LOCK, etc.
    
       <tim>
       If I choose to implement some live
       properties to do some funky application specific thing, then I would like
       to make them visible through the version selector.
       </tim>
    
    You are certainly free to do so.  Just include in the definition of your
    live property that "the value of this property on a version selector is
    the same as the value of the target of the version selector".  My point
    here was just that the protocol should not define/constrain the behavior
    of live properties (other than the ones explicitly defined in the protocol),
    so that you *can* make them do some funky application specific thing.
    There are some live properties whose value on a version selector should
    mimic those on the current target, but there are others that should not,
    and a particular live property needs to be able to define which behavior
    it will display.
    
    Cheers,
    Geoff