- From: Clemm, Geoff <gclemm@rational.com>
- Date: Sat, 6 Jul 2002 19:33:38 -0400
- To: "'Deltav WG'" <ietf-dav-versioning@w3.org>
From: Julian Reschke [mailto:julian.reschke@greenbytes.de] > From: Clemm, Geoff > > Julian didn't like the marshalling of this report, because it > makes it look like the properties are those of the VCR, when they > actually are properties of the version Yes, that's the problem, and I fear the new format doesn't address this. If the multistatus/response format is re-used for a REPORT (basically a good thing), it must not break the existing semantics, in particular: - the properties reported must actually be the properties of the resource identified by the reported URI (DAV:href) and - the properties reported actually must be properties (!). If this is not the case, the response seems to indicate that there's a DAV:labeled-version-report property, which isn't the case. If this is a problem, it is a problem with the 3253 definition of REPORT. In particular, section 3.6 states: "If a Depth request header is included, the response MUST be a 207 Multi-Status. The request MUST be applied separately to the collection itself and to all members of the collection that satisfy the Depth value. The DAV:prop element of a DAV:response for a given resource MUST contain the requested report for that resource." So according to 3253, the DAV:prop elements MUST contain the requested report (as if it were a property). Since this was not considered a problem during any of the reviews of 3253, I'd need to hear some compelling reasons why this marshalling has become a problem. In particular, there is no rule that I know of that states that the interpretation of a DAV:multistatus element must be the same in all contexts in which it appears. I know that this is definitely not the case for other XML elements used by WebDAV (e.g. the way the property elements are used in the request and response bodies of a PROPPATCH differ significantly). So how about properly extending the response element, for instance: <?xml version="1.0" encoding="utf-8" ?> <D:multistatus xmlns:D="DAV:"> <D:response> <D:href>http://www.webdav.org/folder/</D:href> <D:labeled-version-report> <D:href>http://repo.webdav.org/his/23/ver/V5</D:href> <D:propstat> <D:prop> <D:version-name>V5</D:version-name> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </Dpropstat> </D:labeled-version-report> <D:status>HTTP/1.1 200 OK</D:status> </D:response> <D:response> <D:href>http://www.webdav.org/folder/foo.html</D:href> <D:labeled-version-report> <D:href>http://repo.webdav.org/his/84/ver/V8</D:href> <D:propstat> <D:prop> <D:version-name>V8</D:version-name> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:labeled-version-report> <D:status>HTTP/1.1 200 OK</D:status> </D:response> </D:multistatus> That would be fine with me (and arguably is cleaner than what is defined in 3253), but it is inconsistent with 3253, so unless there is something seriously wrong with the 3253 marshalling, I think consistency is more important here than aesthetics. Cheers, Geoff
Received on Saturday, 6 July 2002 19:34:16 UTC