owlcompare
Modern semantic ontology diff. See what actually changed.
owlcompare compares two OWL/RDF ontologies and produces an interactive HTML report (plus JSON, Markdown, and CI-friendly outputs) that surfaces meaningful changes — not just raw axiom additions.
Status
Pre-alpha. Under active development. See docs/ROADMAP.md for progress.
Why
Existing ontology diff tools (ROBOT, owl-diff, Protégé compare) operate at the axiom level. A simple refactor produces hundreds of axiom-level changes that don't tell you whether the semantics actually changed. owlcompare diffs at four semantic layers — syntactic, structural, inferential, and impact — and presents the result in a UX built for humans reviewing pull requests.
Quick start (planned)
uv tool install owlcompare
owlcompare diff old.ttl new.ttl --out report.html
Use with GitHub Actions
Diff your ontology on every pull request in three lines:
- uses: actions/checkout@v4
- uses: phelz/owlcompare@v1
with:
ontology-path: ontology/my-ontology.ttl
You get a PR comment with the diff, the HTML and JUnit reports uploaded as
artifacts, and a check that fails on breaking changes. See
docs/github-action.md
for the full reference — inputs, outputs, baseline detection, and more examples.
Documentation
- Project brief — vision, audience, success criteria
- Architecture — components, data flow, public surfaces
- Roadmap — phased delivery plan
- Design decisions — why we chose what we chose
- Conventions — code style and project standards
- Glossary — terminology used consistently
License
MIT — see LICENSE.
Release files for owlcompare 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| owlcompare-0.1.0.tar.gz | 3.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| owlcompare-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.1 MB
Release files / owlcompare-0.1.0.tar.gz
| Download URL | owlcompare-0.1.0.tar.gz |
|---|---|
| Size | 3.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a9ebe967ace72ee01a31d1201e466d3ab98d4a2a3e973b27e015acc5c107b105
|
|
BLAKE2b-256 checksum How to use checksums |
9a80f558d61e581c5b7467143dca1434a412c1c4e58ec2be733e9698bd89baa9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.
Transparency logRelease files / owlcompare-0.1.0-py3-none-any.whl
| Download URL | owlcompare-0.1.0-py3-none-any.whl |
|---|---|
| Size | 152.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ce0e0503344af7ce54901d8b439b6df7d3b098f5114aa4609a13bed84a54f92b
|
|
BLAKE2b-256 checksum How to use checksums |
d24d18b7870d1b62d97fe54fa04cf43fd3ff0a58b571543a66632f25350367fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.
Transparency log