Module: ADIWG::Mdtranslator::Writers::SbJson::Id

Defined in:
lib/adiwg/mdtranslator/writers/sbJson/sections/sbJson_id.rb

Class Method Summary collapse

Class Method Details

.build(intObj) ⇒ Object

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



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# 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