Re: OWL reasoning in rules - infinite domains and queries

On 30 May 2007, at 19:08, Matt Williams wrote:

> Dear All,
> Following on from this discussion, and Ulrike's paper, if we have  
> infinite (inferred) individuals, such as chains of fathers or  
> Guards, and we query the ontology, what is returned?
> Would a query of the form Guard(x) or Father(x) return an infinite  
> number of bindings? Or can we restrict it to "Known" individuals  
> (which seems to be what Ulrike's paper suggests). Is this similar  
> to what you can do with some of the SPARQL implementations (e.g. in  
> Pellet) where you can allow/ disallow bNodes - or is this distinct  
> (I suspect they're different - the rdf graph is not, I hope,  
> infinite).

Let's consider the traditional service of instance retrieval (as,  
say, presented in the DIG interface). This is, by definition, only of  
named individuals, so no problems there.

In conjunctive queries, it depends on what "kind" of variable you  
use. Traditionally in DL systems, there have been two kinds of  
variables, distinguished and non-distinguished. Distinguished  
variables appear in the head of the query (i.e., the SELECT bit) and  
are reported in the results as a column. They also, traditionally,  
have been restricted to the named individuals, or, as it is sometimes  
known, the "active domain". Non-distinguished variables appear only  
in the body and are not reported back and range over arbitrary  
elements of the domain. These are similar to just having an  
existential restriction atom (though they are more expressive as they  
can do cycles).

Pellet is the only reasoner I know of that supports non-distinguished  

Variables that *report back* arbitrary domain elements do, indeed,  
have challenges (these would be analogous to variables in SPARQL over  
rdf; they can be tricky even for simple entailment). See my ROW  
sparql tutorial for some discussion:


Received on Wednesday, 30 May 2007 19:37:22 UTC