Skip to content

Owl Sim Web Services

Shahim Essaid edited this page Feb 2, 2015 · 1 revision

Introduction

This page describes how to run OWLSim as a service.

It may help to first read these following pages:

  • [- 1689ba805fc9d757561516ff01e7c275

Starting a server

You can try this on the example files that come with the OWLSim distribution:

cd OWLTools/OWLTools-Sim
owltools src/test/resources/sim/mp-subset-1.obo --load-instances src/test/resources/sim/mgi-gene2mp-subset-1.tbl --sim-compare-atts --start-sim-server -p 9031 

Now connect to:

http://localhost:9031/compareAttributeSets?a=MP:0000435&b=MP:0000018&b=MP:0008974&a=MP:0009937&b=MP:0000852

Example output:

[
  {
    "LCS_Score": 0.48542682717024,
    "A": {
      "id": "MP:0009937",
      "label": "abnormal neuron differentiation"
    },
    "B": {
      "id": "MP:0000852",
      "label": "small cerebellum"
    },
    "LCS": {
      "id": "MP:0003632",
      "label": "abnormal nervous system morphology"
    }
  },
  {
    "LCS_Score": 2.8073549220576,
    "A": {
      "id": "MP:0000435",
      "label": "shortened head"
    },
    "B": {
      "id": "MP:0000018",
      "label": "small ears"
    },
    "LCS": {
      "id": "MP:0000432",
      "label": "abnormal head morphology"
    }
  },
  {
    "LCS_Score": -0,
    "A": {
      "id": "MP:0000435",
      "label": "shortened head"
    },
    "B": {
      "id": "MP:0000852",
      "label": "small cerebellum"
    },
    "LCS": {
      "id": "MP:0000001",
      "label": "mammalian phenotype"
    }
  },
  ...
](Sim2CLIExamples])

(SUBJECT TO CHANGE)

Precomputation

Typically the mode of use to first use OWLSim to precompute as much as possible:

owltools src/test/resources/sim/mp-subset-1.obo --load-instances src/test/resources/sim/mgi-gene2mp-subset-1.tbl --sim-save-lcs-cache test.cache

Then start the server with this cache:

owltools src/test/resources/sim/mp-subset-1.obo --load-instances src/test/resources/sim/mgi-gene2mp-subset-1.tbl --sim-load-lcs-cache test.cache --start-sim-server -p 9031

TODO

  • throws an error if unknown terms are passed