- From: Ashok Malhotra <ashok.malhotra@oracle.com>
- Date: Sun, 19 May 2013 16:39:17 -0400
- To: public-ldp-wg@w3.org
How would you access member1? Don't you need a URL?
All the best, Ashok
On 5/19/2013 4:23 PM, Henry Story wrote:
> On 19 May 2013, at 20:03, Ashok Malhotra <ashok.malhotra@oracle.com> wrote:
>
>> Henry:
>> To help understand your proposal please create a simple example as follows:
>> Assume a LDPC has two members.
>> The first member is inlined, the second member is not inlined.
>> What would be returned if you do a GET on the LDPC?
> Thanks Ashot. Here in 3 points
>
> 1. Simple Solution (improved)
> ------------------
>
> Here is an example in N3 with
> <member1> showing just metadata
> <member2> showing the content as a quoted string with an invented Turtle data Type
> <member3> showing the content as a graph which will be possible in the future with something like Trig,
> and is currently possible in N3. ( I am showing it to see that adding quoted content can be elegant )
>
>
> ~~~~~~~~~~~~~~~~
> @prefix dct: <http://purl.org/dc/terms/> .
>
> <> a ldp:Container;
> rdf:member <member1>, <member2>, <member3> .
>
> <member1> dct:title "The first member";
> dct:created "2013-05-16T12:30:01Z"^^xsd:dateTime .
>
> <member2> dct:title "The first member";
> dct:created "2013-05-16T12:30:01Z"^^xsd:dateTime .
> atom:content """
> <http://some.host/member2> <http://xmlns.com/foaf/0.1/primaryTopic> <http://some.host/member2#me> .
> <http://some.host/member2#me> a <http://xmlns.com/foaf/0.1/Person>
> """^^lang:Turtle .
>
> <member3> dct:title "The first member";
> dct:created "2013-05-16T12:30:01Z"^^xsd:dateTime .
> log:semantics {
> <member3> foaf:primaryTopic <member3#me> .
> <member3#me> a foaf:Person;
> foaf:knows <member2#me> .
> <member2#me> a foaf:Idiot .
> }
> ~~~~~~~~~~~~~~~~
>
>
> Both <member2> and <member3> include the content in a safe way. You can always include
> content that way without fear of creating an inconsistency. When you have the content
> in that way then the client need not fetch the remote resource .
>
> 2. Problem with memberInlined proposal
> --------------------------------------
>
> The other part of my argument is that if you really want to merge the content of the members,
> as proposed by the spec then the above would give you
>
> ~~~~~~~~~~~~~~~~
> @prefix dct: <http://purl.org/dc/terms/> .
>
> <> a ldp:Container;
> rdf:member <member1>, <member2>, <member3>;
> ldp:memberInlined <member2>, <member3> .
>
> <member1> dct:title "The first member";
> dct:created "2013-05-16T12:30:01Z"^^xsd:dateTime .
>
> <member2> dct:title "The first member";
> dct:created "2013-05-16T12:30:01Z"^^xsd:dateTime .
> foaf:primaryTopic <member2#me> .
> <member2#me> a foaf:Person .
>
> <member3> dct:title "The first member";
> dct:created "2013-05-16T12:30:01Z"^^xsd:dateTime .
> foaf:primaryTopic <member3#me> .
> <member3#me> foaf:knows <member2#me> .
> <member2#me> a foaf:Idiot .
>
> ~~~~~~~~~~~~~~~~
>
>
> So now it turns out that the LDPC is asserting that
> <member2#me> is a foaf:Idiot.
> Who said that? You can't tell anymore.
>
>
> 3. How do do inlining correctly
> -------------------------------
>
> a. create a resource <inlined>
>
> <> a ldp:Container;
> rdf:member <inlined> .
>
> <inlined> log:semantics { <inlined> a CashFlow . }
>
> b. PUT or PATCH stuff on that member.
> If you get PUT or PATCH access to <inlined> then you know you have the responsibility to keep
> it consistent. You can do that without problem because you can do that action atomically and
> without rollback or locking.
>
>
>
>
>
>> --
>> All the best, Ashok
> Social Web Architect
> http://bblfish.net/
>
>
Received on Sunday, 19 May 2013 20:39:56 UTC