[](https://travis-ci.org/VisualDataWeb/OWL2VOWL)
[](https://mvnrepository.com/artifact/org.visualdataweb.vowl.owl2vowl/OWL2VOWL)
[](https://jitpack.io/#VisualDataWeb/OWL2VOWL)
OWL2VOWL converter
==================
Dev Dependency
--------------
We have a release repo in maven central but the version there is and will not be updated frequently.
Therefore i suggest to use [Jitpack OWL2VOWL](https://jitpack.io/#VisualDataWeb/OWL2VOWL) in order to pull the latest release version (in example master branch or the available tags).
For instructions how to include the dependency click the above link or as a example for maven projects:
```
jitpack.io
https://jitpack.io
....
com.github.VisualDataWeb
OWL2VOWL
master-SNAPSHOT
```
Requirements
------------
* Java 8 (or higher)
* Maven
Instructions for using OWL2VOWL JAR
------------
The converted ontology will be written in a .json file in the working directory by default.
### Convert an ontology by its IRI
Run owl2vowl.jar with the `-iri` parameter: `java -jar owl2vowl.jar -iri "[Ontology IRI]"`
**Example**: `java -jar owl2vowl.jar -iri "http://ontovibe.visualdataweb.org"`
### Convert an ontology from a local file
Run owl2vowl.jar with the `-file` parameter: `java -jar owl2vowl.jar -file path/to/local/ontology`
**Example**: `java -jar owl2vowl.jar -file ontologies/foaf.rdf`
### Convert an ontology with dependencies from a local file
Run owl2vowl with the additional `-dependencies` parameter: `java -jar owl2vowl.jar -file path/to/local/ontology -dependencies path/to/dependency1 path/to/dependency2 ...`
**Example**: `java -jar owl2vowl.jar -file ontovibe.ttl -dependencies ontovibe_imported.ttl`
### Echo the converted ontology on the console
Use any of the input parameters together with the `-echo` flag: `java -jar owl2vowl.jar -echo -iri "[Ontology IRI]"`
**Example**: `java -jar owl2vowl.jar -iri "http://ontovibe.visualdataweb.org" -echo`
Instructions for developing with OWL2VOWL
-----------
### First steps
`Maven` is required to develop with OWL2VOWL and compile the code. It will load all dependencies automatically. If there occur any problems, refreshing the dependencies might solve them.
OWL2VOWL has been developed to work with Java 8, so `JDK 8` has to be used for compiling.
### Build the jar
To build the jar file, simply execute `mvn package`. The built `jar` only contains the compiled source code.
To build a jar file that can be executed standalone, you have to use the package option with parameter: `mvn package -Denv=standalone` or `mvn package -P standalone-release`. This will build the file `...-shaded.jar` containing all dependencies needed to be executable.
### Build the war
To build the war file, simply execute `mvn package -P war-release`. This will generate a war file.
This war can be execute like a jar file to start a local server.
### Running in IDE
It would be a pain always building the jar only to test some new implemented stuff. We included a possiblity to run the conversion directly with the IDE. For this you need to change the `ConverterImpl.java` class.
To run a Spring Server directly from the IDE you have to start the `ServerMain.java` class.
### Docker
- **With WebVOWL (recommended):** clone both repos as siblings; build and run from the WebVOWL directory — see `WebVOWL/docker/README.md`.
- **Standalone converter:** see [doc/docker/README.md](doc/docker/README.md) (`docker build -t owl2vowl:local .`).
FAQ
==================
## I want to log information, errors, etc to files. Is there a default configuration?
If you want to use logging to files there is log4j2 configuration provided under ```src/main/resources/log4j2-spring-file.xml```.
- JAR/IDE: To load it you have to provide a JVM argument. For example if you have the JAR you have to exeecute:
```java -Dlog4j.configurationFile=path/to/log4j2-spring-file.xml -jar ...```
- WAR: Uncomment the line in ```src/main/resources/application.properties```