RE: WebDAV response status codes

Roy,

Thank you for pointing out these clarifications and errors in the WebDAV
status codes.  The changes you suggest will be found in the -09 version of
the Distributed Authoring Protocol specification.

- Jim

> -----Original Message-----
> From: w3c-dist-auth-request@w3.org
> [mailto:w3c-dist-auth-request@w3.org]On Behalf Of Roy T. Fielding
> Sent: Monday, October 12, 1998 3:42 PM
> To: WEBDAV WG
> Subject: WebDAV response status codes
>
>
> While I was adding the WebDAV status code to the Apache source base,
> I noticed a couple things that don't fit the HTTP design.
>
> General:  In several places, the protocol describes responses in terms
> of the response phrase, as in "The Method Failure status code", instead
> of the actual status code.  In the HTTP specifications, the reason phrase
> is never used in a normative context, and is instead included in
> parentheses
> after the status code number.  This is because the phrase is only
> a comment
> and not part of the protocol.
>
> Section 9: (editorial)
> Each of the status codes are described as if they were being inserted
> in the main HTTP/1.1 specification, which is very terse.  WebDAV does
> not need to be this terse, and should at a minimum introduce the status
> code in the body text before each definition.
>
> 9.5  424 Method Failure
>
>    The method was not executed on a particular resource within its
>    scope because some part of the method's execution failed causing the
>    entire method to be aborted.  For example, if a command in a
>    PROPPATCH method fails then, at minimum, the rest of the commands
>    will also fail with 424 Method Failure.
>
> There are three problems here:
>
>    1) 424 is never used by WebDAV as a status code.
>    2) The above has the semantics of a 5xx response, even though the
>       dependency was part of the client request.
>    3) The reason phrase does not help the reader understand the code.
>
> My suggestion is that either 424 be replaced by a non-HTTP construct in
> the XML of a 207 response, or that you define the status code so that
> it has some meaning significant to HTTP.  For example
>
>    424 Failed Dependency
>
>    The 424 (Failed Dependency) status code means that the method could
>    not be performed on the resource because the requested action depended
>    on another action and that other action failed.  For example, if a
>    command in a PROPPATCH method fails then, at minimum, the rest of
>    the commands will also fail with a 424 response.
>
>
> 9.6 425 Insufficient Space on Resource
>
>    The resource does not have sufficient space to record the state of
>    the resource after the execution of this method.
>
> 4xx responses are reserved for errors by the client.  This is not an
> error by the client.  Also, a 'resource' in HTTP does not have space.
> If you want these semantics as a status code, then the correct definition
> would be something like
>
>    507 Insufficient Storage
>
>    The 507 (Insufficient Storage) status code means that the method could
>    not be performed on the resource because the server is unable to store
>    the representation needed to successfully complete the request.  This
>    condition is considered to be temporary.  The request MUST NOT be
>    repeated until it is requested by a separate user action.
>
> I'd like these to be fixed before draft 09.
>
> ....Roy
>

Received on Friday, 16 October 1998 21:03:37 UTC