Skip to content

OntoLogos documentation

v1.1.4 Rust 1.88+ Python · Rust · npm · Wasmer

OntoLogos documentation

Embed OWL reasoning in your stack

Load OWL files, detect profiles, and classify or materialize in-process — no JVM. Rust and Python on crates.io/PyPI; Node and WASM on npm (WASM also on Wasmer); Java, .NET, and C/C++ via source build.

Install channels · Release status · Before you integrate · Start here

Pick the path that matches how you work:

  • Rust (crates.io)


    Download family.owl, add ontologos-core, ontologos-parser, and ontologos-rl, run RDFS materialization—no clone required.

    Five-minute guide

  • Python


    pip install ontologos — load OWL, classify with profile="auto", incremental mutations.

    Python guide

  • Node.js (npm)


    npm install ontologos — native N-API bindings (macOS, Linux, Windows).

    Node.js guide

  • WebAssembly


    npm install @ontologos/wasm · Wasmer eddiethedean/ontologos.

    WASM guide

  • CLI (git install)


    classify, materialize, explain — install from git (not crates.io).

    CLI installation

  • Evaluate


    Compare vs ELK, reasonable, and HermiT fixtures; 30-minute playbook. No Rust required: pip install ontologos + family.owl.

    Evaluator playbook

No clone required for most users

Use crates.io, PyPI, npm, or Wasmer. Clone to contribute, run benchmarks, build Java/.NET/C bindings, or build the CLI.

Rust 1.88+ for library users — see the Prerequisites decision table.

Before you integrate

Read Before you integrate — partial OWL mapping, import limits, and axiom count semantics.

Rust integrators

See the Rust integration contract — one page for load, classify, and consistency rules.

Preview profiles

alc and dl-preview are experimental. Production OWL DL uses profile="dl". See Profile stability.

What you need

Channel Link
Docs ontologos.readthedocs.io
crates.io ontologos-core and siblings
PyPI pip install ontologos
npm ontologos · @ontologos/wasm
Wasmer eddiethedean/ontologos
Rust API docs.rs/ontologos-core
Changelog project/changelog · GitHub

Documentation map

Area Start here
New users Before you integrate · Install channels · Start here
Examples Examples gallery
API choice Choosing an API · Profile stability
Evaluate Evaluator playbook · Evaluator scope · Comparison
Upgrade Migration hub · Release status

Learning path

New to OWL? Start with the Glossary and When not to use OntoLogos, then Python guide or Rust quickstart.

Know OWL already:

  1. Before you integrate
  2. Getting started — crates.io quick start
  3. Classify in five minutes
  4. Load an OWL file
  5. Profile guides: RDFS · RL · EL · SWRL
  6. Profile detection
  7. Error reference

Capability matrix (v1.1.4)

Capability Library CLI Python
Load OWL files Yes Yes Yes
Profile detection Yes profile "auto"
RDFS materialization Yes materialize profile="rdfs"
OWL RL saturation Yes classify --profile rl profile="rl"
OWL EL taxonomy Yes classify --profile el profile="el"
OWL DL Yes classify --profile dl profile="dl"
SWRL Yes classify --profile swrl profile="swrl"
Incremental reasoning Yes --incremental incremental=True
Explanations Yes explain explain()
Taxonomy DataFrame export No No Yes (pandas/polars)