Class: MD_ScopeCode

Inherits:
Object
  • Object
show all
Defined in:
lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_scope.rb

Overview

from www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml History: Stan Smith 2013-08-09 original script

Stan Smith 2014-10-15 allow non-ISO codesNames to be rendered

Instance Method Summary collapse

Constructor Details

#initialize(xml) ⇒ MD_ScopeCode

Returns a new instance of MD_ScopeCode.



9
10
11
# File 'lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_scope.rb', line 9

def initialize(xml)
  @xml = xml
end

Instance Method Details

#writeXML(codeName) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_scope.rb', line 13

def writeXML(codeName)
  case(codeName)
    when 'attribute' then codeID = '001'
    when 'attributeType' then codeID = '002'
    when 'collectionHardware' then codeID = '003'
    when 'collectionSession' then codeID = '004'
    when 'dataset' then codeID = '005'
    when 'series' then codeID = '006'
    when 'nonGeographicDataset' then codeID = '007'
    when 'dimensionGroup' then codeID = '008'
    when 'feature' then codeID = '009'
    when 'featureType' then codeID = '010'
    when 'propertyType' then codeID = '011'
    when 'fieldSession' then codeID = '012'
    when 'software' then codeID = '013'
    when 'service' then codeID = '014'
    when 'model' then codeID = '015'
    when 'tile' then codeID = '016'
    else
      codeID = 'non-ISO codeName'
  end

  # write xml
  @xml.tag!('gmd:MD_ScopeCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode',
                  :codeListValue=>"#{codeName}",
                  :codeSpace=>"#{codeID}"})
end