Sha256: d7f3eaa14f66eef8f4786079445a74d41ec3421cc4973477a48c650c9b364800

Contents?: true

Size: 1.71 KB

Versions: 11

Compression:

Stored size: 1.71 KB

Contents

# Reader - fgdc to internal data structure
# unpack fgdc lineage

# History:
#  Stan Smith 2017-08-28 original script

require 'nokogiri'
require 'adiwg/mdtranslator/internal/internal_metadata_obj'
require_relative 'module_source'
require_relative 'module_process'

module ADIWG
   module Mdtranslator
      module Readers
         module Fgdc

            module Lineage

               def self.unpack(xLineage, hResourceInfo, hResponseObj)

                  # instance classes needed in script
                  intMetadataClass = InternalMetadata.new
                  hLineage = intMetadataClass.newLineage

                  # data quality 2.5 (lineage) - lineage
                  unless xLineage.empty?

                     # lineage 2.5.1 (srcinfo) - source information []
                     axSource = xLineage.xpath('./srcinfo')
                     unless axSource.empty?
                        axSource.each do |xSource|
                           hSource = Source.unpack(xSource, hResourceInfo[:spatialResolutions], hResponseObj)
                           hLineage[:dataSources] << hSource
                        end
                     end

                     # lineage 2.5.2 (procstep) - process step []
                     axProcess = xLineage.xpath('./procstep')
                     unless axProcess.empty?
                        axProcess.each do |xProcess|
                           hProcess = Process.unpack(xProcess, hLineage, hResponseObj)
                           hLineage[:processSteps] << hProcess
                        end
                     end

                     return hLineage

                  end

                  return nil

               end
            end

         end
      end
   end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
adiwg-mdtranslator-2.6.1 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.6.0 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.5.0 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.4.0 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.3.5 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.3.4 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.3.3 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.3.2 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.3.1 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.3.0 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb
adiwg-mdtranslator-2.2.0 lib/adiwg/mdtranslator/readers/fgdc/modules/module_lineage.rb