class ADIWG::Mdtranslator::Writers::Iso19115_1::DQ_DataQuality

Public Class Methods

new(xml, hResponseObj) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_1/classes/class_dataQuality.rb, line 10
def initialize(xml, hResponseObj)
  @xml = xml
  @hResponseObj = hResponseObj
end

Public Instance Methods

writeXML(hDataQuality) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_1/classes/class_dataQuality.rb, line 15
def writeXML(hDataQuality)

  reportClass = DataQualityReport.new(@xml, @hResponseObj)
  citationClass = CI_Citation.new(@xml, @hResponseObj)

  @xml.tag!('mdq:DQ_DataQuality') do

    @xml.tag!('mdq:scope') do
      @xml.tag!('mcc:MD_Scope') do
        @xml.tag!('mcc:level') do
          @xml.tag!('mcc:MD_ScopeCode', codeList: "http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode", codeListValue: "series")
        end
      end
    end

    unless hDataQuality[:standaloneQualityReport].nil? || hDataQuality[:standaloneQualityReport].empty?

      @xml.tag!('mdq:standaloneQualityReport') do
        @xml.tag!('mdq:DQ_StandaloneQualityReportInformation') do
          # reportReference
          unless hDataQuality[:standaloneQualityReport][:reportReference].nil? || hDataQuality[:standaloneQualityReport][:reportReference].empty?
            @xml.tag!('mdq:reportReference') do
              citationClass.writeXML(hDataQuality[:standaloneQualityReport][:reportReference])
            end
          end

          # abstract
          unless hDataQuality[:standaloneQualityReport][:abstract].nil? || hDataQuality[:standaloneQualityReport][:abstract].empty?
            @xml.tag!('mdq:abstract') do
              @xml.tag!('gco:CharacterString', hDataQuality[:standaloneQualityReport][:abstract])
            end
          end
        end
      end

    end

    # reports
    hDataQuality[:report].each do |hReport|
      unless hReport.nil? || hReport.empty?
        reportClass.writeXML(hReport)
      end
      
    end
  end

end