How to find the members of an LDPC?

Hi guys,

I understand ldp:containerResource, ldp:containsRelation and
ldp:insertedContentRelation as a _set of instructions_ for the LDPC to
manage some domain-based relations, but I don't see a way to find the
LDPRs created by the LDPC.

Please consider the following example:

$ GET http://example.com/shopping/cart/

[[
</shopping/cart/> a ldp:Container;
    ldp:containerResource <#>;
    ldp:containsRelation order:contains;
    ldp:insertedContentRelation foaf:primaryTopic.
]]

$ POST http://example.com/shopping/cart/

[[
<> foaf:primaryTopic <urn:isbn:0470396792> .
]]

$ GET http://example.com/shopping/cart/

[[
</shopping/cart/> a ldp:Container;
    ldp:containerResource <#>;
    ldp:containsRelation order:contains;
    ldp:insertedContentRelation foaf:primaryTopic.

<#> order:contains <urn:isbn:0470396792>
]]

Question: from the last GET, what is the LDPR for <urn:isbn:0470396792>?

If the ldp:member relation does not exist, how would a client deduce
the members that were created?

What really matters as client is to know what interactions are
possible. If an interaction model were to be defined, I would expect
to see something like that:

1. HTTP HEAD on </foo/> tells client "I am an LDPC" as it returns a header
    Link: <http://www.w3.org/ns/ldp#Container>; rel="type"

2. from a GET on </foo/>, a client finds/deduces the LDPRs managed by
    </foo/> eg. with triples like { </foo/> ldp:member </foo/bar> }

3. HTTP HEAD on </foo/bar> tells client "I am an LDPR" as it returns a 
header
    Link: <http://www.w3.org/ns/ldp#Resource>; rel="type"

4. HTTP DELETE on </foo/bar> MUST remove the LDPR and remove
    { </foo/> ldp:member </foo/bar> } from the LDPC

Alexandre.

Received on Wednesday, 6 November 2013 00:50:10 UTC