Sha256: acb88011964eed04204f031d86e4b7b8449883d5927d7000bc0e2bafdd7dd4c4

Contents?: true

Size: 1022 Bytes

Versions: 6

Compression:

Stored size: 1022 Bytes

Contents

class DarwinCore
  class Metadata
    def initialize(archive)
      @archive = archive
      @metadata = @archive.eml
    end

    def data
      @metadata
    end

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

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

    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

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

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

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

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
dwc-archive-0.2.3 lib/dwc-archive/metadata.rb
dwc-archive-0.2.2 lib/dwc-archive/metadata.rb
dwc-archive-0.2.1 lib/dwc-archive/metadata.rb
dwc-archive-0.2.0 lib/dwc-archive/metadata.rb
dwc-archive-0.1.6 lib/dwc-archive/metadata.rb
dwc-archive-0.1.5 lib/dwc-archive/metadata.rb