Subject: RFC2518 LOCK Response Code

From: "Hall, Shaun" <[email-masked]>
Date: Thu, 23 Nov 2000 12:03:35 -0000

An issue regarding a LOCK response code in RFC2518. A quick search in the
archives didn't show anything about this.

In section 8.10.4, it states "If the lock cannot be granted to all
resources, a 409 (Conflict) status code MUST be returned with a response
entity body containing a multi-status XML element...".

1) The 409 status code is not listed in section 8.10.7 (LOCK status codes).
2) The example in section 8.10.10 (Multi-resource LOCK request which fails)
returns a 207 (Multi-status) response code, not a 409.

The 207 response is normal for WebDAV methods that need to provide
information about multiple-resources.

I'm inclined to think the 207 is the correct response in such a failure
case, which at first implies the 409 is wrong.

However, I think the only case where a 409 is applicable is if one it trying
to "create" a Lock Null Resource (LNR) (i.e. the null-resource does not
exist) and where the ancestors of the LNR do not exist. I think this would
be consistent with other methods as well (e.g. PUT, COPY, MOVE).

Comments/clarification/etc please.

Regards

Shaun Hall
Xerox Europe