Re: ISSUE-37 WAS:Proposal for containers

On 1 Feb 2013, at 11:08, "Wilde, Erik" <> wrote:

> hello all.
> On 2013-01-31 20:54 , "Arnaud Le Hors" <> wrote:
>> One argument against introducing ldp:contains or any such new predicate
>> is that we want to encourage reuse and this doesn't.
>> I'm not really sure this is independent of ISSUE-37. As the draft stands
>> it only supports composition and if that's all we end up with there won't
>> be any confusion about what rdfs:member is about, will there?
> to avoid confusion, what's the problem of using rdfs:member to always
> represent membership, ldp:content to always represent member content, and
> then to distinguish between containment and aggregation simply by letting
> the user decide whether they embed the content or not when creating new
> members? as i've pointed out before, this would also simply deletion
> semantics and generally make the model simpler, and more consistent.

The problem is you have to specify HOW to do that. Until that is specified
I think Arnaud is correct not to give people tools to make the distinction
with a name.

- I have proposed using PATCH to add links that are not members, with the
  advantage that PATCH could allow intelligent pattern matching deletion
  of members of a container. But PATCH is not defined.

- The Atom-Pub solution does not require this distinction since it creates
  an indirection from Container to entry, and places the links in the Entry.
  See the examples "Posting a link to another resource"

essentially this "contains" relation does exist as a logical consequence of the
spec. It just has no name. [1]

   [] a rdf:Property;
      rdfs:subPropertyOf rdfs:member;
      rdfs:domain ldp:Container .

But Arnoud's point is that one should only name things when one needs them. 
I think it is a good modelling practice, because it forces people to argue for
how the thing is going to be used, and why it is needed. There are an infinite
number of distinctions one can make, but any distinction one makes is effort
to maintain.


[1] '[]' is a blank node, which is to it says "there exists" but without naming it.
    By the way I always check Dean Allemang and Jim Hendler's "Semantic Web for 
    the working Ontologist" book when I write these things out. It is a very nice
    read and a good reference.

> cheers,
> dret.

Social Web Architect

Received on Friday, 1 February 2013 10:53:31 UTC