diff options
Diffstat (limited to 'src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderWithGap.java')
| -rw-r--r-- | src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderWithGap.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderWithGap.java b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderWithGap.java index e7bd188..67d07a8 100644 --- a/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderWithGap.java +++ b/src/uk/ac/ox/cs/pagoda/tracking/TrackingRuleEncoderWithGap.java | |||
| @@ -3,10 +3,12 @@ package uk.ac.ox.cs.pagoda.tracking; | |||
| 3 | import java.util.Collection; | 3 | import java.util.Collection; |
| 4 | import java.util.LinkedList; | 4 | import java.util.LinkedList; |
| 5 | 5 | ||
| 6 | import org.semanticweb.HermiT.model.AnnotatedEquality; | ||
| 6 | import org.semanticweb.HermiT.model.Atom; | 7 | import org.semanticweb.HermiT.model.Atom; |
| 7 | import org.semanticweb.HermiT.model.AtomicConcept; | 8 | import org.semanticweb.HermiT.model.AtomicConcept; |
| 8 | import org.semanticweb.HermiT.model.AtomicRole; | 9 | import org.semanticweb.HermiT.model.AtomicRole; |
| 9 | import org.semanticweb.HermiT.model.DLClause; | 10 | import org.semanticweb.HermiT.model.DLClause; |
| 11 | import org.semanticweb.HermiT.model.Equality; | ||
| 10 | import org.semanticweb.HermiT.model.Variable; | 12 | import org.semanticweb.HermiT.model.Variable; |
| 11 | import org.semanticweb.owlapi.model.OWLClass; | 13 | import org.semanticweb.owlapi.model.OWLClass; |
| 12 | import org.semanticweb.owlapi.model.OWLObjectProperty; | 14 | import org.semanticweb.owlapi.model.OWLObjectProperty; |
| @@ -83,11 +85,12 @@ public class TrackingRuleEncoderWithGap extends TrackingRuleEncoder { | |||
| 83 | } | 85 | } |
| 84 | 86 | ||
| 85 | DLClause newClause; | 87 | DLClause newClause; |
| 88 | headAtom = clause.getHeadAtom(0); | ||
| 86 | 89 | ||
| 87 | int offset = (clause.getBodyLength() == 1 && clause.getBodyAtom(0).getDLPredicate().toString().contains("owl:Nothing")) ? 1 : 2; | 90 | boolean equalityHead = headAtom.getDLPredicate() instanceof Equality || headAtom.getDLPredicate() instanceof AnnotatedEquality; |
| 91 | int offset = (equalityHead || (clause.getBodyLength() == 1 && clause.getBodyAtom(0).getDLPredicate().toString().contains("owl:Nothing"))) ? 1 : 2; | ||
| 88 | 92 | ||
| 89 | Atom[] newBodyAtoms = new Atom[clause.getBodyLength() + offset]; | 93 | Atom[] newBodyAtoms = new Atom[clause.getBodyLength() + offset]; |
| 90 | headAtom = clause.getHeadAtom(0); | ||
| 91 | newBodyAtoms[0] = Atom.create( | 94 | newBodyAtoms[0] = Atom.create( |
| 92 | getTrackingDLPredicate(headAtom.getDLPredicate()), | 95 | getTrackingDLPredicate(headAtom.getDLPredicate()), |
| 93 | DLClauseHelper.getArguments(headAtom)); | 96 | DLClauseHelper.getArguments(headAtom)); |
