Explanation

Background reading. These pages are about why OntoEnv works the way it does — useful when a design decision surprises you, and safe to skip until then.
Concepts

Ontologies, IRIs, imports, closures, and the environment that ties them together. Read this first if the vocabulary is unfamiliar.

Views and copies

Why every read method comes in a get_* and a copy_* flavour, what a closure view actually contains, and how to choose.

Opening an environment

There are five ways to open an environment. What each one refuses to do, and why connect is almost always the right answer.

Staying in sync

OntoEnv never reads your files behind your back. What update() and refresh_from_store() each reconcile, and why they are separate.

Performance

Benchmarks against in-memory rdflib and Oxigraph, plus the indexing that explains the results.