Ontophora
Typed Pydantic models for the OWL 2 structural specification.
Ontophora represents OWL entities, expressions, axioms, and ontology documents as validated records, so an OWL-aware application gets construct-level data that checks itself and travels as plain JSON — without parsing an OWL surface syntax. Each record has a UID and a fixed construct kind; records refer to one another by UID rather than nesting an object graph.
Scope
Ontophora owns:
- Typed models for the OWL 2 structural construct catalog.
- Construct validation, a registry-derived JSON Schema, and reference shapes.
- JSON envelopes for sets of construct records and content fingerprints.
It does not parse or serialize OWL document formats, store a graph, execute queries, reason over an ontology, or resolve references. Applications that own a complete record set perform those operations.
Relationship to the stack
Ontophora is the typed-model library in the wider ontology tooling family. It is independent of its sister projects:
- Ontoplexis maps OWL/XML to a Cypher-queryable graph and back.
- Ontopoiesis provides operator workflows such as build, lint, test, diff, and render on Ontoplexis projections.
Neither project currently depends on Ontophora at runtime.
Install
pip install ontophora
from ontophora import Klass, SubClassOf, records_to_json
animal = Klass(uid="0x1", iri="https://example.org/animals#Animal")
dog = Klass(uid="0x2", iri="https://example.org/animals#Dog")
axiom = SubClassOf(
uid="0x3",
sub_class_expression=dog.uid,
super_class_expression=animal.uid,
)
print(records_to_json([animal, dog, axiom]))
Documentation
Read the documentation for a tutorial, JSON package guidance, the model rationale, and the API reference.
License
Ontophora is licensed under the Apache License 2.0.
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 ontophora-2026.7.19.tar.gz.
File metadata
- Download URL: ontophora-2026.7.19.tar.gz
- Upload date:
- Size: 31.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0ccc9914e3fcf098df819a4f168aafbd54336ebab408ad054fb217e13d5a74b
|
|
| MD5 |
d2fb1f7a0e7e9a7671c69da8db964fb8
|
|
| BLAKE2b-256 |
638f97173216103352e0ae609b673ceb977d296fbe37fcc351a722f0a18a2ead
|
Provenance
The following attestation bundles were made for ontophora-2026.7.19.tar.gz:
Publisher:
release.yml on wise-ideas/ontochoros
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ontophora-2026.7.19.tar.gz -
Subject digest:
a0ccc9914e3fcf098df819a4f168aafbd54336ebab408ad054fb217e13d5a74b - Sigstore transparency entry: 2203119282
- Sigstore integration time:
-
Permalink:
wise-ideas/ontochoros@a03eaf528d444198a6630c326f05cd37f4a7e653 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/wise-ideas
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a03eaf528d444198a6630c326f05cd37f4a7e653 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file ontophora-2026.7.19-py3-none-any.whl.
File metadata
- Download URL: ontophora-2026.7.19-py3-none-any.whl
- Upload date:
- Size: 59.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da04beb806af810b1898f61c6d7722d2b782e4b4397ec232ac70feaaef9dbdea
|
|
| MD5 |
4744f7f09fea21b868815852df3d9a14
|
|
| BLAKE2b-256 |
d5c22c7dabdc2e8c1c677f533243ce1715dd16f0a0e68bcb55dc73ab42a0854d
|
Provenance
The following attestation bundles were made for ontophora-2026.7.19-py3-none-any.whl:
Publisher:
release.yml on wise-ideas/ontochoros
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ontophora-2026.7.19-py3-none-any.whl -
Subject digest:
da04beb806af810b1898f61c6d7722d2b782e4b4397ec232ac70feaaef9dbdea - Sigstore transparency entry: 2203119373
- Sigstore integration time:
-
Permalink:
wise-ideas/ontochoros@a03eaf528d444198a6630c326f05cd37f4a7e653 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/wise-ideas
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a03eaf528d444198a6630c326f05cd37f4a7e653 -
Trigger Event:
workflow_dispatch
-
Statement type: