Awesome
owl2vcs is a set of tools designed to facilitate version control of OWL 2 ontologies using version control systems.
Contents
-
owl2diff - a command line diff tool for OWL 2 ontologies;
-
a set of scripts to integrate the tools with Git, Mercurial and Subversion.
Features
-
Detects axioms additions and removals;
-
Detects imports additions and removals;
-
Detects ontology annotations additions and removals;
-
Detects prefix additions, removals, modifications and renames;
-
Detects ontology IRI and version IRI changes;
-
Detects ontology format changes;
-
Supports RDF/XML, OWL/XML, OWL Functional Syntax, Manchester OWL Syntax, Turtle;
-
Changeset serializer and parser;
-
Two formats of changes: compact (like OWL Functional Syntax) and indented (same but uses indents instead of parentheses, more readable);
-
Four formats of IRIs: Simple, QName, Full, Label.
Requirements
Installation instructions
Standalone usage
After adding the directory to PATH
you can use the owl2diff
command to compare two versions of an ontology. See owl2diff --help
for more information.
Usage with Git/Mercurial
-
Open command shell and
cd
into your repository; -
Type
owl2enable
; -
Now you can view informative diffs for *.owl, *.rdf, and *.ttl files with either
hg owl2diff
orgit diff
.
- If
git diff
hangs on Windows, usesh -c "git diff"
orgit difftool
.
- If you want owl2vcs to compare files with other extensions, edit your
.hg/hgrc
or.git/info/attributes
.
Please help out
This project is still under development. Feedback and suggestions are very welcome and I encourage you to use the Issues list on Github to provide that feedback.
Feel free to fork this repo and to commit your additions.
Contributing
-
Clone the develop branch to your machine:
git clone -b develop git@github.com:utapyngo/owl2vcs.git
. -
Create your feature branch:
git checkout -b my-new-feature
. -
Commit your changes:
git commit -am 'Added some feature'
. -
Push to the branch
git push origin my-new-feature
. -
Create new Pull Request.