Work with Other Formats¶
Ontoplexis reads and writes exactly one document format: OWL/XML, because it is the OWL 2 structural specification serialized as XML. Everything else — format conversion, reasoning, profile checking — is a pre- or post-processing step with the OWLAPI-based tool you already use. This page shows the common recipes.
Convert to OWL/XML¶
With ROBOT, the OBO community's OWLAPI CLI:
Or export from Protégé (File → Save As… → OWL/XML Syntax), or call OWLAPI directly from Java/JPype. Then:
from pathlib import Path
from ontoplexis import Ontology
ont = Ontology.from_owlxml(Path("pizza.owx").read_text())
Convert from OWL/XML¶
The same in reverse — serialize, then convert:
Reason before loading¶
If you want inferred axioms in the graph, materialize them first:
robot reason --reasoner hermit --input pizza.owx \
--axiom-generators "SubClass ClassAssertion" \
convert --format owx --output pizza-inferred.owx
robot reason also fails on inconsistent ontologies, covering the
consistency-check use case; robot validate-profile reports OWL 2 profile
membership.
Why no built-in converter?¶
Earlier versions bundled OWLAPI as a subprocess bridge. It made every install carry a JVM dependency and a fat jar for what is a one-time preprocessing step in most pipelines. The reference implementation still guards the walker — the round-trip fidelity tests run OWLAPI as a development-only oracle — it just no longer ships.