- From: James J. Hunt <jjh@allerton.de>
- Date: Tue, 06 Feb 2001 04:41:50 +0000
- To: "Geoffrey M. Clemm" <geoffrey.clemm@rational.com>
- CC: ietf-dav-versioning@w3.org
Dear Geoff,
Here is the new proposal for expand-properties. It has the advantage over the
current version of not overloading the prop semantics. Structure information
is conveyed via the prop-apply and multiprop tags in the request and response
respectively. Note that they can only be used for properties that contain
hrefs. These examples verify against my latest DTD which I will send after
this. Note also that the example in version 12 and 12.1 of the specification
returned erroneous values for creator-displayname. That is fixed below.
Sincerely,
James
DTD
<!ELEMENT expand-property (prop-apply*)>
<!ELEMENT DAV:prop-apply
((link |
checked-in |
checked-out |
predecessor-set |
precursor-set |
predecessor-set |
successor-set |
checkout-set |
precursor-set |
version-set |
root-version |
version-history |
workspace-checkout-set |
workspace |
merge-set |
auto-merge-set |
baseline-controlled-collection |
subbaseline-set |
baseline-collection |
baseline-selector |
baseline-controlled-collection-set |
activity-version-set |
activity-checkout-set |
subactivity-set |
current-workspace-set |
activity-set |
current-activity-set |
eclipse-set |
variant-set |
default-variant),
(prop | prop-apply)*)>
<!ELEMENT propstat ((prop | multiprop), status,
(responsedescription | error)?)>
<!ELEMENT multiprop
((link |
checked-in |
checked-out |
predecessor-set |
precursor-set |
predecessor-set |
successor-set |
checkout-set |
precursor-set |
version-set |
root-version |
version-history |
workspace-checkout-set |
workspace |
merge-set |
auto-merge-set |
baseline-controlled-collection |
subbaseline-set |
baseline-collection |
baseline-selector |
baseline-controlled-collection-set |
activity-version-set |
activity-checkout-set |
subactivity-set |
current-workspace-set |
activity-set |
current-activity-set |
eclipse-set |
variant-set |
default-variant),
(response*))>
REQUEST
REPORT /foo.html HTTP/1.1
HOST: www.webdav.org
Content-Type: text/xml; charset="utf-8"
Content-Lenght: ????
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE expand-property
SYSTEM "http://www.webdav.org/dtd/deltav-0.12.2.0.dtd">
<expand-property xmlns="DAV:">
<prop-apply>
<version-history/>
<prop>
<version-set/>
<creator-displayname/>
<activity-set/>
</prop>
</prop-apply>
</expand-property>
RESPONSE
HTTP/1.1 207 Mutli-Status
Content-Type: text/xml; charset="utf-8"
Content-Lenght: ????
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE multistatus
SYSTEM "http://www.webdav.org/dtd/deltav-0.12.2.0.dtd">
<multistatus xmlns="DAV:">
<response>
<href>http://www.webdav.org/foo.html</href>
<propstat>
<multiprop>
<version-history/>
<response>
<href>http://repo.webdav.org/his/23</href>
<propstat>
<multiprop>
<version-set/>
<response>
<href>http://repo.webdav.org/his/23/ver/1</href>
<propstat>
<prop>
<creator-displayname><name>Fred</name></creator-displayname>
<activity-set>
<href>http://www.webdav.org/ws/dev/surely</href>
<href>http://www.webdav.org/ws/dev/jest</href>
</activity-set>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
<response>
<href>http://repo.webdav.org/his/23/ver/2</href>
<propstat>
<prop>
<creator-displayname><name>Sally</name></creator-displayname>
<activity-set>
<href>http://repo.webdav.org/act/add-refresh-cmd</href>
</activity-set>
</prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multiprop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multiprop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multistatus>
Received on Monday, 5 February 2001 23:58:24 UTC