diff options
author | Christoph Helma <helma@in-silico.de> | 2010-03-16 17:35:34 +0100 |
---|---|---|
committer | Christoph Helma <helma@in-silico.de> | 2010-03-16 17:35:34 +0100 |
commit | 506952dff164c3535ece28859778260f69d748fa (patch) | |
tree | d71d895346d07ac0d31f2a2b4e76fa0742ff4eab /lazar.rb | |
parent | a5144cd21c5c6537d2e95e608b970e750a421986 (diff) |
OWL-DL export added
Diffstat (limited to 'lazar.rb')
-rw-r--r-- | lazar.rb | 29 |
1 files changed, 28 insertions, 1 deletions
@@ -38,7 +38,7 @@ class Lazar < Model end if (classification != nil) - feature_uri = lazar.dependent_variable + "_lazar_prediction" + feature_uri = lazar.dependent_variable + "_lazar_classification" prediction.compounds << compound_uri prediction.features << feature_uri prediction.data[compound_uri] = [] unless prediction.data[compound_uri] @@ -72,6 +72,33 @@ class Lazar < Model end end + def to_owl + data = YAML.load(yaml) + owl = OpenTox::Owl.new 'Model', uri + owl.source = "http://github.com/helma/opentox-model" + #owl.algorithm = data.algorithm + owl.dependentVariable = data.activity_dataset_uri + owl.independentVariables = data.feature_dataset_uri + owl.rdf + end + +end + +get '/:id/?' do + model = Lazar.get(params[:id]) + halt 404, "Model #{uri} not found." unless model + accept = request.env['HTTP_ACCEPT'] + accept = "application/rdf+xml" if accept == '*/*' or accept =~ /html/ or accept == '' or accept.nil? + case accept + when "application/rdf+xml" + response['Content-Type'] = 'application/rdf+xml' + model.to_owl + when /yaml/ + response['Content-Type'] = 'application/x-yaml' + model.yaml + else + halt 400, "Unsupported MIME type '#{accept}'" + end end post '/?' do # create model |