OWLAPI.NET is an open source project that port the java OWLAPI in .Net. In this project we include the scripts to compile (through IKVM) the OWLAPI library and the reasoners jar in Windows libraries (dll). Furthermore in this project we have a console test application, a .Net version of the Owl reasoner interface and the sample implementation of this interface for HermiT and Pellet.
In the console application, it is possible to test the reasoners and the examples from the OWLAPI examples.
If you are interested in adding a new OWL Java reasoner or change the version of the reasoners currently loaded in the project, you have to compile it through IKVM to Windows Libraries. For this purpose we added in the project the makeDLL.sh script. This script is a BASH script (yes you can use bash in window, see at the end for further info) which search for all jars in a certain Directory (parameter) and pack it through IKVM (see section IKVM below).
- Download the latest version of the OWLApi from here.
- compile it with the command: makeDLL.sh -o owlapi.dll FOLDER-WITH-OWLAPI-JAR
Sample 1 - HermiT:
- Download HermiT here
- Unzip to HERMIT_FOLDER
- Copy the .jar in HERMIT_FOLDER\project\lib\ (!! do not copy owlapi...jar !!) to HERMIT_LIBS
- Copy the HERMIT_FOLDER\org.semanticweb.HermiT.jar to HERMIT_LIBS
- Compile it with the command: makeDLL.sh -o TestOWLReasoners.Net/Reasoners/HermiT/hermit.dll -ref Reasoners/owlapi.dll HERMIT_LIBS
Sample 2 - Pellet:
- Download Pellet here
- Unzip to PELLET_FOLDER
- Copy the .jar and folders in PELLET_FOLDER\lib to PELLET_LIBS
- Compile it with the command: makeDLL.sh -o TestOWLReasoners.Net/Reasoners/Pellet/pellet.dll -ref Reasoners/owlapi.dll PELLET_LIBS
- Download IKVM from here
- Copy everything to BASEPROJECTFOLDER/IKVM.
Keep in mind that different reasoners came with different licenses. E.g. HermiT is licensed by its owners under LGPL. Pellet is licensed by its owners under dual license - you may buy it from ClarkParsia or use it in an open-source projects under AGPL license. Other OWLAPI compatible reasoners may have other licenses.
The whole source (not the 3rd party libraries) of this project is is licensed under dual license: Apache 2.0 and GPLv3 - make your own choice that is most suited for your project.