[Pellet-users] pellet.exceptions.InternalReasonerException XXX is not in the definition order

Ibach, Brandon L brandon.l.ibach at lmco.com
Wed Oct 24 22:59:42 UTC 2007


I agree with Evren that there's nothing in the given ontology to support
the equivalence of DrawNode2 and DrawNode, mainly because of the lack of
support for the disjointedness of WinNode, LoseNode and
DrawNode/DrawNode2.

Asserting that WinNode and DrawNode2 are disjoint did cause Pellet to
classify DrawNode2 as a subclass of DrawNode, as did changing the
unionOf(DrawNode2 WinNode) in DrawNode2's description to
complementOf(LoseNode).

However, getting Pellet to also classify DrawNode as a subclass of
DrawNode2 (which, in combination with DrawNode2 being a subclass of
DrawNode, would accomplish equivalency) would require some explicit
statements about DrawNode, I think.

It's an interesting exercise, in any case.  Care to explain a bit more
about the application driving the model?

-Brandon :)
 

> -----Original Message-----
> From: pellet-users-bounces at lists.owldl.com 
> [mailto:pellet-users-bounces at lists.owldl.com] On Behalf Of Evren Sirin
> Sent: Wednesday, October 24, 2007 1:24 PM
> To: Wolfgang May
> Cc: pellet-users at lists.owldl.com
> Subject: Re: [Pellet-users] 
> pellet.exceptions.InternalReasonerException XXX is not in the 
> definition order
> 
> On 10/24/07 11:12 AM, Wolfgang May wrote:
> > Hi, 
> >
> > On Wed, 17 Oct 2007, Evren Sirin wrote:
> >
> >   
> >> Hi Wolfgang,
> >>     
> >
> > [previous Thread: Pellet throws ConcurrentModificationException]
> >
> >   
> >> There were two issues [1, 2] identified as a result of 
> looking at the ontology
> >> you sent and both are fixed in the SVN now. But there were 
> also couple of
> >> syntax problems in the ontology that goes unnoticed by the 
> loader, does not
> >> generate any warnings or errors but produces results 
> different that the
> >> intention.
> >>     
> >
> > Thanks for the fix and the hints. We corrected everything 
> and it now 
> > works perfectly.
> >
> > With another example (Win-Move-Game), we now found an
> > InternalReasonerException (it disappears when removing the 
> > "owl:unionOf" line of the below code). 
> 
> That makes sense. The problem is DrawNode is not typed as a class and 
> Pellet's heuristics fails to identify it as a class. Adding 
> the type triple
> 
> :DrawNode a owl:Class .
> 
> would solve the problem. However, I don't get the intended 
> inference you 
> mention (:DrawNode2 owl:equivalentClass :DrawNode) and I don't see 
> anything in the ontology that would cause this inference.
> 
> Cheers,
> Evren
> 
> > Queries against the
> > ontology are answered, but it crashesd when classifying:
> >
> > ******
> > may at s2:~/teaching/SemWeb/RDF$ pellet -r -ifmt N3 -if axioms.n3
> > Input file: file:/homewap1/may/teaching/SemWeb/RDF/axioms.n3
> > org.mindswap.pellet.exceptions.InternalReasonerException: 
> > foo://bla/DrawNode is not in the definition order
> >         at 
> > 
> org.mindswap.pellet.taxonomy.CDOptimizedTaxonomyBuilder.addTol
> dSubsumer(CDOptimizedTaxonomyBuilder.java:585)
> >         at 
> > 
> org.mindswap.pellet.taxonomy.CDOptimizedTaxonomyBuilder.addTol
> dRelation(CDOptimizedTaxonomyBuilder.java:511)
> >         at 
> > 
> org.mindswap.pellet.taxonomy.CDOptimizedTaxonomyBuilder.comput
> eToldInformation(CDOptimizedTaxonomyBuilder.java:244)
> >         at 
> > 
> org.mindswap.pellet.taxonomy.CDOptimizedTaxonomyBuilder.prepar
> e(CDOptimizedTaxonomyBuilder.java:197)
> >         at 
> > 
> org.mindswap.pellet.taxonomy.CDOptimizedTaxonomyBuilder.classi
> fy(CDOptimizedTaxonomyBuilder.java:117)
> >         at 
> > org.mindswap.pellet.KnowledgeBase.classify(KnowledgeBase.java:1632)
> >         at 
> > org.mindswap.pellet.jena.OWLReasoner.classify(OWLReasoner.java:254)
> >         at org.mindswap.pellet.Pellet.doClassify(Pellet.java:308)
> >         at org.mindswap.pellet.Pellet.run(Pellet.java:461)
> >         at org.mindswap.pellet.Pellet.main(Pellet.java:900)
> > OWL Species: Full
> > DL Expressivity: ALC
> > Consistent: Yes
> > Exception: 
> org.mindswap.pellet.exceptions.InternalReasonerException: 
> > foo://bla/DrawNode is not in the definition order
> > *******
> >
> > ******* axioms.n3 ***********
> > @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
> > @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
> > @prefix owl: <http://www.w3.org/2002/07/owl#>.
> > @prefix owl11: <http://www.w3.org/2006/12/owl11#>.
> > @prefix : <foo://bla/>.
> >
> > :edge rdfs:domain :Node; rdfs:range :Node.
> > :Node a owl:Class; 
> >   owl:equivalentClass [owl:unionOf ( :WinNode :LoseNode 
> :DrawNode )].
> > :WinNode a owl:Class; owl:intersectionOf ( :Node
> >   [a owl:Restriction; owl:onProperty :edge; 
> owl:someValuesFrom :LoseNode]).
> > :LoseNode a owl:Class; owl:intersectionOf ( :Node
> >   [a owl:Restriction; owl:onProperty :edge; 
> owl:allValuesFrom :WinNode]).
> > :DrawNode2  a owl:Class; owl:intersectionOf ( :Node
> >   [a owl:Restriction; owl:onProperty :edge; 
> owl:someValuesFrom :DrawNode2]
> >    [a owl:Restriction; owl:onProperty :edge;
> >     owl:allValuesFrom [ owl:unionOf (:DrawNode2 :WinNode)]]).
> > *************
> >
> > (intention: to get :DrawNode2 owl:equivalentClass :DrawNode)
> >
> > Best,
> > Wolfgang
> >   
> 
> _______________________________________________
> Pellet-users mailing list
> Pellet-users at lists.owldl.com
> http://lists.owldl.com/mailman/listinfo/pellet-users
> _______________________________________________
> 
> Sponsored by Clark & Parsia, LLC http://clarkparsia.com/
> 


More information about the Pellet-users mailing list