Skip to main content

OntoInk

Interactive ontology visualization, SHACL validation, and live TTL editing for MkDocs.

CI PyPI Python License: MIT

OntoInk is a MkDocs plugin that turns RDF/Turtle files into interactive, publication-ready ontology diagrams with SHACL constraint visualization. Write a code block in your markdown and OntoInk renders a fully interactive graph.

Live demo & full documentation →

Install

pip install ontoink

Use

# mkdocs.yml
plugins:
  - search
  - ontoink

markdown_extensions:
  - pymdownx.superfences:
      preserve_tabs: true
```ontoink
source: shapes/foaf-person/shape-data.ttl
shape: shapes/foaf-person/shape.ttl
height: 600px
```

Then mkdocs serve. See Getting Started for all fence options, GitHub Pages deployment and reasoner setup.

What you get

  • Interactive graphs — formal ontology notation, six layouts, pan/zoom/search, minimap, level-of-detail and clustering for large ontologies, style presets (OntoInk, Chowlk, Graffoo, VOWL)
  • Editable layout — colours, shapes, edge styles, shape size and fonts; multi-select with Ctrl+click and a right-click menu for align / distribute / arrange, selection-scoped ontology actions, and undo
  • SHACL — constraint overlay on the graph, build-time validation with pySHACL, live re-validation in the inline TTL editor
  • Shape recommendation — generate sh:NodeShapes for classes with no coverage, from instance data and OWL axioms, with the evidence behind every constraint; or right-click a class and accept proposed constraints one click at a time as they appear on the graph
  • OWL reasoning — HermiT, Konclude (native or WASM) or owlrl, with inferred triples overlaid on the graph, consistency checking, and a proof tree explaining any inference the in-page reasoner made
  • CI gates — competency questions as executable fences, shape-drift detection, plus ontoink-report.json and README badges written on every build
  • Analytics — ontology metrics, SHACL coverage, shortest paths, in-page SPARQL, and OntoSniff quality checks with a 0–100 score
  • Publication-ready export — PNG/SVG with legend and namespace prefixes, plus TTL download
  • Browser-only tools — Playground · SHACL Editor · SPARQL Explorer · OntoSniff
  • Embeddable — ontoink.embed() mounts a graph in any page, under a strict CSP, with no CDN

Documentation

Getting Started install, configure, deploy
Embedding use OntoInk outside MkDocs
Docker & self-hosting production image, reasoner backends, API mode
Architecture how it works and why
Changelog what changed in each release

Development

git clone https://github.com/ISE-FIZKarlsruhe/ontoink.git
cd ontoink
pip install -e ".[dev]"
pytest -v          # see TESTING.md for the full local test guide
cd demo && mkdocs serve

Contributions welcome — please open an issue first to discuss proposed changes, add tests, and make sure pytest passes.

Requirements

Python ≥ 3.9 · MkDocs ≥ 1.4 · rdflib ≥ 6.0 · pySHACL ≥ 0.25 · pymdown-extensions ≥ 10.0. Browser-side dependencies (Cytoscape.js, dagre, CodeMirror) are vendored — no npm, no CDN.

License & citation

MIT — see LICENSE. If you use OntoInk in published work, please cite it via CITATION.cff; when using either Konclude backend, additionally cite Liebig et al. (2014), Konclude: System Description, Journal of Web Semantics 27-28, 78-85. See NOTICE for full attribution of the bundled reasoners.

Author

Ebrahim Norouzi — FIZ Karlsruhe, ISE. Developed in the context of NFDI and NFDI-MatWerk; visualization powered by Cytoscape.js.

Metadata

Release files for ontoink 0.7.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ontoink 0.7.9
File Size Uploaded
ontoink-0.7.9.tar.gz 3.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for ontoink 0.7.9
File Interpreter ABI Platform
ontoink-0.7.9-py3-none-any.whl Python 3 none any Details

Total release size: 5.9 MB

Release files / ontoink-0.7.9.tar.gz

Download URL ontoink-0.7.9.tar.gz
Size 3.0 MB
Tags Source
SHA-256 checksum
How to use checksums
eb73bb4b3dfb4cfeefa397ee47b5fe1185d690aa8bca6d22cf0c5eef8fcfb647
BLAKE2b-256 checksum
How to use checksums
ed205dfa354fabe1b1c19ed4b657e1185d63a425df4df36f2bfa6494f89f41b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 8, 2026.

Transparency log

Release files / ontoink-0.7.9-py3-none-any.whl

Download URL ontoink-0.7.9-py3-none-any.whl
Size 2.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
41f2db58b05a87689c9b436b293e4742f71dd5e1138c89a7b8579ffa658bed53
BLAKE2b-256 checksum
How to use checksums
afb37d5e7206e1c8146a7b8f25fd9ad2c553374dd30aa0508a036bf66b6c97eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.7.9 This release

2 release files

0.7.8

2 release files

0.7.7

2 release files

0.7.5

2 release files

0.7.4

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.0

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page