Module: OpenTox::OntologyService::Endpoints

Defined in:
lib/ontology_service.rb

Class Method Summary collapse

Class Method Details

.get_endpoint_selectlist(include_blank = true) ⇒ Object



34
35
36
37
38
39
40
# File 'lib/ontology_service.rb', line 34

def self.get_endpoint_selectlist(include_blank=true)
  out = "<select id='endpoint' name='endpoint'>\n"
  out += "<option value='' id='please_select'>Please select</option>\n" if include_blank 
  out += make_option_list
  out += "</select>\n"
  return out
end

.make_option_list(endpoint = "Endpoints", level = 1) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/ontology_service.rb', line 22

def self.make_option_list(endpoint="Endpoints", level=1)
  out = ""
  results = @sparql.query(qs(endpoint)) rescue results = []
  results.each do |result|
    endpointname = result.Endpoints.to_s.split('#').last
    title = result.bound?(:title) ? result.title : endpointname     
    out += "<option value='#{title}' id='#{endpointname}' class='level_#{level}'>#{title}</option>\n"
    out += make_option_list(endpointname, level + 1)
  end
  return out
end

.qs(classname = "Endpoints") ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/ontology_service.rb', line 6

def self.qs(classname="Endpoints")
  return "PREFIX ot:<http://www.opentox.org/api/1.1#>
  PREFIX ota:<http://www.opentox.org/algorithms.owl#>
  PREFIX owl:<http://www.w3.org/2002/07/owl#>
  PREFIX dc:<http://purl.org/dc/elements/1.1/>
  PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
  PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
  PREFIX otee:<http://www.opentox.org/echaEndpoints.owl#>
  PREFIX toxcast:<http://www.opentox.org/toxcast.owl#>
    select ?Endpoints ?title ?id
    where {?Endpoints rdfs:subClassOf otee:#{classname}.
    OPTIONAL {?Endpoints dc:title ?title}.
    OPTIONAL {?Endpoints dc:identifier ?id}.}
    ORDER BY ?title"
end