Search Mailing List Archives

Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-owl] if SWRL rules make difference in reasoning process?

Przemek teonacatl at
Wed Oct 22 09:15:21 PDT 2008

I am using Protege 3.4(built 506), along with the 'family' ontology. The 
ontology has some SWRL rules defined, like:

family:Person(?family:x)  ∧
family:hasParent(?family:x, ?family:y)  ∧
family:hasSister(?family:y, ?family:z) 
  → family:hasAunt(?family:x, ?family:z)

and a few similar ones. By default, they are all ticked (enabled).

Now, when I run the reasoner(Pellet), it inferres the following:

family.swrl.owl#Child)	Moved from family:Person to family:Relative
family.swrl.owl#Parent)	Moved from family:Person to family:Relative
family.swrl.owl#Sibling)	Moved from family:Person to family:Relative

But, when I disable the SWRL rules, and run the reasoner again, the output is 
completely the same.

My questions are:
Is it the reasoner's job to include these rules in reasoning process? Or maybe, 
is there a button for executing them somewhere? Or do they not make any 

Am I missing something? :)

Basicaly what I am trying to do, is to write a query which could inferre 
somthing from defined assertions like:
if (child(y) which hasFather(y,x) and fatherHasWife(x,z)) then hasMom(y,z):

[[hasFather(y,x) AND father(x) AND hasWife(x,z) AND wife(z)] => hasMother(y,z)]

(or any other. this is just an example)

I am sorry for asking such questions, but I am realy trying to understand all 
this mechanism. So far, without any progress.

More information about the protege-owl mailing list