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] FW: SWRL rule problem : y isSiblingOf y

Ramnath, Vasudha vasu at i2r.a-star.edu.sg
Fri Sep 1 01:07:46 PDT 2006


Hi,

 

Oops !  Could it be that swrlb:notEqual doesn’t support user-defined types ?

did you look a the SWRLBuiltInBridge page ?

 

--Vasudha

 

 

________________________________

From: protege-owl-bounces at lists.stanford.edu [mailto:protege-owl-bounces at lists.stanford.edu] On Behalf Of Laurent Kevers
Sent: Friday, September 01, 2006 4:57 PM
To: User support for the Protege-OWL editor
Subject: Re: [protege-owl] FW: SWRL rule problem : y isSiblingOf y

 

Hi,

Thanks for your help ! I tried the swrlb:notEqual() but it makes an error (see below). Someone know what's the problem with that ? I also tried to use differentFrom() : no error but no result. The rule doesn't produces any inference...

Laurent

Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: jess.Value.symbolValue(Ljess/Context;)Ljava/lang/String;
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.jess.SWRLJessBridge.createInfoFromValue(Unknown Source)
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.jess.SWRLJessBridge.access$100(Unknown Source)
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.jess.SWRLJessBridge$InvokeSWRLBuiltInUserFunction.call(Unknown Source)
≫・・・at jess.ep.a(Unknown Source)
≫・・・at jess.Funcall.execute(Unknown Source)
≫・・・at jess.FuncallValue.resolveValue(Unknown Source)
≫・・・at jess.Test1.doTest(Unknown Source)
≫・・・at jess.NodeJoin.a(Unknown Source)
≫・・・at jess.NodeJoin.callNodeLeft(Unknown Source)
≫・・・at jess.NodeJoin.int(Unknown Source)
≫・・・at jess.Node2.if(Unknown Source)
≫・・・at jess.Node2.a(Unknown Source)
≫・・・at jess.Node2.a(Unknown Source)
≫・・・at jess.Node1.for(Unknown Source)
≫・・・at jess.bd.a(Unknown Source)
≫・・・at jess.Node1.for(Unknown Source)
≫・・・at jess.am.a(Unknown Source)
≫・・・at jess.Rete.a(Unknown Source)
≫・・・at jess.ax.a(Unknown Source)
≫・・・at jess.Rete.addDefrule(Unknown Source)
≫・・・at jess.Jesp.a(Unknown Source)
≫・・・at jess.Jesp.do(Unknown Source)
≫・・・at jess.Jesp.int(Unknown Source)
≫・・・at jess.Jesp.for(Unknown Source)
≫・・・at jess.Jesp.parse(Unknown Source)
≫・・・at jess.Rete.executeCommand(Unknown Source)
≫・・・at jess.Rete.executeCommand(Unknown Source)
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.jess.SWRLJessBridge.executeCommand(Unknown Source)
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.jess.SWRLJessBridge.defineRule(Unknown Source)
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.SWRLRuleEngineBridge.exportSWRLRules(Unknown Source)
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.SWRLRuleEngineBridge.exportSWRLRulesAndOWLKnowledge(Unknown Source)
≫・・・at edu.stanford.smi.protegex.owl.swrl.bridge.jess.ui.JessControlPanel$ImportActionListener.actionPerformed(Unknown Source)
≫・・・at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
≫・・・at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
≫・・・at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
≫・・・at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
≫・・・at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
≫・・・at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:231)
≫・・・at java.awt.Component.processMouseEvent(Component.java:5488)
≫・・・at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
≫・・・at java.awt.Component.processEvent(Component.java:5253)
≫・・・at java.awt.Container.processEvent(Container.java:1966)
≫・・・at java.awt.Component.dispatchEventImpl(Component.java:3955)
≫・・・at java.awt.Container.dispatchEventImpl(Container.java:2024)
≫・・・at java.awt.Component.dispatchEvent(Component.java:3803)
≫・・・at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
≫・・・at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
≫・・・at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
≫・・・at java.awt.Container.dispatchEventImpl(Container.java:2010)
≫・・・at java.awt.Window.dispatchEventImpl(Window.java:1774)
≫・・・at java.awt.Component.dispatchEvent(Component.java:3803)
≫・・・at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
≫・・・at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
≫・・・at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
≫・・・at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
≫・・・at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
≫・・・at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)



Ramnath, Vasudha wrote: 

 
Hi
 
I guess you should add a swrlb:notEqual(?x, ?y) clause and try.
since Person(?x) and Person(?y) will each match all the instances of Persons and the Person X Person space will have (Anna, Anna) etc.. too ?
 
 
rgds
--Vasudha
 
 
 
-----Original Message-----
From: protege-owl-bounce at crg-gw.Stanford.EDU [mailto:protege-owl-bounce at crg-gw.Stanford.EDU] On Behalf Of Laurent Kevers
Sent: Thursday, August 31, 2006 10:34 PM
To: protege-owl at smi.stanford.edu
Subject: [protege-owl] SWRL rule problem : y isSiblingOf y
 
Hi all,
 
I try to use SWRL and Jess to write some basic rules... I have in my 
ontology a class "Person" and for this class the properties"hasName", 
"hasParent" and a "isSiblingOf". "isSiblingOf" is transitive and 
symmetric. I have 4 instances with the following properties :
 
person_1 : hasName 'Anna'
person_2 : hasName 'Michel'
person_3 : hasName 'Elise', hasParent 'person_1', hasParent 'person_2'
person_4 : hasName 'Paul', hasParent 'person_1', hasParent 'person_2'
 
I write the following rule to infer the "isSiblingOf" property between 
person_3 and person_4 (and the symmertic property between person_4 and 
person_3) :
 
Person(?x) ∧ Person(?y) ∧ hasParent(?x, ?a) ∧ hasParent(?x, ?b) ∧ 
hasParent(?y, ?a) ∧ hasParent(?y, ?b) → isSiblingOf(?x, ?y)
 
When I run this rule with Jess in the SWRL Tab, the result is 4 
"isSiblingOf" properties ! I obtain the 2 correct properties between 
person_3 and person_4 but also a wrong "isSiblingOf" between person_3 
and himself and person_4 and himself...
 
Where these two inferred properties come from (from my OWL ontology or 
from the SWRL rule) ? Where is the error with this ? Any idea ?
 
Thanks for your help,
 
Laurent Kevers
Research assistant
Cental - UCL
 
 
-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html
 
 
------------ Institute For Infocomm Research - Disclaimer -------------
This email is confidential and may be privileged.  If you are not the intended recipient, please delete it and notify us immediately. Please do not copy or use it for any purpose, or disclose its contents to any other person. Thank you.
--------------------------------------------------------
  
 



________________________________



 
_______________________________________________
protege-owl mailing list
protege-owl at lists.stanford.edu
https://mailman.stanford.edu/mailman/listinfo/protege-owl
  

 



------------ Institute For Infocomm Research - Disclaimer -------------
This email is confidential and may be privileged.  If you are not the intended recipient, please delete it and notify us immediately. Please do not copy or use it for any purpose, or disclose its contents to any other person. Thank you.
--------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.stanford.edu/pipermail/protege-owl/attachments/20060901/9e935200/attachment.html>


More information about the protege-owl mailing list