It looks like inconsistent Pellet behaivour:
This fragment causes Pellet generate warning, and report inconsistency in the SWOOP:
<rdf:Description rdf:about="http://www.owl-ontologies.com/animals.owl#isStriped">
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
<rdfs:domain rdf:resource="http://www.owl-ontologies.com/animals.owl#Tiger"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</rdf:Description>
<rdf:Description rdf:about="http://www.owl-ontologies.com/animals.owl#Tiger_1">
<rdf:type rdf:resource="http://www.owl-ontologies.com/animals.owl#Tiger"/>
<animals:hasColor
rdf:resource="http://www.owl-ontologies.com/animals.owl#Yellow"/>
<animals:isStriped>true</animals:isStriped>
</rdf:Description>
and the following does not
<?xml version="1.0"?>
<rdf:RDF
xmlns="http://www.owl-ontologies.com/Ontology1147788277.owl#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xml:base="http://www.owl-ontologies.com/Ontology1147788277.owl">
<owl:Ontology rdf:about=""/>
<owl:Class rdf:ID="Class_2">
<rdfs:subClassOf>
<owl:Class rdf:ID="Class_1"/>
</rdfs:subClassOf>
</owl:Class>
<owl:ObjectProperty rdf:ID="objectProperty_1">
<rdfs:domain rdf:resource="#Class_1"/>
<rdfs:range rdf:resource="#Class_2"/>
</owl:ObjectProperty>
<owl:DatatypeProperty rdf:ID="datatypeProperty_3">
<rdfs:domain rdf:resource="#Class_2"/>
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</owl:DatatypeProperty>
<Class_2 rdf:ID="Class_2_2">
<objectProperty_1>
<Class_2 rdf:ID="Class_2_3">
<objectProperty_1 rdf:resource="#Class_2_3"/>
<datatypeProperty_3 rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>false</datatypeProperty_3>
</Class_2>
</objectProperty_1>
<datatypeProperty_3 rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>false</datatypeProperty_3>
</Class_2>
<Class_2 rdf:ID="Class_2_4">
<objectProperty_1 rdf:resource="#Class_2_2"/>
<datatypeProperty_3 rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean"
>true</datatypeProperty_3>
</Class_2>
</rdf:RDF>
Here is stack of Pellet:
org.mindswap.pellet.exceptions.InconsistentOntologyException: Cannot do
reasoning with inconsistent ontologies!
at org.mindswap.pellet.KnowledgeBase.ensureConsistency(KnowledgeBase.java:778)
at org.mindswap.pellet.KnowledgeBase.retrieve(KnowledgeBase.java:2307)
at org.mindswap.pellet.KnowledgeBase.getInstances(KnowledgeBase.java:1653)
at
org.mindswap.pellet.jena.PelletInfGraph.instanceIterator(PelletInfGraph.java:896)
at org.mindswap.pellet.jena.PelletInfGraph.findInABox(PelletInfGraph.java:394)
at
org.mindswap.pellet.jena.PelletInfGraph.findWithContinuation(PelletInfGraph.java:192)
at com.hp.hpl.jena.reasoner.BaseInfGraph.graphBaseFind(BaseInfGraph.java:333)
at com.hp.hpl.jena.graph.impl.GraphBase.find(GraphBase.java:241)
at com.hp.hpl.jena.rdf.model.impl.ModelCom.listStatements(ModelCom.java:364)
at com.hp.hpl.jena.rdf.model.impl.ModelCom.listStatements(ModelCom.java:369)
at com.hp.hpl.jena.ontology.impl.OntClassImpl.listInstances(OntClassImpl.java:637) |