Reputation: 51
I used the HermiT Reasoner for some time but wanted to try the Pellet Reasoner. But Pellet throws an error on startup. The Log is not helpful:
ERROR 22:28:49 An error occurred during reasoning: null.
java.lang.UnsupportedOperationException: null
at com.clarkparsia.pellet.datatypes.types.text.RestrictedTextDatatype.applyConstrainingFacet(RestrictedTextDatatype.java:93) ~[na:na]
at com.clarkparsia.pellet.datatypes.DatatypeReasonerImpl.getDataRange(DatatypeReasonerImpl.java:440) ~[na:na]
at com.clarkparsia.pellet.datatypes.DatatypeReasonerImpl.containedIn(DatatypeReasonerImpl.java:303) ~[na:na]
at com.clarkparsia.pellet.datatypes.DatatypeReasonerImpl.isSatisfiable(DatatypeReasonerImpl.java:704) ~[na:na]
at com.clarkparsia.pellet.datatypes.DatatypeReasonerImpl.isSatisfiable(DatatypeReasonerImpl.java:665) ~[na:na]
at org.mindswap.pellet.Literal.checkClash(Literal.java:339) ~[na:na]
at org.mindswap.pellet.Literal.addType(Literal.java:261) ~[na:na]
at org.mindswap.pellet.tableau.completion.CompletionStrategy.addType(CompletionStrategy.java:438) ~[na:na]
at com.clarkparsia.pellet.rules.ContinuousRulesStrategy.addType(ContinuousRulesStrategy.java:95) ~[na:na]
at org.mindswap.pellet.tableau.completion.rule.AllValuesRule.applyAllValues(AllValuesRule.java:175) ~[na:na]
at org.mindswap.pellet.tableau.completion.rule.SimpleAllValuesRule.applyAllValues(SimpleAllValuesRule.java:68) ~[na:na]
at org.mindswap.pellet.tableau.completion.CompletionStrategy.addType(CompletionStrategy.java:469) ~[na:na]
at com.clarkparsia.pellet.rules.ContinuousRulesStrategy.addType(ContinuousRulesStrategy.java:95) ~[na:na]
at org.mindswap.pellet.tableau.completion.rule.UnfoldingRule.applyUnfoldingRule(UnfoldingRule.java:98) ~[na:na]
at org.mindswap.pellet.tableau.completion.rule.UnfoldingRule.apply(UnfoldingRule.java:61) ~[na:na]
at org.mindswap.pellet.tableau.completion.rule.AbstractTableauRule.apply(AbstractTableauRule.java:64) ~[na:na]
at com.clarkparsia.pellet.rules.ContinuousRulesStrategy.complete(ContinuousRulesStrategy.java:311) ~[na:na]
at org.mindswap.pellet.ABox.isConsistent(ABox.java:1423) ~[na:na]
at org.mindswap.pellet.ABox.isConsistent(ABox.java:1260) ~[na:na]
at org.mindswap.pellet.KnowledgeBase.consistency(KnowledgeBase.java:1987) ~[na:na]
at org.mindswap.pellet.KnowledgeBase.isConsistent(KnowledgeBase.java:2061) ~[na:na]
at org.mindswap.pellet.KnowledgeBase.ensureConsistency(KnowledgeBase.java:2075) ~[na:na]
at org.mindswap.pellet.KnowledgeBase.classify(KnowledgeBase.java:2083) ~[na:na]
at com.clarkparsia.pellet.owlapiv3.PelletReasoner.precomputeInferences(PelletReasoner.java:1067) ~[na:na]
at org.protege.editor.owl.model.inference.OWLReasonerManagerImpl$ClassificationRunner.precompute(OWLReasonerManagerImpl.java:447) ~[na:na]
at org.protege.editor.owl.model.inference.OWLReasonerManagerImpl$ClassificationRunner.run(OWLReasonerManagerImpl.java:388) ~[na:na]
at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_121]
I think I missed the point to just go back and redo all changes. So what can I do?
I don't Know why, but the reasoner does not like
PAT_GNAME only xsd:string[maxLength 30]
but
PAT_FAMSTAND only xsd:string[maxLength 2]
is okay.
I tried to use
PAT_GNAME only string[maxLength 30]
as mentioned in the manchester syntax but protege does not like it.
So either protege or pellet does not like it.
Conclusion: I had a problem with my testdata, since i found it withe the help of your comments everything is working fine. Both PAT_GNAME and PAT_FAMSTAND work properly. Thanks!
Upvotes: 0
Views: 415