OWLTools
-
What it is — OWLTools is a Java library and command-line toolkit that simplifies common OWLAPI operations, especially work with annotation properties and connections between classes. Its documented scope also includes sound transitive closure over large ontologies, ontology release building, ontology-based data mining and statistics, semantic similarity, class enrichment, and an NCBI Taxonomy-to-OWL converter.
-
Key concepts —
- Direct connectivity: determine whether classes are connected by restrictions such as
SubClassOf part_of some, including nested expressions, without an intermediate named object, and recover the relationship connecting them. - Indirect connectivity and closure: follow chains such as transitive
part_ofrelations to obtain ancestors; the docs contrast this traversal need with repeatedly testing or pre-naming class expressions for a DL reasoner. - Least Common Subsumers (LCSs): semantic similarity may require an LCS that includes class expressions, not only named classes—for example, preserving a shared quality or a shared
has_partrestriction. - Semantic similarity: compare individuals by properties in common using metrics the docs name, including Jaccard similarity and information-content measures over an LCS.
- Taxonomy modeling: the NCBI converter creates an OWL class per taxon, turns parent IDs into superclass links, uses stable OBO-style IRIs, and represents labels, cross-references, ranks, and typed synonym annotations.
- Direct connectivity: determine whether classes are connected by restrictions such as
-
How you’d use it — Download the prebuilt executable script/JAR, make the wrapper executable if necessary, add its directory to
PATH, and start withowltools -h; alternatively, build the Maven projects from a proper Git clone withmvn clean install. For NCBI Taxonomy conversion, provide the line-basedtaxonomy.datinput toncbi2owl.jarand produce OWL/XML; advanced modes can also serialize axioms to text so Unixsortanddiffcan compare representations. -
LLM angle — none stated
-
Pitfalls & lessons —
- A source build requires Git metadata: the build embeds branch, version, and date in the JAR manifest and fails when
.gitis absent, so a proper Git clone is required. - Skipping tests with
-DskipTestsis explicitly marked “Not Recommended”; normally any failed test stops the build. - NCBI conversion is resource-heavy: the documented input exceeds 200 MB, the resulting OWL file exceeds 800 MB, and conversion needs several GB of RAM.
- Comparing two OWL representations is described as tricky; the documented workaround is to serialize the OWLAPI axioms, sort them, and compare the sorted text.
- Some NCBI fields (
MGC IDandINCLUDES) are explicitly not handled.
- A source build requires Git metadata: the build embeds branch, version, and date in the JAR manifest and fails when
-
Verdict — A practical OWLAPI-based utility suite for ontology graph traversal, semantic-similarity support, release work, and large taxonomy conversion, rather than a general-purpose LLM or RAG framework.
Sources consulted
README.mdOWLTools-Core/README.txtOWLTools-NCBI/README.txtOWLTools-Oort/reporting/README.txtOWLTools-Runner/contrib/README.md