Re: ldp-ISSUE-79 (ldp:contains): ldp:contains

On 31 May 2013, at 18:11, Arnaud Le Hors <lehors@us.ibm.com> wrote:

> Hi Henry, 
> 
> I think the proposed text below has several issues: 
> 
> "relates an LDP Container to the elements it contains, ie LDPRs that were created through this LDPC or that act as if they had been" 
> 
> 1. LDPCs aren't limited to containing LDPRs. They can contain any types of resources, including binary ones. 
> 2. LDPCs aren't limited to containing resources that are created from the LDPC. Although the end of the sentence opens up to that possibility I think the text unnecessarily implies a tie that just doesn't exist. 

agree. 

> 
> I would suggest something like this instead: 
> 
> "relates an LDP Container to the resources it contains". 

Yes, I was hesitant about that way of expressing things, because it seemed nearly circular.

> 
> I think you're right that having an LDP specific predicate would prevent any ambiguity. Sadly, this is a good example of why it is so difficult to reuse existing vocabularies.

Reuse is often done by inference. So one could add to the definition

ldp:contains rdf:subPropertyOf rdf:member .

Then one gets the benefits of aligning intuitions of those who have understood rdf:member relation.
But yes, in this case we use the concept ldp:contains in a very specific way, and rdf:member covers
much more ground.

> 
> --
> Arnaud  Le Hors - Software Standards Architect - IBM Software Group
> 
> 
> 
> 
> From:        "Linked Data Platform (LDP) Working Group Issue Tracker" <sysbot+tracker@w3.org> 
> To:        public-ldp-wg@w3.org, 
> Date:        05/31/2013 02:43 AM 
> Subject:        ldp-ISSUE-79 (ldp:contains): ldp:contains 
> 
> 
> 
> ldp-ISSUE-79 (ldp:contains): ldp:contains
> 
> http://www.w3.org/2012/ldp/track/issues/79
> 
> Raised by: Henry Story
> On product: 
> 
> replace all (most) references of rdf:member in the spec to ldp:contains . 
> 
> ldp:contains a rdf:Property;
>    :comment "relates an LDP Container to the elements it contains, ie LDPRs that were created through this LDPC or that act as if they had been";
>    :domain ldp:Container;
>    :range ldp:Resource .
> 
> The advantage of using this relation is that:
>  - it is more specific than rdfs:member which can be applied much more widely than LDPCs
>  - it does not require the client to know that { <> a ldp:Container }, and so does not need to
>     parse through all the triples before it can start interpreting the meaning of an rdf:member .
>  - LDPRs that wish to refer to their LDPCs can do this in one relation with 
>     { <.> ldp:contains <> . } this otherwise requires two relations 
>     { <.> a ldp:Container; rdf:member <> }
>  - ( very minor: it may reduce the need to import the rdf namespace ) 
> 
> 
> 
> 
> 

Social Web Architect
http://bblfish.net/

Received on Friday, 31 May 2013 16:49:16 UTC