ROBOT

- - - - - - - - - -
view on github
getting started
common errors
chaining commands
global options
makefile
- - - - - - - - - -
annotate
convert
diff
explain
extract
filter
materialize
merge
mirror
query
reason
reduce
relax
remove
repair
report
template
unmerge
validate
verify
- - - - - - - - - -
ROBOT is licensed under the
BSD 3-Clause License.
Theme by orderedlist

Explain

When reviewing inferred axioms, such as after applying the reason command, you may like more information about why a particular axiom was inferred:

robot explain --input uvula.ofn --reasoner ELK \
  --axiom "'uvular muscle' SubClassOf 'muscle organ' and 'part of' some 'jaw region'" \
  --explanation results/uvular_muscle.md

Here we provide an axiom in Manchester syntax. If that relationship is entailed by the axioms asserted in uvula.ofn, we can use the selected reasoner (here, ELK) to compute an explanation—a minimal set of axioms required to derive that inference. Reviewing inference explanations is an extremely useful tool for debugging ontology classification issues. The explanation is printed in Markdown format, which can be easily pasted and rendered within GitHub issues:

uvular muscle SubClassOf muscle organ and (part of some jaw region)

In addition to outputting the explanation axioms in Markdown using --explanation (or -e), an ontology containing just those axioms can be output with -o or passed to any subsequent chained commands:

robot explain --input uvula.ofn --reasoner ELK \
  --axiom "'uvular muscle' SubClassOf 'muscle organ' and 'part of' some 'jaw region'" \
  annotate --annotation rdfs:label "Uvular Muscle Explanation" \
  --ontology-iri "https://github.com/ontodev/robot/examples/uvular_muscle.ofn" \
  --output results/uvular_muscle.ofn

Finally, since there can be more than one way to derive an inference from an ontology, explain includes one more option, --max, which allows you to specify the maximum number of explanations to output (the default is 1).