- From: Andy Seaborne <andy@apache.org>
- Date: Fri, 18 Oct 2013 16:05:22 +0100
- To: public-ldp-patch@w3.org
On 18/10/13 15:24, Alexandre Bertails wrote: > On 10/18/2013 10:13 AM, Andy Seaborne wrote: >> On 18/10/13 03:57, Alexandre Bertails wrote: >> >>> General remark: Linked Data (in LDP) is different from general RDF: >>> the data lives in "small" HTTP documents, not in "big" RDF store. >> >> Hmm - collections have the potential to be large and, in general, >> planning on "small" seems to fail the test of real use! > > Collections as in LDPC, yes, that is true. I was talking about LDPRs. If LDPC are a subclass of LDPR ... :-) >> If it were truly small, than PATCH is not really needed - use PUT and >> etags. > > I'd be happy to add this approach in [2]. Is there some text somewhere > about how exactly one can use ETags for LDP PATCH? It is just normal use of etags and PUT - plain web stuff. > [2] http://www.w3.org/2012/ldp/wiki/LDP_PATCH_Proposals > >> >> I do agree that "LDP PATCH" is not PATCH for all RDF situations. >> >>> >>> RDF Patch >>> --------- >>> >>> Champion: Andy Seaborne >>> >>> Summary: diffs for RDF dataset >>> >>> Example: (A is for Add and D for Delete) >>> >>> [[ >>> A <http://example.org/alice> <http://xmlns.com/foaf/0.1/name> >>> "Robert" . >>> A <http://example.org/bob> <http://xmlns.com/foaf/0.1/knows> >>> <http://example/alice> . >>> A <http://example.org/alice> <http://xmlns.com/foaf/0.1/name> >>> "Alice" . >>> D <http://example.org/bob> <http://xmlns.com/foaf/0.1/name> "Robert" . >>> A <http://example.org/bob> <http://xmlns.com/foaf/0.1/name> "Bob" . >>> ]] >>> >>> Pros: >>> * easy to implement from scratch (parser + runtime) >>> >>> Cons: >>> * specified for an RDF dataset, not an LDPR >> >> I don't follow that point - LDPR state is a graph and your example is >> changing a graph. RDF patch as a format is equally applicable to a >> graph; don't use graph names. > > I don't know the history for RDF PATCH. I had the feeling that the > spec was written with RDF Stores in mind, not for PATCHing LDPRs. The > named graphs thing was just an example of that. I'm not saying this > cannot be refined, like Pierre-Antoine did for example. > >> >> > * blank nodes are system dependant, so not well specified in the case >> of LDP >> >> Skolemization? > > Sure. But the specification in its current form says [[ Blank nodes > are recorded as _:id where id can be the system-internal identifier > for the blank node ]], but says nothing about skolemization, does it? > >> >> As the RDF patch docs discusses, both doc-wide scope (RDF style) and >> store-scope are needed for different usages. > > I understand. So here is my question: what scope does RDF PATCH > address? (A.4) From other feedback, it looks like it needs both. store-scope to do changes, as all the proposal have to address some how. There are two appraoches - find the bnode, and name the bnode. RDF-patch happens to mention <_:label>, not http skolemization but that is an artifact of history and a laziness in writing <http://host/skolemId/ABCDEF> all the time. doc-scope, like RDF syntax, for new data. One caution: finding bnodes avoids the need to name then in the access operations ... but finding them is really quite tricky in practice unless the data is well behaved (= planned for this sort of use, e.g IFP). A test case is RDF list manipulation as is deleting molecule-like structures uses for structured values. Andy > > Alexandre. > >> >> Andy >> >> >> >> > >
Received on Friday, 18 October 2013 15:05:52 UTC