Re: RIF+SPARQL (was Re: Entailment regimes open issues)

On 2010-2-8 14:41 , Sandro Hawke wrote:
>> One more problem for the RIF part is that I've always said that we
>> need an editor for RIF and that won't be me. I have not even read the
>> RIF spec (skimmed over parts that touch OWL) and I don't have the time
>> to first understand RIF and which parts of RIF are suitable to
>> integrate with SPARQL and how that can be done properly. We would
>> really need somebody with RIF background to put in the time to write
>> this.
> 
> Yeah, unfortunately, we don't have much intersection here between people
> who know/care about RIF and SPARQL.
> 
> Can someone here make the case for why RIF folks should care about this?
> I tried to get interest from the RIF-WG, but I don't think I explained
> it very well.
> 
> The general idea, I gather, is to be able to do SPARQL queries against a
> RIF-powered deductive triple store.  

Correct. I do not think this requires more explanation: this is a
succinct description of what the other entailment regime descriptions
aim to achieve...

>                                     But I don't understand what needs
> to be spec'd for that; it seems to me like the parts fit together in
> exactly one obvious way.  (RIF certainly anticipates this use case; we
> have a Feature At Risk on 1-to-1 lists: rdf:Lists map to RIF lists, but
> do they map back?  I hope so, but no one has implemented that yet.)
> 

And I do not expect to be complicated, just one has to have the right
terms...

SPARQL 1.0 had an 'extension point'[1] which means describing what it
means when the basic graph pattern matching is extended to something
more complex. Birte gives a nice description on what should be done
in[2], actually. For the RIF case, one has to specify those conditions
(even if they turn out to be obvious).

In my understanding, what has to be done is to specify

1. A subset of RDF graphs called well-formed for the regime: I believe
that can be any RDF graphs for RIF (here is where the issue with lists
may come in if I understand the problem well)
2. An entailment relations between well formed graphs which, in the case
of RIF, is probably fully defined by the RIF+RDF semantics, and a
reference might just be fine
3. A set of conditions that guarantee that every input yields a finite
set of answers (modulo RDF graph equivalence)

Due to blank node and such the tricky part is usually #3 and Birte has
come up with some clean conditions on how that can be achieved with
RDF(S) (essentially, blank nodes are skolemized before making the
inferences, ie, only those blank nodes may appear in the answer that
were part of the original graph pattern; I hope Birte will accept my
characterization). As far as I could see the same approach would work
for RIF as well, mapping these blank nodes to RIF local symbols instead
of skolemization (or after skolemization?)

Ie, I do not think it is a long editing work but certainly requires
somebody who knows the right references and terminology and also knows
where the possible pitfalls are...

I.


[1] http://www.w3.org/TR/rdf-sparql-query/#sparqlBGPExtend
[2] http://www.w3.org/TR/2010/WD-sparql11-entailment-20100126/#t13

>       -- Sandro

-- 

Ivan Herman, W3C Semantic Web Activity Lead
Home: http://www.w3.org/People/Ivan/
mobile: +31-641044153
PGP Key: http://www.ivan-herman.net/pgpkey.html
FOAF   : http://www.ivan-herman.net/foaf.rdf
vCard  : http://www.ivan-herman.net/HermanIvan.vcf

Received on Monday, 8 February 2010 14:07:42 UTC