[Pellet-users] bug report - Pellet 1.5.1.direct reasoning unsound while OK with DIG

Michael Grove mike at clarkparsia.com
Wed Feb 13 13:22:47 UTC 2008


I get the expected behavior calling Pellet directly:

             OntModel aModel =  
com.hp.hpl.jena.rdf.model.ModelFactory.createOntologyModel 
(PelletReasonerFactory.THE_SPEC);
             aModel.read("file:///Users/mhgrove/Desktop/ 
test_union.owl");

             aModel.prepare();
             ExtendedIterator eIter = aModel.getIndividual("http:// 
www.owl-ontologies.com/ 
Ontology1202889605.owl#individual_1").listRDFTypes(false);
             while (eIter.hasNext()) {
                 System.err.println(eIter.next());
             }
             eIter.close();

This prints:

http://www.w3.org/2002/07/owl#Thing
http://www.owl-ontologies.com/Ontology1202889605.owl#Class_4
http://www.owl-ontologies.com/Ontology1202889605.owl#Class_1
http://www.owl-ontologies.com/Ontology1202889605.owl#Class_2

Class_4 is in there, as you were expecting.  This would appear to be  
an issue with Protege's direct Pellet interface and not Pellet itself.

Cheers,

Mike

On Feb 13, 2008, at 5:44 AM, Raphael Coulonvaux wrote:

>   Hi,
>
> I am using Protegé 3.4 build 125 and I am experiencing a problem  
> when using Pellet 1.5.1. direct reasoning.
> The problem does not occur while using Pellet 1.5.1 through DIG but  
> this is not a usable workaround because of the DIG too strong  
> limitations (e.g. hasValue, cardinality, ... not supported).
> The problem is the wrong computation of inferred types with a class  
> being equivalent to the union of two other classes.
>
> You will find my (very small) test ontology in attachment but here  
> is the detailed description of the problem :
>
> I have four classes :
> - Class_1,
> - Class_2,
> - Class_3 and
> - Class_4.
>
> I have only one instance in my test ontology : individual_1 being  
> asserted as instance of Class_1.
>
> Class_2 is equivalent to Class_1 and not surprisingly, individual_1  
> is inferred as being an instance of Class_2, Pellet 1.5.1. being  
> used directly or through DIG - no problemo so far.
>
> Class_4 is equivalent to the UNION of Class_1 and Class_3 and  
> therefore, individual_1 should be inferred as being an instance of  
> Class_4.
> Unfortunately (hélas, c'est là qu'est l'os ;-), this INFERENCE  
> OCCURS ONLY WHEN asking Pellet 1.5.1. to compute inferred type  
> THROUGH DIG : the same computation of inferred types using Pellet  
> 1.5.1. in DIRECT mode does NOT infer individual_1 has being an  
> instance of Class_4 !!!
>
> Raphaël Coulonvaux<test_union.owl>
> _______________________________________________
> 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