Modern semantic ontology diff tool — compare two OWL/RDF ontologies and surface meaningful changes.
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file owlcompare-0.1.0.tar.gz.
File metadata
- Download URL: owlcompare-0.1.0.tar.gz
- Upload date:
- Size: 3.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9ebe967ace72ee01a31d1201e466d3ab98d4a2a3e973b27e015acc5c107b105
|
|
| MD5 |
9772df0397d6b85b7c6813649a0e8813
|
|
| BLAKE2b-256 |
9a80f558d61e581c5b7467143dca1434a412c1c4e58ec2be733e9698bd89baa9
|
Provenance
The following attestation bundles were made for owlcompare-0.1.0.tar.gz:
Publisher:
release.yml on Ajala111/owlcompare
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
owlcompare-0.1.0.tar.gz -
Subject digest:
a9ebe967ace72ee01a31d1201e466d3ab98d4a2a3e973b27e015acc5c107b105 - Sigstore transparency entry: 1817586057
- Sigstore integration time:
-
Permalink:
Ajala111/owlcompare@95c7d32c7b4088d35b2e35d6dcb53489f034742b -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Ajala111
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@95c7d32c7b4088d35b2e35d6dcb53489f034742b -
Trigger Event:
push
-
Statement type:
File details
Details for the file owlcompare-0.1.0-py3-none-any.whl.
File metadata
- Download URL: owlcompare-0.1.0-py3-none-any.whl
- Upload date:
- Size: 152.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce0e0503344af7ce54901d8b439b6df7d3b098f5114aa4609a13bed84a54f92b
|
|
| MD5 |
b503d34bd94511d41ecc1fa1e04fe04e
|
|
| BLAKE2b-256 |
d24d18b7870d1b62d97fe54fa04cf43fd3ff0a58b571543a66632f25350367fa
|
Provenance
The following attestation bundles were made for owlcompare-0.1.0-py3-none-any.whl:
Publisher:
release.yml on Ajala111/owlcompare
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
owlcompare-0.1.0-py3-none-any.whl -
Subject digest:
ce0e0503344af7ce54901d8b439b6df7d3b098f5114aa4609a13bed84a54f92b - Sigstore transparency entry: 1817586188
- Sigstore integration time:
-
Permalink:
Ajala111/owlcompare@95c7d32c7b4088d35b2e35d6dcb53489f034742b -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Ajala111
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@95c7d32c7b4088d35b2e35d6dcb53489f034742b -
Trigger Event:
push
-
Statement type: