- From: Eric Sedlar <eric.sedlar@oracle.com>
- Date: Fri, 11 May 2001 20:05:57 -0700
- To: <ietf-dav-versioning@w3.org>
I completely agree with a). Thanks for all of the details making it very clear why this is necessary for versioning. (a) We should extend <DAV:resourcetype> to provide all this classification information in a single property. As far as > (b) How about extending <DAV:propname/>? such as > <DAV:propname> > <DAV:checked-out/> > </DAV:propname> > then the client would get back just the name or a 404 to determine if it > exists. I don't see why that's that much different from what we do right now (get all of the names and see if the one you want is there) --Eric > -----Original Message----- > From: ietf-dav-versioning-request@w3.org > [mailto:ietf-dav-versioning-request@w3.org]On Behalf Of > Tim_Ellison@uk.ibm.com > Sent: Friday, May 11, 2001 3:00 PM > To: ietf-dav-versioning@w3.org > Subject: Resource class > > > > > [I did send this mail once, but it hasn't appeared, so here's attempt #2] > --------------------------- > The issue of determining a versioning resource's classification based on > the absence (or otherwise) of properties has been raised before on the > list. Recently however, (in other contexts) people have shifted in favour > of extensions to <DAV:resourcetype> to convey more 'type' information. > > In support of this shift of opinion, here's my renditioning of > how a client > currently determines the resource classification (if, for example, if a > client were given a URL in a property with no other information) in a > versioning world. > > To get an accurate classification the client has to issue a PROPFIND then > look at the results as follows (hopefully my layout is not too cryptic): > > >>REQUEST > PROPFIND /foo HTTP/1.1 > Host: bar.com > Content-Type: text/xml; charset="utf-8" > Content-Length: xxx > > <?xml version="1.0" encoding="utf-8" ?> > <D:propfind xmlns:D="DAV:"> > <D:prop> > <D:resourcetype/> > <D:auto-checkout/> > <D:checked-in/> > <D:checked-out/> > <D:version-name/> > <D:workspace-checkout-set/> > <D:baseline-controlled-collection/> > <D:subactivity-set/> > </D:prop> > </D:propfind> > > Interpreting the results > -------------- > Key: The major classifications are listed below from (1) to (8). > > Each entry marked with a plus-sign can exist in a checked-in xor > checked-out state. > + > <DAV:checked-in> defined -- the resource is checked-in. > <DAV:checked-out> defined -- the resource is checked-out. > > Each entry marked with an astrix can exist as a collection resource xor a > non-collection resource. > * > <DAV:resourcetype> value is not <DAV:collection/> -- the > resource is not a > collection. > <DAV:resourcetype> value is <DAV:collection/> -- the resource is a > collection. > > > (1+*) Version-controlled resource. > <DAV:auto-checkout> defined > > (2*) Version. > <DAV:version-name> defined > > (3) Version history. > <DAV:resourcetype> value is <DAV:version-history/> > > (4) Workspace. > <DAV:resourcetype> value is <DAV:collection/> > <DAV:workspace-checkout-set> defined > > (5*) Working resource. > <DAV:checked-out> defined > <DAV:auto-checkout> *not* defined > > (6+) Version-controlled configuration. > <DAV:baseline-controlled-collection/> defined > > (7) Baseline. > <DAV:resourcetype> value is <DAV:baseline/> > > (8) Activity. > <DAV:subactivity-set> defined. > > > Observations > ---------- > (i) For the most part we only care if a property is defined - i.e., it > exists, and not what it's value is. There is currently no way to ask this > question in WebDAV. > > (ii) It would seem that activities should have a <DAV:resourcetype> of > <DAV:activity>, but I didn't see that in the -15 spec. > > (iii) The only way I could see to distinguish a workspace from a 'regular' > collection was the presence of <DAV:workspace-checkout-set/> > which it would > seem is likely a very expensive property to query. > > > Conclusions > --------- > (a) We should extend <DAV:resourcetype> to provide all this classification > information in a single property. > (b) How about extending <DAV:propname/>? such as > <DAV:propname> > <DAV:checked-out/> > </DAV:propname> > then the client would get back just the name or a 404 to determine if it > exists. > > > Tim > > > >
Received on Friday, 11 May 2001 23:02:22 UTC