summaryrefslogtreecommitdiff
path: root/lib/dataset.rb
blob: 33e1571d92991f9ffb25cc6866154cfbaf718776 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
module OpenTox

  # Ruby wrapper for OpenTox Dataset Webservices (http://opentox.org/dev/apis/api-1.2/dataset).
  class Dataset 

    def data_entries
      data_entries = []
      #pull 
      #@reload = false
      begin
        self.[](RDF::OT.dataEntry).collect{|data_entry| data_entries << @rdf.to_hash[data_entry] }
      rescue
      end
      begin
      # TODO: remove API 1.1
        self.[](RDF::OT1.dataEntry).collect{|data_entry| data_entries << @rdf.to_hash[data_entry] }
      rescue
      end
      #@reload = true
      data_entries
    end

    def compounds
      uri = File.join(@uri,"compounds")
      RestClientWrapper.get(uri,{},{:accept => "text/uri-list", :subjectid => @subjectid}).split("\n").collect{|uri| OpenTox::Compound.new uri}
    end

    def features
      uri = File.join(@uri,"features")
      RestClientWrapper.get(uri,{},{:accept => "text/uri-list", :subjectid => @subjectid}).split("\n").collect{|uri| OpenTox::Feature.new uri}
    end

  end
end