- From: Werner Donné <werner.donne@re.be>
- Date: Sat, 10 Nov 2007 09:12:06 +0100
- To: Julian Reschke <julian.reschke@gmx.de>
- Cc: w3c-dist-auth@w3.org
Say we have the path /A/B/C/D/ where D/ is in fact a second binding to /A/E/F/. If you move /A/B/ to /A/E/F/ you get /A/E/F/B/C/D/. Because of the binding this is the same as /A/E/F/B/C/F/, which is a loop. Note that we did a move of B/, which is not involved in any binding itself. It is also possible to introduce a second binding to a resource without actually supporting the BIND method. Let's take a versioning server, for example, with auto-version set to manual for /A/B/ and /A/C/. Say we want to move /A/B/D to /A/C/D. We have to check out /A/B/ and /A/C/, provided we support versioning of collections. After the move we check in /A/C/, but we undo the check-out of /A/B/. We are then left with /A/B/D and /A/C/D, both referring to the same resource. So loops could occur without the binding spec being supported. Regards, Werner. Julian Reschke wrote: > Julian Reschke wrote: >> ... >> I think it would be better to return a 409 with >> DAV:error/DAV:cycle-allowed here. >> ... > > ...that being said, I wouldn't be opposed to adding an appendix that > both illustrates how MOVE requests can theoretically generate a bind > cycle, and how to handle that case. > > BR, Julian > -- Werner Donné -- Re http://www.pincette.biz Engelbeekstraat 8 http://www.re.be BE-3300 Tienen tel: (+32) 486 425803 e-mail: werner.donne@re.be
Received on Saturday, 10 November 2007 08:11:33 UTC