@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { EntailedAxiomTree root = new EntailedAxiomTree(entailment); List<OWLAxiom> sortedAxioms = new ArrayList<>(axioms); Collections.sort(sortedAxioms, Comparator.comparing(renderer::render)); sortedAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; } }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> current) { currentExplanation = new HashSet<>(current); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : current) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { currentExplanation = new HashSet<>(axioms); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : axioms) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { EntailedAxiomTree root = new EntailedAxiomTree(entailment); List<OWLAxiom> sortedAxioms = new ArrayList<>(axioms); Collections.sort(sortedAxioms, Comparator.comparing(renderer::render)); sortedAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; } }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { currentExplanation = new HashSet<>(axioms); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : axioms) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { EntailedAxiomTree root = new EntailedAxiomTree(entailment); List<OWLAxiom> sortedAxioms = new ArrayList<>(axioms); Collections.sort(sortedAxioms, Comparator.comparing(renderer::render)); sortedAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; } }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> current) { currentExplanation = new HashSet<>(current); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : current) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { EntailedAxiomTree root = new EntailedAxiomTree(entailment); List<OWLAxiom> sortedAxioms = new ArrayList<>(axioms); Collections.sort(sortedAxioms, Comparator.comparing(renderer::render)); sortedAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; } }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { currentExplanation = new HashSet<>(axioms); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : axioms) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { EntailedAxiomTree root = new EntailedAxiomTree(entailment); List<OWLAxiom> sortedAxioms = new ArrayList<OWLAxiom>(); Collections.sort(sortedAxioms, new Comparator<OWLAxiom>() { public int compare(OWLAxiom o1, OWLAxiom o2) { return renderer.render(o1).compareTo(renderer.render(o2)); } }); for(OWLAxiom ax : sortedAxioms) { root.addChild(new ExplanationTree(ax)); } return root; } }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> current) { currentExplanation = new HashSet<>(current); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : current) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> current) { currentExplanation = new HashSet<>(current); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : current) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
@Override public ExplanationTree getOrderedExplanation(OWLAxiom entailment, Set<OWLAxiom> axioms) { currentExplanation = new HashSet<>(axioms); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); insertChildren(seedExtractor.getSource(entailment), root); OWLEntity currentTarget = seedExtractor.getTarget(entailment); Set<OWLAxiom> axs = root.getUserObjectClosure(); List<OWLAxiom> rootAxioms = new ArrayList<>(); for (OWLAxiom ax : axioms) { if (!axs.contains(ax)) { rootAxioms.add(ax); } } Set<OWLAxiom> targetAxioms = getTargetAxioms(currentTarget); Collections.sort(rootAxioms, (o1, o2) -> { if (targetAxioms.contains(o1)) { return 1; } if (targetAxioms.contains(o2)) { return -1; } return 0; }); rootAxioms.forEach(ax -> root.addChild(new ExplanationTree(ax))); return root; }
currentExplanation = new HashSet<>(axioms); buildIndices(); ExplanationTree root = new EntailedAxiomTree(entailment); currentSource = seedExtractor.getSource(entailment); insertChildren(currentSource, root);
ExplanationTree root = new EntailedAxiomTree(entailment); currentSource = seedExtractor.getSource(entailment); insertChildren(currentSource, root);