Re: Appropriate partial success codes (was Re: Some questions about WebDAV)

Well, I suppose there are multiple ways of answering the question.    
Since the question explicitly asked whether the server should fail  
"returning 207 Multi-Status with some portions giving a 412  
Precondition Failed", I still find that saying that 412 can't appear in  
Multi-Status is at least a partial answer to that question.

Another answer would be to say that unmet preconditions MUST cause the  
entire request to fail atomically even if the request involves multiple  
resources.  Do you think we should add that to the draft?

Lisa


On Oct 19, 2005, at 2:44 PM, Julian Reschke wrote:

> Lisa Dusseault wrote:
>> To respond specifically to the question about resolving issues, the  
>> text was added in an attempt to comprehensively respond to an issue  
>> that was raised on the mailing list by ChunWei Ho on July 20.  I  
>> thought that your answer to ChunWei Ho's question was perfectly  
>> correct, and that info wasn't unambiguously stated in the RFC, so I  
>> tried to answer that question and also questions about other status  
>> codes besides 412 appearing in Multi-Status responses (some of them  
>> are more subtle than whether or not 412 should appear).  I'm not tied  
>> to any of the specific recommendations I made in that section --  
>> consider it straw-man text.  Have you any changes to recommend in it?
>> Lisa
>
> The question was:
>
> "Hi,
>
> I have another question. When the If header (webDAV's If header)
> condition is not met, the request should fail with 412 Precondition
> Failed. If the request is one over multiple resource, like PROPFIND,
> COPY or MOVE over Depth > 0, should the whole request fail returning
> 412 Precondition Failed, or fail only for the specific resources
> returning 207 MultiStatus with some portions giving a 412 Precondition
> Failed.
>
> Thanks again for the help! :)
>
> Regards,
> CW"
>
> (see  
> <http://lists.w3.org/Archives/Public/w3c-dist-auth/2005JulSep/ 
> 0070.html>).
>
> I'm not sure how the new text you added helps resolving that, because  
> this was about whether to return a 207 or not.
>
> My answer was:
>
> "Hi,
>
> judging from
> <http://greenbytes.de/tech/webdav/rfc2518.html#rfc.section.9.4.p.4>:
>
> "The If header's purpose is to describe a series of state lists. If the
> state of the resource to which the header is applied does not match any
> of the specified state lists then the request MUST fail with a 412
> (Precondition Failed). If one of the described state lists matches the
> state of the resource then the request may succeed."
>
> I would say that the server must return a 412 (so partial
> execution/success of the request is not an option)."
>
> (see  
> <http://lists.w3.org/Archives/Public/w3c-dist-auth/2005JulSep/ 
> 0071.html>)
>
> So as far as I can tell the spec is perfectly ok, and there's  
> absolutely no reason to add any new text because of this question.
>
> Best regards, Julian

Received on Thursday, 20 October 2005 18:52:01 UTC