@Override public EquivalentClassesEntailmentQuery visit( final ElkEquivalentClassesAxiom axiom) { final List<? extends ElkClassExpression> elkClassExpressions = axiom .getClassExpressions(); final List<SubClassOfEntailmentQuery> subsumptionCycle = new ArrayList<SubClassOfEntailmentQuery>( elkClassExpressions.size()); ElkClassExpression elkSubclass = elkClassExpressions .get(elkClassExpressions.size() - 1); for (int i = 0; i < elkClassExpressions.size(); i++) { final ElkClassExpression elkSuperclass = elkClassExpressions.get(i); final SubClassOfEntailmentQuery subsumption = visit( elkFactory_.getSubClassOfAxiom(elkSubclass, elkSuperclass)); subsumptionCycle.add(subsumption); elkSubclass = elkSuperclass; } return new EquivalentClassesEntailmentQuery( new EquivalentClassesAxiomEntailmentImpl(axiom), subsumptionCycle); }
@Override public EquivalentClassesEntailmentQuery visit( final ElkEquivalentClassesAxiom axiom) { final List<? extends ElkClassExpression> elkClassExpressions = axiom .getClassExpressions(); final List<SubClassOfEntailmentQuery> subsumptionCycle = new ArrayList<SubClassOfEntailmentQuery>( elkClassExpressions.size()); ElkClassExpression elkSubclass = elkClassExpressions .get(elkClassExpressions.size() - 1); for (int i = 0; i < elkClassExpressions.size(); i++) { final ElkClassExpression elkSuperclass = elkClassExpressions.get(i); final SubClassOfEntailmentQuery subsumption = visit( elkFactory_.getSubClassOfAxiom(elkSubclass, elkSuperclass)); subsumptionCycle.add(subsumption); elkSubclass = elkSuperclass; } return new EquivalentClassesEntailmentQuery( new EquivalentClassesAxiomEntailmentImpl(axiom), subsumptionCycle); }
@Override public EquivalentClassesEntailmentQuery visit( final ElkEquivalentClassesAxiom axiom) { final List<? extends ElkClassExpression> elkClassExpressions = axiom .getClassExpressions(); final List<SubClassOfEntailmentQuery> subsumptionCycle = new ArrayList<SubClassOfEntailmentQuery>( elkClassExpressions.size()); ElkClassExpression elkSubclass = elkClassExpressions .get(elkClassExpressions.size() - 1); for (int i = 0; i < elkClassExpressions.size(); i++) { final ElkClassExpression elkSuperclass = elkClassExpressions.get(i); final SubClassOfEntailmentQuery subsumption = visit( elkFactory_.getSubClassOfAxiom(elkSubclass, elkSuperclass)); subsumptionCycle.add(subsumption); elkSubclass = elkSuperclass; } return new EquivalentClassesEntailmentQuery( new EquivalentClassesAxiomEntailmentImpl(axiom), subsumptionCycle); }
@Override public SameIndividualEntailmentQuery visit( final ElkSameIndividualAxiom axiom) { final List<? extends ElkIndividual> individuals = axiom .getIndividuals(); final List<ElkClassExpression> nominals = new ArrayList<ElkClassExpression>( individuals.size()); for (final ElkIndividual individual : individuals) { nominals.add(elkFactory_.getObjectOneOf(individual)); } final EquivalentClassesEntailmentQuery equivalence = visit( elkFactory_.getEquivalentClassesAxiom(nominals)); return new SameIndividualEntailmentQuery( new SameIndividualAxiomEntailmentImpl(axiom), equivalence); }
@Override public SameIndividualEntailmentQuery visit( final ElkSameIndividualAxiom axiom) { final List<? extends ElkIndividual> individuals = axiom .getIndividuals(); final List<ElkClassExpression> nominals = new ArrayList<ElkClassExpression>( individuals.size()); for (final ElkIndividual individual : individuals) { nominals.add(elkFactory_.getObjectOneOf(individual)); } final EquivalentClassesEntailmentQuery equivalence = visit( elkFactory_.getEquivalentClassesAxiom(nominals)); return new SameIndividualEntailmentQuery( new SameIndividualAxiomEntailmentImpl(axiom), equivalence); }
@Override public SameIndividualEntailmentQuery visit( final ElkSameIndividualAxiom axiom) { final List<? extends ElkIndividual> individuals = axiom .getIndividuals(); final List<ElkClassExpression> nominals = new ArrayList<ElkClassExpression>( individuals.size()); for (final ElkIndividual individual : individuals) { nominals.add(elkFactory_.getObjectOneOf(individual)); } final EquivalentClassesEntailmentQuery equivalence = visit( elkFactory_.getEquivalentClassesAxiom(nominals)); return new SameIndividualEntailmentQuery( new SameIndividualAxiomEntailmentImpl(axiom), equivalence); }
@Override public DisjointClassesEntailmentQuery visit( final ElkDisjointClassesAxiom axiom) { final List<? extends ElkClassExpression> disjoint = axiom .getClassExpressions(); final int size = disjoint.size(); final List<SubClassOfEntailmentQuery> premises = new ArrayList<SubClassOfEntailmentQuery>( size); for (int first = 0; first < size - 1; first++) { for (int second = first + 1; second < size; second++) { final SubClassOfEntailmentQuery subsumption = visit(elkFactory_ .getSubClassOfAxiom(elkFactory_.getObjectIntersectionOf( disjoint.get(first), disjoint.get(second)), elkFactory_.getOwlNothing())); premises.add(subsumption); } } return new DisjointClassesEntailmentQuery( new DisjointClassesAxiomEntailmentImpl(axiom), premises); }
@Override public DifferentIndividualsEntailmentQuery visit( final ElkDifferentIndividualsAxiom axiom) { final List<? extends ElkIndividual> individuals = axiom .getIndividuals(); final List<ElkClassExpression> nominals = new ArrayList<ElkClassExpression>( individuals.size()); for (final ElkIndividual individual : individuals) { nominals.add(elkFactory_.getObjectOneOf(individual)); } final DisjointClassesEntailmentQuery disjointness = visit( elkFactory_.getDisjointClassesAxiom(nominals)); return new DifferentIndividualsEntailmentQuery( new DifferentIndividualsAxiomEntailmentImpl(axiom), disjointness); }
@Override public DifferentIndividualsEntailmentQuery visit( final ElkDifferentIndividualsAxiom axiom) { final List<? extends ElkIndividual> individuals = axiom .getIndividuals(); final List<ElkClassExpression> nominals = new ArrayList<ElkClassExpression>( individuals.size()); for (final ElkIndividual individual : individuals) { nominals.add(elkFactory_.getObjectOneOf(individual)); } final DisjointClassesEntailmentQuery disjointness = visit( elkFactory_.getDisjointClassesAxiom(nominals)); return new DifferentIndividualsEntailmentQuery( new DifferentIndividualsAxiomEntailmentImpl(axiom), disjointness); }
@Override public DifferentIndividualsEntailmentQuery visit( final ElkDifferentIndividualsAxiom axiom) { final List<? extends ElkIndividual> individuals = axiom .getIndividuals(); final List<ElkClassExpression> nominals = new ArrayList<ElkClassExpression>( individuals.size()); for (final ElkIndividual individual : individuals) { nominals.add(elkFactory_.getObjectOneOf(individual)); } final DisjointClassesEntailmentQuery disjointness = visit( elkFactory_.getDisjointClassesAxiom(nominals)); return new DifferentIndividualsEntailmentQuery( new DifferentIndividualsAxiomEntailmentImpl(axiom), disjointness); }
@Override public DisjointClassesEntailmentQuery visit( final ElkDisjointClassesAxiom axiom) { final List<? extends ElkClassExpression> disjoint = axiom .getClassExpressions(); final int size = disjoint.size(); final List<SubClassOfEntailmentQuery> premises = new ArrayList<SubClassOfEntailmentQuery>( size); for (int first = 0; first < size - 1; first++) { for (int second = first + 1; second < size; second++) { final SubClassOfEntailmentQuery subsumption = visit(elkFactory_ .getSubClassOfAxiom(elkFactory_.getObjectIntersectionOf( disjoint.get(first), disjoint.get(second)), elkFactory_.getOwlNothing())); premises.add(subsumption); } } return new DisjointClassesEntailmentQuery( new DisjointClassesAxiomEntailmentImpl(axiom), premises); }
@Override public DisjointClassesEntailmentQuery visit( final ElkDisjointClassesAxiom axiom) { final List<? extends ElkClassExpression> disjoint = axiom .getClassExpressions(); final int size = disjoint.size(); final List<SubClassOfEntailmentQuery> premises = new ArrayList<SubClassOfEntailmentQuery>( size); for (int first = 0; first < size - 1; first++) { for (int second = first + 1; second < size; second++) { final SubClassOfEntailmentQuery subsumption = visit(elkFactory_ .getSubClassOfAxiom(elkFactory_.getObjectIntersectionOf( disjoint.get(first), disjoint.get(second)), elkFactory_.getOwlNothing())); premises.add(subsumption); } } return new DisjointClassesEntailmentQuery( new DisjointClassesAxiomEntailmentImpl(axiom), premises); }