Howdy,

I recently asked a question about consistent blank id values in SPARQL
queries and Andy provided a patch that solves the problem for query
(provided the server consistently calls the blank node by the same ID
across queries).  This is a follow on to that with a slightly different
twist.

As far as I can tell the SPARQL does not specify that blank node IDs in
queries are to match blank node IDs in the data store, but rather that
blank node positions must match (a much tricker matching).

So if we assume that a portion (P) of a graph (G) is stored in a smaller
remote graph and that consistent blank node ids are provided by queries.

if a blank node property is updated/added in the P graph is there a
mechanism that can match the blank node in the G graph so that it can be
updated?

I think that it should be possible using hamming distances to determine
which node in G should be modified but I am not certain that (a) this is
correct and (b) that it can be done with SPARQL.

given quads in graph G

G <s1> <p1> _:1
G <s1> <p1> _:2
G <_:1> <p2> <o1>
G <_:1> <p3> <o2>
G <_:2> <p2> <o3>
G <_:2> <p3> <o4>

and quads in graph P

P <s1> <p1> _:1
P <_:1> <p2> <o1>
P <_:1> <p3> <o3>

where
P <_:1> <p3> <o2>
has been  changed to
P <_:1> <p3> <o3>

If I track the change in P I can locate _:1 in G and update it

But it seem like there are a lot of pit falls here in that changes to _:1
could make it indistinguishable from _:2

Does anyone have any pointers for how this might be resolved?  Is there any
good research in this area and if so what is this research topic called and
where can I find papers talking about it?

Claude
-- 
I like: Like Like - The likeliest place on the web
<http://like-like.xenei.com>
LinkedIn: http://www.linkedin.com/in/claudewarren

Reply via email to