On 20/08/13 18:35, Rob Vesse wrote:
Hey Jakob
Thanks for the feedback, some comments inline:
On 8/20/13 7:29 AM, "Jakob Frank" <ja...@apache.org> wrote:
Hi Andy, all
Hi Jakob,
I had a quick look through the document - and overall I like the clean
and simple approach of the proposed format.
Here are my first comments:
- HTTP PATCH targets a resource - IMHO it should be allowed that the
server limits changes to this addressed resource. (the illustrative
example in the doc modifies two resources)
It depends what the resource identifies, the HTTP resource could easily be
a SPARQL Graph store in which case modifying multiple different RDF
resources is perfectly fine IMO.
Possibly making this a MAY constraint in the specification would make
sense.
It's only one possible use case of how RDF patch might be used. In
section 8.2, the example is triples - a graph. There is no reason why
further restrictions of a general format can't be introduced for
specific usages. For example, only allowing "A" records for an
append-only target.
Any server can always add constraints and/or simply decide not to
execute any request (although checking request wide constraints can
conflict with streaming).
Unlike Talis changesets there is no assumption that web-resource, the
target of the action is the subject of all triples at that location.
The idea that the web resource naming hierarchy aligns to graph primary
subject is quite weak. When LDP gets to containers with inline members,
multiple subjects in one web resource occur.
Try adding a new member for the LDP-C in example 8 of
http://www.w3.org/TR/ldp/#informative-1 !
- if you continue the resource-centered approach, you could allow to
skip the subject in the patch file. (but then: how to distinguish
between POC and SPO statements?)
>
Interesting thought, though I think we likely want to allow modifying many
resources per my above comment so having this mechanism doesn't
necessarily make sense. If we did this to avoid the triple/quad
distinction we would need to properly put some up front definition
- what about allowing wildcards for deletion? e.g.
D <http://example/bob> foaf:name ?x .
to delete all foaf:names for ex:bob
This makes the language more query like, the intention was very much to
just stream a set of specific changes not to be able to express more
update language style constructs.
The restricted "DELETE WHERE" functionality can be useful. I'd use *
(or the word ANY) to avoid variable naming
D <http://example/bob> foaf:name ANY .
Variables get interesting:
D ?x foaf:knows ?x .
:-)
Andy
- is the ordering of the statements significant? i.e. what is the
result of the following patch:
D <http://example/s> <http://example/p> <http://example/o> .
A <http://example/s> <http://example/p> <http://example/o> .
is it different to the result of
A <http://example/s> <http://example/p> <http://example/o> .
D <http://example/s> <http://example/p> <http://example/o> .
Yes the ordering is significant, it is a streaming format by design so
changes MUST be processed in order.
Thanks,
Rob
ps. cc'd d...@jena.apache.org so people interested there can also see your
feedback
Best,
Jakob
On 12 August 2013 11:23, Andy Seaborne <a...@apache.org> wrote:
On 11/08/13 18:07, Andy Seaborne wrote:
Rob, all,
Wrong dev@ :-(
But your welcome to comment and make suggestions :-)
The doc is:
http://afs.github.io/rdf-patch/
Andy
I've made some changes : I've moved the discussion of features to an
appendix and added some possibilities for some of these items.
http://afs.github.io/rdf-patch/#notes
A.1 Line Mode
A.2 Metadata
A.2.1 Linking
A.2.2 Inline
A.3 Transaction Boundaries
A.4 Alternative Blank Node Syntax
A.5 Alignment Errors
A.6 Binary Format
- - - - -
Prompted by
https://twitter.com/pdxleif/status/366267325818736640
Where should we encourage discussion in going to a wider audience?
One possibility is github, using the issues area of the git repo . But
you have to know where to look and the semweb world is still quite
mailing-list driven.
public-sparql-...@w3.org makes some sense (it's not a high volume
list).
Other more general lists like semantic-...@w3.org have their pros and
cons.
Andy