module ADIWG::Mdtranslator::Writers::SbJson::Id

Public Class Methods

build(intObj) click to toggle source

use metadataInfo identifier else use citation identifier valid identifier must have namespace = 'gov.sciencebase.catalog'

# File lib/adiwg/mdtranslator/writers/sbJson/sections/sbJson_id.rb, line 17
def self.build(intObj)

   metadataInfo = intObj[:metadata][:metadataInfo]
   resourceInfo = intObj[:metadata][:resourceInfo]
   hMetadataId = metadataInfo[:metadataIdentifier]
   hCitation = resourceInfo[:citation]

   unless hMetadataId.empty?
      if hMetadataId[:namespace] == 'gov.sciencebase.catalog'
         unless hMetadataId[:identifier].nil?
            return hMetadataId[:identifier]
         end
      end
   end

   unless hCitation.empty?
      hCitation[:identifiers].each do |hIdentifier|
         if hIdentifier[:namespace] == 'gov.sciencebase.catalog'
            unless hIdentifier[:identifier].nil?
               return hIdentifier[:identifier]
            end
         end
      end
   end

   return nil

end