Re: ldp-ISSUE-59 (recursive-delete): Reconsider usage of Aggregate/Composite construct to get predictable container delete behavior [Linked Data Platform core]

On 2013-03-19 5:10 , "Linked Data Platform (LDP) Working Group Issue
Tracker" <sysbot+tracker@w3.org> wrote:
>ldp-ISSUE-59 (recursive-delete): Reconsider usage of Aggregate/Composite
>construct to get predictable container delete behavior [Linked Data
>Platform core]
>http://www.w3.org/2012/ldp/track/issues/59
>
>Proposal:
>a) Remove the concepts of AggregateContainer and CompositeContainer.
>Leaving the only kind of container to be ldp:Container
>b) Have DELETE on a container only delete the container itself, not its
>members.  Introduce a "recursive delete" mechanism, that deletes the
>container and issues a DELETE on all its members (if the members are also
>containers, it recurses the delete).  The server may not be able to
>successfully delete the members but will at least attempt the DELETE.  It
>would seem unreasonable for the errors on deletion of members to be
>composed into a error report in that it would be infrequently used and
>come at a cost to produce.  Clients that need to know, could know based
>on some condition or minimal error response, then attempting to access
>member resources.

that sounds a lot like application behavior, and not like something that
LDP should or even could do. all we can say is how to interact through
HTTP with individual resources, and what the side effects may be. this
kind of "transaction/batch model" would complicate LDP a lot, and should
rather be addressed on the application level: if clients want to DELETE
"recursively", they GET the links, and then issue DELETE requests.

as a side note, i still think that the simplest solution to all of that is
to simply have a concept of linked vs. server-managed content and say that
a DELETE on the container DELETEs everything managed in it. if content was
POSTed to the server, it will get deleted. if content was linked from a
POSTed member, it remains unaffected. in either case, the member (the LDP
metadata POSTed to the container) will get deleted if the container is
deleted. i still haven't seen any reason why we shouldn't go with the
simple semantics.

cheers,

dret.

Received on Tuesday, 19 March 2013 19:06:21 UTC