diff options
author | Christoph Helma <helma@in-silico.de> | 2009-12-18 13:29:14 +0100 |
---|---|---|
committer | Christoph Helma <helma@in-silico.de> | 2009-12-18 13:29:14 +0100 |
commit | 03b1a477aca26a8ba662474f16c7427052067d4e (patch) | |
tree | 1f0682c5990c71c4a2b719e455df6d9e52c861f5 /lib/dataset.rb | |
parent | a5789305534c2a622a658e7ef14b016a1bac4bd6 (diff) |
assignement of metadata fixed
Diffstat (limited to 'lib/dataset.rb')
-rw-r--r-- | lib/dataset.rb | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/lib/dataset.rb b/lib/dataset.rb index 895c9fc..b96f3e9 100644 --- a/lib/dataset.rb +++ b/lib/dataset.rb @@ -7,6 +7,13 @@ module OpenTox super end + def add(compound_uri,feature_uri,value) + c = self.find_or_create_compound compound_uri + f = self.find_or_create_feature feature_uri + v = self.find_or_create_value value + self.add_data_entry(c,f,v) + end + # find or create a new compound and return the resource def find_or_create_compound(uri) compound = @model.subject(DC["identifier"], uri) @@ -19,14 +26,14 @@ module OpenTox end # find or create a new feature and return the resource - def find_or_create_feature(f) - feature = @model.subject(DC["title"], f[:name].to_s) + def find_or_create_feature(uri) + feature = @model.subject(DC["identifier"], uri) if feature.nil? feature = @model.create_resource @model.add feature, RDF['type'], OT["Feature"] - @model.add feature, DC["identifier"], File.join("feature",feature.to_s.gsub(/[()]/,'')) # relative uri as we don know the final uri - @model.add feature, DC["title"], f[:name].to_s - @model.add feature, DC['source'], f[:source].to_s if f[:source] + @model.add feature, DC["identifier"], uri + @model.add feature, DC["title"], File.basename(uri) + @model.add feature, DC['source'], uri end feature end @@ -233,7 +240,7 @@ module OpenTox :identifier => self.identifier, :compounds => self.compounds.collect{|c| c.to_s.to_s.sub(/^\[(.*)\]$/,'\1')}, :features => self.features.collect{|f| f.to_s }, - :data_entries => self.data_entries, + #:data_entries => self.data_entries, =begin :tuples => self.compounds.collect{|c| compound_uri = c.to_s.to_s.sub(/^\[(.*)\]$/,'\1') |