class ADIWG::Mdtranslator::Writers::Iso19115_2::MD_Format

Public Class Methods

new(xml, hResponseObj) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_format.rb, line 23
def initialize(xml, hResponseObj)
   @xml = xml
   @hResponseObj = hResponseObj
   @NameSpace = ADIWG::Mdtranslator::Writers::Iso19115_2
end

Public Instance Methods

writeXML(hFormat, inContext = nil) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_format.rb, line 29
def writeXML(hFormat, inContext = nil)

   @xml.tag!('gmd:MD_Format') do

      # get required 19115-2 elements from citation
      citation = hFormat[:formatSpecification]
      if citation.empty?
         name = nil
         version = nil
      else
         name = citation[:title]
         version = citation[:edition]
      end

      # format - name (required)
      unless name.nil?
         @xml.tag!('gmd:name') do
            @xml.tag!('gco:CharacterString', name)
         end
      end
      if name.nil?
         @NameSpace.issueWarning(120, 'gmd:name', inContext)
      end

      # format - version (required)
      unless version.nil?
         @xml.tag!('gmd:version') do
            @xml.tag!('gco:CharacterString', version)
         end
      end
      if version.nil?
         @NameSpace.issueWarning(121, 'gmd:version', inContext)
      end

      # format - amendment number
      s = hFormat[:amendmentNumber]
      unless s.nil?
         @xml.tag!('gmd:amendmentNumber') do
            @xml.tag!('gco:CharacterString', s)
         end
      end
      if s.nil? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:amendmentNumber')
      end

      # format - compression method
      s = hFormat[:compressionMethod]
      unless s.nil?
         @xml.tag!('gmd:fileDecompressionTechnique') do
            @xml.tag!('gco:CharacterString', s)
         end
      end
      if s.nil? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:fileDecompressionTechnique')
      end

   end # MD_Format tag
end