- From: Tim Ellison <tim@peir.com>
- Date: Fri, 8 Jun 2001 22:06:37 +0100
- To: "DeltaV" <ietf-dav-versioning@w3.org>
Here's a proposed appendix to the spec to clarify the type discussion we have been having recently. I suggest we call it "How to tell the difference between a Duck and an Alligator". Tim ========================= VERSIONING RESOURCE TYPE A versioning resource's type can be determined by examining the set of live properties it supports. For example, the supported live properties for the version history resource /foo are retrieved by >>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:supported-live-property-set/> </D:prop> </D:propfind> >> RESPONSE HTTP/1.1 207 Multi-Status Content-Type: text/xml; charset="utf-8" Content-Length: xxxx <?xml version="1.0" encoding="utf-8" ?> <D:multistatus xmlns:D="DAV:"> <D:response> <D:href>http://www.bar.com/foo</D:href> <D:propstat> <D:prop> <D:supported-live-property-set> <D:supported-live-property namespace="DAV:" name="creationdate"/> <D:supported-live-property namespace="DAV:" name="displayname"/> <D:supported-live-property namespace="DAV:" name="getcontentlanguage"/> <D:supported-live-property namespace="DAV:" name="getcontentlength"/> <D:supported-live-property namespace="DAV:" name="getcontenttype"/> <D:supported-live-property namespace="DAV:" name="getetag"/> <D:supported-live-property namespace="DAV:" name="getlastmodified"/> <D:supported-live-property namespace="DAV:" name="lockdiscovery"/> <D:supported-live-property namespace="DAV:" name="resourcetype"/> <D:supported-live-property namespace="DAV:" name="source"/> <D:supported-live-property namespace="DAV:" name="supportedlock"/> <D:supported-live-property namespace="DAV:" name="comment"/> <D:supported-live-property namespace="DAV:" name="creator-displayname"/> <D:supported-live-property namespace="DAV:" name="supported-method-set"/> <D:supported-live-property namespace="DAV:" name="supported-live-property-set"/> <D:supported-live-property namespace="DAV:" name="supported-report-set"/> <D:supported-live-property namespace="DAV:" name="workspace"/> <D:supported-live-property namespace="DAV:" name="version-controlled-configuration"/> <D:supported-live-property namespace="DAV:" name="version-set"/> <D:supported-live-property namespace="DAV:" name="root-version"/> </D:supported-live-property-set> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:response> <D:responsedescription>OK</D:responsedescription> </D:multistatus> The following types are described in the DeltaV specification. The resources type is uniquely determined by the presence or absence of key supported live properties (inclusion in or omission from the reported property set) as follows: Version-controlled resource (+*) <DAV:supported-live-property-set> includes <DAV:auto-checkout/>. Version (*) <DAV:supported-live-property-set> includes <DAV:version-name/>. Version history <DAV:supported-live-property-set> includes <DAV:root-version/>. Workspace <DAV:supported-live-property-set> includes <DAV:workspace-checkout-set/>. Working resource (*) <DAV:supported-live-property-set> includes <DAV:checked-out/>. and <DAV:supported-live-property-set> does *not* include <DAV:auto-checkout/>. Version-controlled configuration (+) <DAV:supported-live-property-set> includes <DAV:baseline-controlled-collection/>. Baseline <DAV:supported-live-property-set> includes <DAV:baseline-collection/>. Activity <DAV:supported-live-property-set> includes <DAV:subactivity-set/>. Each resource type above marked with a plus-sign(+) can exist in a checked-in or checked-out state. The checked in state can be determined as follows: <DAV:supported-live-properties> includes <DAV:checked-in> means the resource is checked-in. <DAV:supported-live-properties> includes <DAV:checked-out> means the resource is checked-out. Each resource type above marked with an asterix(*) can exist as a collection resource or a non-collection resource. Determining whether a resource is a collection is described in RFC2518. <DAV:resourcetype> does not include <DAV:collection/> means the resource is not a collection. <DAV:resourcetype> includes <DAV:collection/> means the resource is a collection.
Received on Friday, 8 June 2001 17:06:57 UTC