@Override public SubClassInclusionComposedSingletonObjectUnionOfMatch1 getSubClassInclusionComposedSingletonObjectUnionOfMatch1( SubClassInclusionComposed parent, IndexedContextRootMatch destinationMatch, ElkClassExpression disjunctMatch) { return new SubClassInclusionComposedSingletonObjectUnionOfMatch1(parent, destinationMatch, disjunctMatch); }
@Override public SubClassInclusionComposedMatch1 getPremiseMatch( ConclusionMatchExpressionFactory factory) { return factory.getSubClassInclusionComposedMatch1(getParent(), getDestinationMatch(), disjunctMatch_); }
@Override public String visit( SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1) { return inferenceMatch1.getParent() + " | "; }
@Override public Void visit( SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1) { SubClassInclusionComposedMatch1 premiseMatch1 = inferenceMatch1 .getPremiseMatch(conclusionFactory_); inferences_.add(premiseMatch1, inferenceMatch1); for (SubClassInclusionComposedMatch2 child : hierarchy_ .getChildren(premiseMatch1)) { (new SubClassInclusionComposedMatch2InferenceVisitor( inferenceFactory_, child)).visit(inferenceMatch1); } return null; }
@Override public Void visit( SubClassInclusionComposedSingletonObjectUnionOfMatch2 inferenceMatch2) { inferenceMatch2.getConclusionMatch(conclusionFactory_); // create ELK inferences IndexedContextRootMatch extendedDestinationMatch = inferenceMatch2 .getExtendedDestinationMatch(); SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1 = inferenceMatch2 .getParent(); ElkClassExpression disjunctMatch = inferenceMatch1.getDisjunctMatch(); List<ElkClassExpression> disjuncts = Collections .singletonList(disjunctMatch); elkInferenceFactory_ .getElkClassInclusionObjectUnionOfComposition(disjuncts, 0); elkInferenceFactory_.getElkClassInclusionHierarchy( toElkExpression(extendedDestinationMatch), disjunctMatch, conclusionFactory_.getObjectUnionOf(disjuncts)); return null; }
@Override public String visit( SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1) { return inferenceMatch1.getParent() + " | "; }
@Override public Void visit( SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1) { SubClassInclusionComposedMatch1 premiseMatch1 = inferenceMatch1 .getPremiseMatch(conclusionFactory_); inferences_.add(premiseMatch1, inferenceMatch1); for (SubClassInclusionComposedMatch2 child : hierarchy_ .getChildren(premiseMatch1)) { (new SubClassInclusionComposedMatch2InferenceVisitor( inferenceFactory_, child)).visit(inferenceMatch1); } return null; }
@Override public Void visit( SubClassInclusionComposedSingletonObjectUnionOfMatch2 inferenceMatch2) { inferenceMatch2.getConclusionMatch(conclusionFactory_); // create ELK inferences IndexedContextRootMatch extendedDestinationMatch = inferenceMatch2 .getExtendedDestinationMatch(); SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1 = inferenceMatch2 .getParent(); ElkClassExpression disjunctMatch = inferenceMatch1.getDisjunctMatch(); List<ElkClassExpression> disjuncts = Collections .singletonList(disjunctMatch); elkInferenceFactory_ .getElkClassInclusionObjectUnionOfComposition(disjuncts, 0); elkInferenceFactory_.getElkClassInclusionHierarchy( toElkExpression(extendedDestinationMatch), disjunctMatch, conclusionFactory_.getObjectUnionOf(disjuncts)); return null; }
@Override public SubClassInclusionComposedMatch1 getPremiseMatch( ConclusionMatchExpressionFactory factory) { return factory.getSubClassInclusionComposedMatch1(getParent(), getDestinationMatch(), disjunctMatch_); }
@Override public String visit( SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1) { return inferenceMatch1.getParent() + " | "; }
@Override public SubClassInclusionComposedSingletonObjectUnionOfMatch1 getSubClassInclusionComposedSingletonObjectUnionOfMatch1( SubClassInclusionComposed parent, IndexedContextRootMatch destinationMatch, ElkClassExpression disjunctMatch) { return new SubClassInclusionComposedSingletonObjectUnionOfMatch1(parent, destinationMatch, disjunctMatch); }
@Override public Void visit( SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1) { SubClassInclusionComposedMatch1 premiseMatch1 = inferenceMatch1 .getPremiseMatch(conclusionFactory_); inferences_.add(premiseMatch1, inferenceMatch1); for (SubClassInclusionComposedMatch2 child : hierarchy_ .getChildren(premiseMatch1)) { (new SubClassInclusionComposedMatch2InferenceVisitor( inferenceFactory_, child)).visit(inferenceMatch1); } return null; }
@Override public Void visit( SubClassInclusionComposedSingletonObjectUnionOfMatch2 inferenceMatch2) { inferenceMatch2.getConclusionMatch(conclusionFactory_); // create ELK inferences IndexedContextRootMatch extendedDestinationMatch = inferenceMatch2 .getExtendedDestinationMatch(); SubClassInclusionComposedSingletonObjectUnionOfMatch1 inferenceMatch1 = inferenceMatch2 .getParent(); ElkClassExpression disjunctMatch = inferenceMatch1.getDisjunctMatch(); List<ElkClassExpression> disjuncts = Collections .singletonList(disjunctMatch); elkInferenceFactory_ .getElkClassInclusionObjectUnionOfComposition(disjuncts, 0); elkInferenceFactory_.getElkClassInclusionHierarchy( toElkExpression(extendedDestinationMatch), disjunctMatch, conclusionFactory_.getObjectUnionOf(disjuncts)); return null; }
@Override public SubClassInclusionComposedMatch1 getPremiseMatch( ConclusionMatchExpressionFactory factory) { return factory.getSubClassInclusionComposedMatch1(getParent(), getDestinationMatch(), disjunctMatch_); }
@Override public SubClassInclusionComposedSingletonObjectUnionOfMatch1 getSubClassInclusionComposedSingletonObjectUnionOfMatch1( SubClassInclusionComposed parent, IndexedContextRootMatch destinationMatch, ElkClassExpression disjunctMatch) { return new SubClassInclusionComposedSingletonObjectUnionOfMatch1(parent, destinationMatch, disjunctMatch); }
@Override SubClassInclusionComposedMatch1 getConclusionMatch( ConclusionMatchExpressionFactory factory) { return factory.getSubClassInclusionComposedMatch1(getParent(), getDestinationMatch(), factory.getObjectUnionOf( Collections.singletonList(disjunctMatch_))); }
@Override SubClassInclusionComposedMatch1 getConclusionMatch( ConclusionMatchExpressionFactory factory) { return factory.getSubClassInclusionComposedMatch1(getParent(), getDestinationMatch(), factory.getObjectUnionOf( Collections.singletonList(disjunctMatch_))); }
@Override SubClassInclusionComposedMatch1 getConclusionMatch( ConclusionMatchExpressionFactory factory) { return factory.getSubClassInclusionComposedMatch1(getParent(), getDestinationMatch(), factory.getObjectUnionOf( Collections.singletonList(disjunctMatch_))); }