Turtle Canon
It's turtles all the way down
A tool for canonizing Turtle (.ttl) ontology files.
The domain standardized tool for editing and creating ontologies is Protégé.
The Turtle (.ttl) file format is a format based on XML and OWL, which is considered one of the most readable formats for OWL ontology files.
However, Protégé writes the order of ontology entities differently depending on the version, this tool mitigates this by running the file through a canonizing parser that ensures the classes are sorted and listed in the same way, always.
The main use case for developing this tool is when developing ontologies utilizing versioning tools such as git, svn or similar, which are single character diff-sensitive.
Install
The tool is written for Python 3.10, so one needs at minimum Python 3.10 installed to run it at this stage. The plan is to make a stand-alone executable for each of the major OS'.
Install via PyPI (stable version, recommended):
python3.10 -m pip install turtle-canon
Install via GitHub (development version):
python3.10 -m pip install git+https://github.com/CasperWA/turtle-canon#egg=turtle-canon
Usage
To run the tool, simply run:
turtle-canon path/to/my_ontology_file.ttl
For more information about the tool and the options available, run turtle-canon --help.
To check the version run turtle-canon --version.
The currently latest stable version is 0.1.1.
License & copyright
This tool is MIT Licensed and copyright © 2021 Casper Welzel Andersen (GitHub, GitLab, website) & SINTEF.
Metadata
Release files for turtle-canon 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| turtle_canon-0.1.1.tar.gz | 26.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| turtle_canon-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 37.0 kB
Release files / turtle_canon-0.1.1.tar.gz
| Download URL | turtle_canon-0.1.1.tar.gz |
|---|---|
| Size | 26.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
77d14a7172e2331f6c7a08fe362e0b09303dbf3a624d4cce94376568b1946d1d
|
|
BLAKE2b-256 checksum How to use checksums |
5017dbe7ef2e30851889d3fc61e9a60bce74d2a1c2a57b459b87e49ef998ef06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|
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 Feb 19, 2025.
Transparency logRelease files / turtle_canon-0.1.1-py3-none-any.whl
| Download URL | turtle_canon-0.1.1-py3-none-any.whl |
|---|---|
| Size | 10.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2ac59c984c7b4451a4df2f06ff3cefc83bd050837e1f17075380d06a116a5c8b
|
|
BLAKE2b-256 checksum How to use checksums |
9fd0c5fc35748ffb5fae51ea1b16ab46ca48c217543c3d33a5aba1913df618ac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|
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 Feb 19, 2025.
Transparency log