robot-core/src/main/java/org/obolibrary/robot/ExplainOperation.java
public static String renderExplanationAsMarkdown(
      Explanation<OWLAxiom> explanation, OWLOntologyManager manager) {
    ExplanationOrderer orderer = new ProtegeExplanationOrderer(manager);
    ExplanationTree tree =
        orderer.getOrderedExplanation(explanation.getEntailment(), explanation.getAxioms());
    ShortFormProvider labelProvider =
        new AnnotationValueShortFormProvider(
            Collections.singletonList(OWLManager.getOWLDataFactory().getRDFSLabel()),
            Collections.emptyMap(),
            manager);
    ShortFormProvider linkProvider = new MarkdownLinkShortFormProvider(labelProvider);
    ManchesterOWLSyntaxOWLObjectRendererImpl axiomRenderer =
        new ManchesterOWLSyntaxOWLObjectRendererImpl();
    axiomRenderer.setShortFormProvider(linkProvider);
    return renderTree(tree, axiomRenderer);
  }
/**
   * Render an Explanation object as Markdown text, linking text labels to term IRIs and indenting
   * axioms.
   *
   * @param explanation explanation to render
   * @param manager OWLOntologyManager containing source ontologies for explanation axioms
   * @return Markdown-formatted explanation text
   */
Render an Explanation object as Markdown text, linking text labels to term IRIs and indenting
axioms.

@param explanation explanation to render
@param manager OWLOntologyManager containing source ontologies for explanation axioms
@return Markdown-formatted explanation text
Render an Explanation object as Markdown text linking text labels to term IRIs and indenting axioms . @param explanation explanation to render @param manager OWLOntologyManager containing source ontologies for explanation axioms @return Markdown - formatted explanation text
public static String renderExplanationAsMarkdown(
      Explanation<OWLAxiom> explanation, OWLOntologyManager manager) {
    ExplanationOrderer orderer = new ProtegeExplanationOrderer(manager);
    ExplanationTree tree =
        orderer.getOrderedExplanation(explanation.getEntailment(), explanation.getAxioms());
    ShortFormProvider labelProvider =
        new AnnotationValueShortFormProvider(
            Collections.singletonList(OWLManager.getOWLDataFactory().getRDFSLabel()),
            Collections.emptyMap(),
            manager);
    ShortFormProvider linkProvider = new MarkdownLinkShortFormProvider(labelProvider);
    ManchesterOWLSyntaxOWLObjectRendererImpl axiomRenderer =
        new ManchesterOWLSyntaxOWLObjectRendererImpl();
    axiomRenderer.setShortFormProvider(linkProvider);
    return renderTree(tree, axiomRenderer);
  }
public static String renderExplanationAsMarkdown ( Explanation < OWLAxiom > explanation , OWLOntologyManager manager ) { ExplanationOrderer orderer = new ProtegeExplanationOrderer ( manager ) ; ExplanationTree tree = orderer . getOrderedExplanation ( explanation . getEntailment ( ) , explanation . getAxioms ( ) ) ; ShortFormProvider labelProvider = new AnnotationValueShortFormProvider ( Collections . singletonList ( OWLManager . getOWLDataFactory ( ) . getRDFSLabel ( ) ) , Collections . emptyMap ( ) , manager ) ; ShortFormProvider linkProvider = new MarkdownLinkShortFormProvider ( labelProvider ) ; ManchesterOWLSyntaxOWLObjectRendererImpl axiomRenderer = new ManchesterOWLSyntaxOWLObjectRendererImpl ( ) ; axiomRenderer . setShortFormProvider ( linkProvider ) ; return renderTree ( tree , axiomRenderer ) ; }
Render an Explanation object as Markdown text, linking text labels to term IRIs and indenting
 axioms.
Render an Explanation object as Markdown text linking text labels to term IRIs and indenting axioms .