Class: DarwinCore::Metadata

Inherits:
Object
  • Object
show all
Defined in:
lib/dwc-archive/metadata.rb

Instance Method Summary collapse

Constructor Details

#initialize(archive = nil) ⇒ Metadata

Returns a new instance of Metadata.



3
4
5
6
# File 'lib/dwc-archive/metadata.rb', line 3

def initialize(archive = nil)
  @archive = archive
  @metadata = @archive.eml
end

Instance Method Details

#abstractObject



30
31
32
# File 'lib/dwc-archive/metadata.rb', line 30

def abstract
  @metadata[:eml][:dataset][:abstract] rescue nil
end

#authorsObject



24
25
26
27
28
# File 'lib/dwc-archive/metadata.rb', line 24

def authors
  return nil unless defined?(@metadata[:eml][:dataset][:creator])
  @metadata[:eml][:dataset][:creator] = [@metadata[:eml][:dataset][:creator]] unless @metadata[:eml][:dataset][:creator].class == Array 
  @metadata[:eml][:dataset][:creator].map {|c| {:first_name => c[:individualName][:givenName], :last_name => c[:individualName][:surName], :email => c[:electronicMailAddress]}}
end

#citationObject



34
35
36
# File 'lib/dwc-archive/metadata.rb', line 34

def citation
  @metadata[:eml][:additionalMetadata][:metadata][:citation] rescue nil
end

#dataObject



8
9
10
# File 'lib/dwc-archive/metadata.rb', line 8

def data
  @metadata
end

#idObject



12
13
14
# File 'lib/dwc-archive/metadata.rb', line 12

def id
  @metadata[:eml][:dataset][:attributes][:id] rescue nil
end

#package_idObject



16
17
18
# File 'lib/dwc-archive/metadata.rb', line 16

def package_id
  @metadata.data[:eml][:attributes][:packageId] rescue nil
end

#titleObject



20
21
22
# File 'lib/dwc-archive/metadata.rb', line 20

def title
  @metadata[:eml][:dataset][:title] rescue nil
end

#urlObject



38
39
40
# File 'lib/dwc-archive/metadata.rb', line 38

def url
  @metadata[:eml][:dataset][:distribution][:online][:url] rescue nil
end