JavaScript Java Other
Latest commit ff78d1d Oct 9, 2017

README.md

owlsim-v3

Ontology Based Profile Matching

Build Status Coverage Status Documentation Status

This will eventually replace sim2 currently distributed as part of owltools

Documentation

For now you must do this:

mvn javadoc:javadoc

And then open target/site/apidocs/index.html in a browser

Running it

To become more familiar with the code, please run the junit tests in eclipse.

Also try the performance/integration tests in owlsim.compute.matcher.perf - these will need extra files downloaded see the Makefile for details.

To run the REST services:

mvn package

produces a standalone Dropwizard jar:

owlsim-services/target/owlsim-services-3.0-SNAPSHOT.jar

which runs with:

cd owlsim-services
java -jar target/owlsim-services-3.0-SNAPSHOT.jar server src/test/resources/test-configuration.yaml

where configuration.yaml describes the desired ontologies:

ontologyUris:
  - owlsim-core/src/test/resources/simple-pheno-with-negation.owl
ontologyDataUris: []

and then browse the REST documentation.

If you prefer to run the REST services from your IDE launch: org.monarchinitiative.owlsim.services.OwlSimServiceApplication as a main class with server and an appropriate YAML configuration as arguments.

Paths:

or for some versions of dropwizard:

Example query using default config:

http://localhost:8080/api/match/jaccard?id=X:heart-morphology&id=X:brain-morphology

Build with Docker

Run those commands from the root directory (with Docker >= 1.9):

mvn package
docker build -t owlsim-all . # by default contains all the species
docker run -e JAVA_OPTS='-Xmx10g' -p 8080:8080 owlsim-all

To restrict to specific species:

docker build --build-arg species=all -t owlsim-all . # default if no args is provided or not matching any species
docker build --build-arg species=Hs -t owlsim-human .
docker build --build-arg species=Hs,Mm -t owlsim-multi .
# supported species: Hs,Mm,Dr,Dm,Ce