W3C home > Mailing lists > Public > public-rif-wg@w3.org > January 2006

[SWC] Re: RIF and QL

From: Ed Barkmeyer <edbark@nist.gov>
Date: Wed, 25 Jan 2006 19:22:25 -0500
Message-ID: <43D81641.1020201@nist.gov>
To: W3C RIF WG <public-rif-wg@w3.org>

Enrico Franconi wrote:

> On 25 Jan 2006, at 21:11, Ed Barkmeyer wrote:
> 
>> I need to understand what François has in mind by "expression in a  
>> query language".  I can understand how something like:
>>  (SPARQL 'RDFbase '<query text> <rule-expression> ... <rule- expression>)
>> could work as an "external query", where:
>> - SPARQL designates a particular query service (or a class of query  
>> service for which the rule engine is to find a server in  conjunction 
>> with the "RDFbase" parameter)
>> - RDFbase designates the KB on which the service is to operate for  
>> this query
>> - <query text> is a query stated in the language of the designated  
>> service that may contain references to "external parameters" using  
>> the "external parameter syntax" *for that query language*
>> - <rule-expression> is an operand expression in the rule language  
>> (RIF) syntax.  The expression is evaluated by the rule engine  before 
>> invocation of the external query service, and the result of  the 
>> evaluation is passed in the position in which the expression  occurs, 
>> i.e. an "actual parameter".
> 
> I am sure (or hope) that what are you talking about is only *one*  
> option out of the *many* that RIF has to characterise and define in  
> order to interoperate with ontology languages (such as RDF, in this  
> example): let's call this option the 'trivial'semantics.

YES!  This 'trivial' semantics is what I thought François was recommending. 
What I describe is only one option out of many even for doing this.  And it is 
not about "interoperating with RDF", as Chris Welty said in the telecon, it is 
only about interoperating with an "external" SPARQL service.

The issue of "interoperating meaningfully with ontology languages" is a MUCH 
more complex question.

> Why am I saying 'ontology languages'?
> 
> What you call an "expression in a query language" is in the very  
> general case an open formula in some ontology/knowledge- representation 
> language, whose bindings make the formula 'somehow'  formally connected 
> with some knowledge base (the RDFbase in your  example) -- in your case 
> the connection is the bare logical implication. I guess that this is a 
> fair (informal) formalisation of  this 'trivial semantics'.

This is exactly right.  The model I discussed is trivial, because it 
represents only the weakest possible coupling:  use of a result obtained from 
some other KB, and possibly a related inferencing service, as a term in the 
antecedent of a rule.  It is, as Harold Boley said, exactly the semantics of 
an "attached procedure", except possibly that the rule engine knows more about 
how to convert the RIF syntax to an invocation of the specific query service.

> However, there may be several kinds of these 'connections': most of  
> them are based on a model-theoretic characterisation rather than on  
> entailment (see [1] - and I can really think of at least three  
> additional important classes: FOL semantics (à la SWRL), LP-weak-safe  
> semantics (à la Rosati), and autoepistemic semantics). So, we are  
> really talking about at least 4 different semantic options to  
> characterise the interoperability between a knowledge base and rules  by 
> means of 'query expressions' (as defined above) appearing in the  body 
> of some rules.

I agree that it is possible and interesting to investigate this option.  What 
you are talking about is "rule language expressions" that interrogate the 
"integrated knowledge base" available to a rule engine with some integrated or 
"attached" inferencing capabilities that have other model theoretic bases. 
This requires understanding of how to integrate the model theories and/or how 
to "restrict" and "contextualize" rule language expressions for the 
"federated" or "unified framework" of model theories of the attached 
inferencing engines.

> To be more concrete, let me take a very special case, and see how it  
> behaves.
> 
> Let us restrict attention to the RDF and OWL ontology/knowledge- 
> representation languages (we have at least to consider those two, as  
> per our charter). In order to super-simplify our life, let us in  
> addition restrict our attention to the case when those queries are  
> atomic: atomic binary predicates (a triple for RDF, a role for OWL)  and 
> atomic unary predicates (a class in OWL).
> 
> By adopting the 'trivial' semantics above, it is impossible to  
> correctly capture correctly, for example, the function-free horn clause 
> fragment of SWRL (which is, if you think a little about it, a special 
> case of the above but with FOL semantics); basically none (but one) of 
> the approaches surveyed in [1] would be captured  correctly; and 100% of 
> the use cases in <http://www.w3.org/2005/rules/ 
> wg/wiki/Managing_incomplete_information>, while perfectly expressible  
> in the trivial setting, would miserably fail.
> 
> So, while I believe that there should be room for the 'trivial'  
> semantics above, RIF should try to characterise also the several  
> alternative approaches as known in the literature.

No argument here.  Yes, the WG should be required to investigate this.
I only say that the "query language" that deals with "integrated model 
theories" is a *new* query language, and the unified model theory is needed to 
interpret any such query.  Even if it *looks like* SPARQL, the semantics of 
the query is not RDF semantics per se; it is rather the RIF-meets-RDF semantics.

The issue that motivated the contribution (from both François and me) is 
whether we can "extend" a query language like SPARQL into RIF with any notion 
of compatibility.  What I understood François to say is that you only get 
"SPARQL compatibility" by encapsulating SPARQL queries -- the 'trivial' 
semantics -- and I agree with that point.  Whether/when it is possible to get 
RDF-compatible results from a RIF query that uses the integrated RIF-meets-RDF 
model theory, and how the syntax of that query relates to the SPARQL syntax, 
are (IMO) open issues.  The point is that RDF and SPARQL do not define 
"compatibility" in this case; the unified RIF-meets-RDF semantics is the 
definition of "compatibility".

And in that area, I am inclined to agree with François that we will not solve 
that problem to anyone's satisfaction in a year.  (I see from your paper that 
you have reason to disagree with that position.)  But that is all the more 
reason why we should not begin by trying to "extend" a language like SPARQL. 
We can't do that without first agreeing on the "unified framework", and the 
resulting relationship to SPARQL will be "a superset of a subset with a 
modified interpretation".

> [1] Enrico Franconi and Sergio Tessaris (2004). Rules and Queries with 
> Ontologies: a Unified Logical Framework. Workshop on Principles  and 
> Practice of Semantic Web Reasoning (PPSWR'04).
> <http://www.inf.unibz.it/%7Efranconi/papers/ppswr-04.pdf>

Thank you for clarifying this.

-Ed

-- 
Edward J. Barkmeyer                        Email: edbark@nist.gov
National Institute of Standards & Technology
Manufacturing Systems Integration Division
100 Bureau Drive, Stop 8263                Tel: +1 301-975-3528
Gaithersburg, MD 20899-8263                FAX: +1 301-975-4482

"The opinions expressed above do not reflect consensus of NIST,
  and have not been reviewed by any Government authority."
Received on Thursday, 26 January 2006 00:22:31 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:33:26 GMT