OntoMaven
Maven-based ontology development and management of ontology artifacts in distributed ontology repositories.
###User Guide (April 2016)
This document is for end users who are looking for information on how to run and use OntoMaven.
Prerequirements
In order to run OntoMaven on your machine, you need:
- Mandatory is a Java Virtual Machine (JVM). Java 8 for 64-bit systems tested and found to be as a stable JVM for OntoMaven. Depending on your use case you may want to assign more RAM than assigned as default.
- An up-to-date Apache Maven version. At the time of creation of the guide at least Maven 3.0.5 was verified as a running version.
- If you want to use OntoMaven as a Maven project inside Eclipse or some other IDE you need their relevant Maven plugins. Please consider to use corresponding manuals for installation and usage.
- For support of distributed repositories you need to install a source code management (SCM) system like Git or Subversion (SVN).
Installation and configuration details
Before you start to use the instructions from this section, be sure you already fulfilled the prerequirements mentioned in the section before.
Since OntoMaven is an open source project, you can get the source code and build it on your own. You can retrieve the source code of OntoMaven on the project's site http://www.corporate-semantic-web.de/ontomaven.html.
You can build and deploy OntoMaven like usual for a Maven based application with the command mvn build
on the command line or the corresponding command in your favorite IDE.
In order to start the application to import ontologies and to collaborate with other knowledge engineers and domain experts, your command should have the following form (parameters are optional):
mvn de.csw:ontomaven:<goal_name> [-D<parameter_name>=<parameter_value>]
In Eclipse or other similar IDE you can start goals from the given configuration menu to run applications. Here you should insert de.csw:ontomaven:<goal_name>
into the menu field to define your goal.
The available goals and their parameters are listed in another section.
By default the support for distributed repositories is not active. Edit the pom.xml file in the root directory of OntoMaven to specify your ontology repository.
The following code snippet shows you how to connect with some repository server using SVN:
<project>
...
<scm>
<connection>scm:svn:http://somerepository.com/svn_repo/trunk</connection>
<developerConnection>scm:svn:https://somerepository.com/svn_repo/trunk</developerConnection>
<url>http://somerepository.com/view.cvs</url>
</scm>
...
</project>
Instead of SVN you can connect to any other supported SCM.
Supported SCM
As of this writing the following SCMs are fully supported:
- Bazaar
- CVS
- Git
- Mercurial
- Subversion
- ...
Full list of supported SCMs (on the Apache Maven SCM site)
Goals: Function and parameters
- ApplyAspects
Applys the choosen aspects of the ontology and creates a new result ontology.
aspectsAppliedOwlDirectory
with default value"target/aspectsAppliedOwlDirectory"
aspectsAppliedOwlFileName
with default value"aspectsAppliedOntology.owl"
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
userAspects
defined at the pom.xml file in the root directory of OntoMaven with the following lines:
<userAspects> <aspect>myFirstAspect</aspect> <aspect>mySecondAspect</aspect> ... </userAspects>
- CreateOntologyGraph
Creates a graphml file of the ontology. The result file can be visualized by any tool supporting graphml files. Included into OntoMaven is also
graphDirectory
with default value"target/site/graph"
graphFileName
with default value"owlGraph.graphml"
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
ifApplyAspects
with default valuefalse
userAspects
defined at the pom.xml file in the root directory of OntoMaven with the following lines:
<userAspects> <aspect>myFirstAspect</aspect> <aspect>mySecondAspect</aspect> ... </userAspects>
- CreateOntologyReport
Generates a report for the ontology. This report will contain information about the ontology and its elements like classes, properties, individuals.
ontologyReportOutputDirectory
with default value"target/site/ontologyReport"
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
ifApplyAspects
with default valuefalse
userAspects
defined at the pom.xml file in the root directory of OntoMaven with the following lines:
<userAspects> <aspect>myFirstAspect</aspect> <aspect>mySecondAspect</aspect> ... </userAspects>
- ExportAxioms
Exports the axioms of the ontology into a file. Furthermore aspects can be applied and inferred axioms can be printed and exported.
ifExportInferredAxioms
with default valuefalse
ifExportOriginalAxioms
with default valuetrue
axiomsExportDirectory
with default value"target/exportedAxioms"
axiomsExportFileName
with default value"exportedAxioms.txt"
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
ifApplyAspects
with default valuefalse
userAspects
defined at the pom.xml file in the root directory of OntoMaven with the following lines:
<userAspects> <aspect>myFirstAspect</aspect> <aspect>mySecondAspect</aspect> ... </userAspects>
- ImportOntologies
Loads and saves all (also transitiv) imports. The loaded ontologies will be saved in a specific directory. Every imported ontology will also be registered in a catalog. All goals will work with the local ontologies, if they are imported before.
importDirectory
with default value"imports"
catalogFileName
with default value"catalog.xml"
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
- InferAxioms
Exports the inferred axioms of the ontology into a file.
ifIncludeOriginalAxioms
with default valuetrue
inferredOwlDirectory
with default value"target/inferredOwlFiles"
inferredOwlFile
with default value"inferredOntology.owl"
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
ifApplyAspects
with default valuefalse
userAspects
defined at the pom.xml file in the root directory of OntoMaven with the following lines:
<userAspects> <aspect>myFirstAspect</aspect> <aspect>mySecondAspect</aspect> ... </userAspects>
- PrintAspectNames
Prints names of in a given ontology existing aspects.
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
- RemoveAspects
Applys the choosen aspects of the ontology and creates a new result ontology.
owlFileWithoutAspectsName
with default value"ontologyWithoutAspects.owl"
owlFilesWithoutAspectsDirectory
with default value"target/owlFilesWithoutAspects"
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
- TestEntailment
Tests if the axioms of an ontology can be inferred from the axioms of another ontology.
premiseOntologyFileName
with default value"premiseOntology.owl"
conclusionOntologyFileName
with default value"conclusionOntology.owl"
ifApplyPremiseAspects
with default valuetrue
ifApplyConclusionAspects
with default valuetrue
userPremiseAspects
with default value[]
(empty string array)userConclusionAspects
with default value[]
(empty string array)owlDirectory
with default value"owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
- TestOntology
Tests an ontology regarding the syntax and consistency. The result will be printed in the console and written into a specified file.
owlDirectory
with default value"owl"
owlFileName
with default value"ontology.owl"
aspectsIRI
with default value"http://www.corporate-semantic-web.de/ontologies/aspect_owl#hasAspect"
ifApplyAspects
with default valuefalse
userAspects
defined at the pom.xml file in the root directory of OntoMaven with the following lines:
<userAspects> <aspect>myFirstAspect</aspect> <aspect>mySecondAspect</aspect> ... </userAspects>