Re: ldp-ISSUE-91 (rel='type' Link-based interaction): The LDP (REST) interactions must be driven by the rel='type' Link header [Linked Data Platform Spec]

Hi,

On Sat, Nov 23, 2013 at 11:51 AM, Alexandre Bertails <bertails@w3.org>wrote:

> Actually, the more I think about it, the more I'm puzzled with what it
> means being an LDPC.
>
> Sometimes, the LDPC is the RDF resource that has the type
> ldp:Container (5.2.7). It is also the subject of the ldp:membershipXXX
> triples.
>
> But I can also GET its representation (5.3.X). And I can POST to it
> (5.4.X).
>
> This tension is well illustrated with Example 5 [2] as you're expected
> to interact (GET, POST, etc.) with <http://example.org/netWorth/nw1/>
> but not with <http://example.org/netWorth/nw1/assetContainer/>.
>

<http://example.org/netWorth/nw1> is the LDPR, so you interact with it if
you want to do LDPR things to the resource.
<http://example.org/netWorth/nw1/assetContainer/> is the LDPC, associated
with the LDPR above to manage the same subject and same predicate triples
that identify the member resources (assets).

I take your point from the other thread/issue, that may not be ideally how
you'd model this example especially with named graphs in your toolbox.  The
example was to illustrate the pattern I just described which is one we've
seen, perhaps a better one can be given.  Though since it has been there
for well over a year, I thought people were comfortable with it, perhaps
not.


> Looks like the confusion was introduced with
> ldp:containerResource. And that being of type ldp:Container does not
> entail the LDP interactions.
>
> Are LDPC and ldp:Container two different beasts?
>

No.  LDPC is a short name in the spec for Linked Data Platform Container.
 ldp:Container is the rdfs:Class defining the Linked Data Platform
Container.  Per discussion yesterday [1] though, this question may be moot.

[1] - http://www.w3.org/2012/ldp/wiki/Containers

- Steve Speicher


>
> Alexandre.
>
> [2] https://dvcs.w3.org/hg/ldpwg/raw-file/default/ldp.html#
> ldpc-ex-membership-full
>
>
>
> On 11/22/2013 05:28 PM, Linked Data Platform (LDP) Working Group Issue
> Tracker wrote:
>
>> ldp-ISSUE-91 (rel='type' Link-based interaction): The LDP (REST)
>> interactions must be driven by the rel='type' Link header [Linked Data
>> Platform Spec]
>>
>> http://www.w3.org/2012/ldp/track/issues/91
>>
>> Raised by: Alexandre Bertails
>> On product: Linked Data Platform Spec
>>
>> We have already agreed that LDP interactions are not strictly hypermedia
>> driven, as we agreed not to define a new media-type for LDP. Instead we
>> have a Link header for Resource [1].
>>
>> The problem is that 4.2.10 [1] does not really advertise the LDP
>> interaction, just the "LDP support" for the resource, and the interaction
>> is currently derived from a { <> a ldp:Container } triple (or its absence).
>> That means than I cannot create a simple LDPR with that triple _without_
>> the related interaction model. This is wrong.
>>
>> My proposal is to say that the interaction model is directly (and solely)
>> derived from the "type" Link header, having one for the LDPR and one for
>> the LDPC. This is aligned with the previous proposal of not defining a new
>> media type but to extend the existing RDF ones with the rel='type' Link
>> header.
>>
>> For an LDPR (and ideally for Binary if it also were an LDPR):
>> Link: <http://www.w3.org/ns/ldp#Resource>; rel="type"
>>
>> For an LDPC:
>> Link: <http://www.w3.org/ns/ldp#Container>; rel="type"
>>
>> Now, I can copy the content of an LDPC (eg. for backup purposes) into a
>> new LDPR, without inheriting the LDPC interactions.
>>
>> Also, creating an LDPC is now easy to define (and implement): you POST a
>> document *with* the corresponding Link header (otherwise, it's an LDPR, or
>> a Binary).
>>
>> Alexandre.
>>
>> [1] https://dvcs.w3.org/hg/ldpwg/raw-file/default/ldp.html#ldpr-4_2_10
>>
>>
>>
>>
>>
>
>

Received on Tuesday, 26 November 2013 13:08:51 UTC