Clarification of COPY semantics with Overwrite: T

RFC2518, Section 8.8.4 states:

   If a resource exists at the destination and the 
   Overwrite header is "T" then prior to performing 
   the copy the server MUST perform a DELETE with 
   "Depth: infinity" on the destination resource.

RFC3253, Section 1.7 states:

   If at the time of the request, there already is a
   resource at the destination that has the same 
   resource type as the corresponding resource at the 
   request-URL, that resource MUST NOT be deleted, 
   but MUST be updated to have the content and dead 
   properties of its corresponding member.

1) Resource-ID:
In terms of binding and with the semantics of RFC3253, I suppose that the
DAV:resource-id of the resource being overwritten at destination doesn't
change by the COPY operation. Right?

2) Bindings:
Suppose there is a collection C1 mapped to URI-1 with 2 bindings a1->R1 and
a2->R2 ... moreover, a colletion C2 mapped to URI-2 with 2 bindings a1->R1'
and a3->R3'.

Now I issue the follwing request:
  COPY URI-1
  Destination: URI-2
  Overwrite: T

How many bindings has C2 after the COPY? In the "old" semantics of RFC2518
the answer clearly is 2 since the tree of C2 gets deleted prior to the COPY.
In the semantics of RFC3253 it could be 3: C2 is updated with the dead
properties of C1, a1->R1' is updated with content+dead-props of R1, a2->R2'
is created based of R2 and a3->R3' remains unchanged. Or should a3->R3' be
unbinded?

Thanks,
Peter

Received on Monday, 4 August 2003 11:51:03 UTC