Skip to main content

Ontogram is an OWL ontology diagram generator.

Project description

Ontogram

Ontogram is an OWL ontology diagram generator.

Currently it supports owl:class, rdfs:subClassOf, owl:equivalentClass, datatype properties and domain and range relationships. I am planning to add support for owl:subClassOf restrictions soon.

Example output

The output of examples/tern-org.ttl.

generated ontology diagram

Installation

Install via PyPI for Python 3.

pip3 install ontogram

Usage

Web service

Coming soon.

Command line application

$ ontogram --help

Usage: ontogram [OPTIONS] ONTOLOGY_FILEPATH

  Ontogram CLI is a tool to generate a diagram from an OWL ontology file.

Options:
  --format ['turtle', 'xml', 'nt', 'n3']
                                  RDF serialization of input file. Default is
                                  turtle.
  --help                          Show this message and exit.

Use Ontogram's CLI to generate diagrams of an OWL ontology.

ontogram ontology.ttl

Output will be 3 files, ontology.ttl.txt, ontology.ttl.png, ontology.ttl.svg.

Use the --format option to specify the RDF serialization of the ontology if it is not Turtle.

Python library

Ontogram is a Python library and can be easily integrated with any existing Python application.

from ontogram import Ontogram

# First parameter accepts a file path to the OWL ontology. 
# Second parameter tells Ontogram what RDF format the OWL ontology is in.
ontogram = Ontogram('ontology.ttl', format='turtle')

# Generate a PNG diagram from the OWl ontology and write to disk as 'ontology.ttl.txt'.
ontogram.png_file('ontology.ttl.txt')

# Same as above, but as an SVG diagram. 
ontogram.svg_file('ontology.ttl.svg')

See the examples directory for example outputs.

Docker image for diagram generation within pyLODE

A Docker image has been created to automatically embed the generated diagram into a pyLODE document. See https://github.com/edmondchuc/docker-pylode

See the pyLODE output with the generated ontology diagram: https://w3id.org/tern/ontologies/org

A more formal integration with pyLODE will be coming soon.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for ontogram, version 0.1.0.post1
Filename, size File type Python version Upload date Hashes
Filename, size ontogram-0.1.0.post1-py3-none-any.whl (47.4 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size ontogram-0.1.0.post1.tar.gz (33.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page