Metadata-Version: 2.4
Name: ontologos
Version: 0.4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Rust
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Summary: Python bindings for the OntoLogos OWL reasoner (pre-release)
Keywords: owl,ontology,reasoner,semantic-web,description-logic
Home-Page: https://github.com/eddiethedean/ontologos
Author-email: Odo Matthews <odosmatthews@gmail.com>
License: MIT OR Apache-2.0
Requires-Python: >=3.10
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Bug Tracker, https://github.com/eddiethedean/ontologos/issues
Project-URL: Documentation, https://ontologos.readthedocs.io/
Project-URL: Homepage, https://github.com/eddiethedean/ontologos
Project-URL: Repository, https://github.com/eddiethedean/ontologos

# ontologos (PyPI)

Python bindings for [OntoLogos](https://github.com/eddiethedean/ontologos) — a modular Rust ontology reasoner for OWL EL, RL, and RDFS.

**Alpha package (v0.4.0).** See the full guide: **[docs/guides/python.md](../../docs/guides/python.md)**.

> **Always pass `profile=`** — `Reasoner(path)` without a profile uses `"auto"`, which fails in v0.4.

| Capability | Rust v0.4 | Python v0.4 |
|------------|-----------|-------------|
| In-memory ontology model | Yes (`ontologos-core`) | No |
| OWL file loading | Yes (`ontologos-parser`) | Partial (`Reasoner(path)` loads only) |
| Profile detection | Yes (`ontologos-profile`) | No |
| RDFS materialization | Yes (`ontologos-rdfs`) | Partial (`Reasoner(path, profile="rdfs")`) |
| OWL RL saturation | Yes (`ontologos-rl`) | Partial (`Reasoner(path, profile="rl")`) |
| OWL EL taxonomy classification | No (v0.5) | No |
| Full Python API | — | v0.9 / 1.0 |

For working Rust APIs today, use [crates.io](https://crates.io/crates/ontologos-core) crates.

```bash
pip install ontologos
```

```python
import ontologos

print(ontologos.__version__)

# Always set profile= — default "auto" fails in v0.4
reasoner = ontologos.Reasoner("ontology.owl", profile="rdfs")
reasoner.classify()

reasoner = ontologos.Reasoner("family.owl", profile="rl")
reasoner.classify()
```

See the [project README](https://github.com/eddiethedean/ontologos) and [ROADMAP](https://github.com/eddiethedean/ontologos/blob/main/ROADMAP.md) for milestones.

