class ADIWG::Mdtranslator::Writers::Iso19115_2::MD_Dimension

Public Class Methods

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

Public Instance Methods

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

   # classes used
   codelistClass = MD_Codelist.new(@xml, @hResponseObj)
   measureClass = Measure.new(@xml, @hResponseObj)

   outContext = 'dimension'
   outContext = inContext + ' dimension' unless inContext.nil?

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

      # dimension information - dimension type code (required)
      s = hDim[:dimensionType]
      unless s.nil?
         @xml.tag!('gmd:dimensionName') do
            codelistClass.writeXML('gmd', 'iso_dimensionNameType', s)
         end
      end
      if s.nil?
         @NameSpace.issueWarning(80, 'gmd:dimensionName', inContext)
      end

      # dimension information - dimension size (required)
      s = hDim[:dimensionSize]
      unless s.nil?
         @xml.tag!('gmd:dimensionSize') do
            @xml.tag!('gco:Integer', s)
         end
      end
      if s.nil?
         @NameSpace.issueWarning(81, 'gmd:dimensionSize', inContext)
      end

      # dimension information - dimension resolution
      hMeasure = hDim[:resolution]
      unless hMeasure.empty?
         @xml.tag!('gmd:resolution') do
            measureClass.writeXML(hMeasure, outContext)
         end
      end
      if hMeasure.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:resolution')
      end

   end # MD_Dimension tag
end