Re: Safe rules in SWRL

Enrico Franconi wrote:
>  From the latest SWRL document:
> "As usual, only variables that occur in the antecedent of a rule may
> occur in the consequent (a condition usually referred to as "safety").
> This safety condition does not, in fact, restrict the expressive power
> of the language (because existentials can already be captured using OWL
> someValuesFrom restrictions)."
 >
 > I believe that the safety condition does restrict the expressive power
 > of the language, since a rule with a conjunction of atoms in the
 > consequent with joint existential variables can not be transformed into
 > multiple rules each with an atomic consequent. Moreover, even in the
 > case of a rule with an atomic consequent with existential variables,
 > you need an ontology language with inverse roles, otherwise
 > existentials can not fully encoded in the ontology.
 >
 > Am I wrong?
 > cheers
 > --e.

In rules, all variables are implicitly universally quantified, right?
The only existentials in the head would come from someValuesFrom 
restrictions in the head, right?
but, for this existentials you don't have a variable, or no? I.e.,
the part which is existentially quantified does not appear syntactically:
i.e

  C(?x)  => \exists ?y R(?x,?y)

amounts in abstract syntax to:

Implies(Antecedent (C(?x))
         Consequent(restriction R someValues(C)(?x)

yes? So, I don't see the problem. I am not sure whether I got it right. 
Can you explain in more detail?

best,
axel



-- 
Dr. Axel Polleres
Digital Enterprise Research Institute - DERI Innsbruck
Institute of Computer Science, University of Innsbruck
+43-512-507/6486               Axel.Polleres@deri.org
http://homepage.uibk.ac.at/~c703262/

Received on Thursday, 18 November 2004 13:01:39 UTC