adiwg-mdtranslator 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +23 -0
- data/.travis.yml +7 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +24 -0
- data/README.md +31 -0
- data/Rakefile +13 -0
- data/adiwg-mdtranslator.gemspec +31 -0
- data/bin/mdtranslator +164 -0
- data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +499 -0
- data/lib/adiwg/mdtranslator/internal/module_dateTimeFun.rb +98 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/adiwgJson_reader.rb +80 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/adiwgJson_validator.rb +115 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_address.rb +71 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_associatedResource.rb +57 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_boundingBox.rb +51 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_browseGraphic.rb +52 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_citation.rb +104 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_contacts.rb +121 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_coordinates.rb +52 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_dataQuality.rb +40 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_dateTime.rb +27 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_descriptiveKeyword.rb +49 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_distributionInfo.rb +150 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_extent.rb +62 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_geoCoordSystem.rb +46 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_geoProperties.rb +89 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_geographicElement.rb +168 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_legalConstraint.rb +45 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_lineString.rb +25 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_lineage.rb +50 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_metadata.rb +76 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_metadataExtension.rb +40 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_metadataInfo.rb +119 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_onlineResource.rb +62 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_phone.rb +59 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_point.rb +25 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_polygon.rb +55 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_processStep.rb +64 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_resolution.rb +42 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_resourceFormat.rb +35 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_resourceIdentifier.rb +49 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_resourceInfo.rb +298 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_resourceMaintenance.rb +50 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_resourceSpecificUsage.rb +50 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_responsibleParty.rb +37 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_securityConstraint.rb +52 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_source.rb +48 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_spatialReference.rb +48 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_taxonClass.rb +43 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_taxonomy.rb +83 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_temporalElement.rb +71 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_timeInstant.rb +45 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_timePeriod.rb +53 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_verticalElement.rb +53 -0
- data/lib/adiwg/mdtranslator/readers/adiwgJson/modules_0.8.0/module_voucher.rb +38 -0
- data/lib/adiwg/mdtranslator/validator.rb +43 -0
- data/lib/adiwg/mdtranslator/version.rb +7 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_address.rb +91 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_aggregateInformation.rb +68 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_boundingPolygon.rb +75 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_browseGraphic.rb +51 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_citation.rb +157 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_contact.rb +85 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_dataIdentification.rb +338 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_dataQuality.rb +55 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_date.rb +60 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_digitalTransferOptions.rb +51 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_distribution.rb +36 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_distributor.rb +80 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_extent.rb +94 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_format.rb +40 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_genericMetaData.rb +65 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geographicBoundingBox.rb +74 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geographicDescription.rb +29 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geographicElement.rb +36 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_identifier.rb +51 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_keyword.rb +63 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_legalConstraints.rb +63 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_lineString.rb +74 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_lineage.rb +63 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_maintenanceInformation.rb +64 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_medium.rb +59 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_metadata.rb +277 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_metadataExtension.rb +156 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_multiGeometry.rb +140 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_onlineResource.rb +78 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_point.rb +74 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_polygon.rb +94 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_processStep.rb +81 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_referenceIdentifier.rb +42 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_referenceSystem.rb +29 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_resolution.rb +46 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_responsibleParty.rb +90 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_securityConstraints.rb +68 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_source.rb +59 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_standardOrderProcess.rb +74 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_taxonClassification.rb +65 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_taxonSystem.rb +100 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_telephone.rb +77 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_temporalExtent.rb +58 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_timeInstant.rb +47 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_timePeriod.rb +54 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_usage.rb +59 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_useConstraints.rb +30 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_verticalExtent.rb +59 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_vouchers.rb +48 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_associationType.rb +35 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_characterSet.rb +58 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_classification.rb +35 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_datatype.rb +45 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_dateType.rb +29 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_initiativeType.rb +35 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_keywordType.rb +33 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_maintenanceFrequency.rb +42 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_mediumFormat.rb +32 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_mediumName.rb +44 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_obligation.rb +32 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_onlineFunction.rb +31 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_presentationForm.rb +44 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_progress.rb +33 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_restriction.rb +38 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_role.rb +37 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_scope.rb +46 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_spatialRepresentationType.rb +36 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/codelists/code_topicCategory.rb +50 -0
- data/lib/adiwg/mdtranslator/writers/iso19115_2/iso19115_2_writer.rb +131 -0
- data/lib/adiwg/mdtranslator.rb +97 -0
- data/lib/adiwg-mdtranslator.rb +1 -0
- data/mdtranslator.rb +178 -0
- data/test/adiwgJson_full_test_example.json +1717 -0
- data/test/adiwgJson_template.json +977 -0
- data/test/dev.rb +32 -0
- data/test/tc_translation.rb +31 -0
- metadata +317 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# ISO <<Class>> EX_VerticalExtent
|
|
2
|
+
# writer output in XML
|
|
3
|
+
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-11-15 original script
|
|
6
|
+
|
|
7
|
+
class EX_VerticalExtent
|
|
8
|
+
|
|
9
|
+
def initialize(xml)
|
|
10
|
+
@xml = xml
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def writeXML(hVertEle)
|
|
14
|
+
|
|
15
|
+
@xml.tag!('gmd:EX_VerticalExtent') do
|
|
16
|
+
|
|
17
|
+
# vertical extent - minimum value - required
|
|
18
|
+
s = hVertEle[:minValue]
|
|
19
|
+
if s.nil?
|
|
20
|
+
@xml.tag!('gmd:minimumValue', {'gco:nilReason' => 'missing'})
|
|
21
|
+
else
|
|
22
|
+
@xml.tag!('gmd:minimumValue') do
|
|
23
|
+
@xml.tag!('gco:Real', s)
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# vertical extent - maximum value - required
|
|
28
|
+
s = hVertEle[:maxValue]
|
|
29
|
+
if s.nil?
|
|
30
|
+
@xml.tag!('gmd:maximumValue', {'gco:nilReason' => 'missing'})
|
|
31
|
+
else
|
|
32
|
+
@xml.tag!('gmd:maximumValue') do
|
|
33
|
+
@xml.tag!('gco:Real', s)
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# vertical extent - vertical crs - attributes only - required
|
|
38
|
+
attributes = {}
|
|
39
|
+
s = hVertEle[:crsURI]
|
|
40
|
+
unless s.nil?
|
|
41
|
+
attributes['xlink:href'] = s
|
|
42
|
+
end
|
|
43
|
+
s = hVertEle[:crsTitle]
|
|
44
|
+
unless s.nil?
|
|
45
|
+
attributes['xlink:title'] = s
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
if attributes.empty?
|
|
49
|
+
attributes['gco:nilReason'] = 'missing'
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
@xml.tag!('gmd:verticalCRS',attributes)
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# ISO <<Class>> MD_Vouchers
|
|
2
|
+
# writer output in XML
|
|
3
|
+
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-11-19 original script
|
|
6
|
+
# Stan Smith 2014-07-08 modify require statements to function in RubyGem structure
|
|
7
|
+
|
|
8
|
+
require 'class_responsibleParty'
|
|
9
|
+
|
|
10
|
+
class MD_Vouchers
|
|
11
|
+
|
|
12
|
+
def initialize(xml)
|
|
13
|
+
@xml = xml
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def writeXML(hVoucher)
|
|
17
|
+
|
|
18
|
+
# classes used in MD_Vouchers
|
|
19
|
+
rPartyClass = CI_ResponsibleParty.new(@xml)
|
|
20
|
+
|
|
21
|
+
@xml.tag!('gmd:MD_Vouchers') do
|
|
22
|
+
|
|
23
|
+
# voucher - specimen - required
|
|
24
|
+
s = hVoucher[:specimen]
|
|
25
|
+
if s.nil?
|
|
26
|
+
@xml.tag!('gmd:specimen',{'gco:nilReason'=>'missing'})
|
|
27
|
+
else
|
|
28
|
+
@xml.tag!('gmd:specimen') do
|
|
29
|
+
@xml.tag!('gco:CharacterString',s)
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# voucher - repository - required - MD_ResponsibleParty
|
|
34
|
+
hContacts = hVoucher[:repository]
|
|
35
|
+
if hContacts.empty?
|
|
36
|
+
@xml.tag!('gmd:reposit',{'gco:nilReason'=>'missing'})
|
|
37
|
+
else
|
|
38
|
+
@xml.tag!('gmd:reposit') do
|
|
39
|
+
rPartyClass.writeXML(hContacts)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_ClassificationCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-10-21 original script
|
|
6
|
+
|
|
7
|
+
class DS_AssociationTypeCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'crossReference' then codeID = '001'
|
|
15
|
+
when 'largerWorkCitation' then codeID = '002'
|
|
16
|
+
when 'partOfSeamlessDatabase' then codeID = '003'
|
|
17
|
+
when 'source' then codeID = '004'
|
|
18
|
+
when 'stereoMate' then codeID = '005'
|
|
19
|
+
else
|
|
20
|
+
codeName = 'INVALID ASSOCIATION TYPE CODE'
|
|
21
|
+
codeID = '999'
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# write xml
|
|
25
|
+
@xml.tag!('gmd:DS_AssociationTypeCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#DS_AssociationTypeCode',
|
|
26
|
+
:codeListValue=>"#{codeName}",
|
|
27
|
+
:codeSpace=>"#{codeID}"})
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_CharacterSetCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-08-09 original script
|
|
6
|
+
|
|
7
|
+
class MD_CharacterSetCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'ucs2' then codeID = '001'
|
|
15
|
+
when 'ucs4' then codeID = '002'
|
|
16
|
+
when 'utf7' then codeID = '003'
|
|
17
|
+
when 'utf8' then codeID = '004'
|
|
18
|
+
when 'utf16' then codeID = '005'
|
|
19
|
+
when '8859part1' then codeID = '006'
|
|
20
|
+
when '8859part2' then codeID = '007'
|
|
21
|
+
when '8859part3' then codeID = '008'
|
|
22
|
+
when '8895part4' then codeID = '009'
|
|
23
|
+
when '8859part5' then codeID = '010'
|
|
24
|
+
when '8859part6' then codeID = '011'
|
|
25
|
+
when '8859part7' then codeID = '012'
|
|
26
|
+
when '8859part8' then codeID = '013'
|
|
27
|
+
when '8859part9' then codeID = '014'
|
|
28
|
+
when '8859part10' then codeID = '015'
|
|
29
|
+
when '8859part11' then codeID = '016'
|
|
30
|
+
when '8859part13' then codeID = '018'
|
|
31
|
+
when '8859part14' then codeID = '019'
|
|
32
|
+
when '8859part15' then codeID = '020'
|
|
33
|
+
when '8859part16' then codeID = '021'
|
|
34
|
+
when 'jis' then codeID = '022'
|
|
35
|
+
when 'shiftJIS' then codeID = '023'
|
|
36
|
+
when 'eusJP' then codeID = '024'
|
|
37
|
+
when 'usAscii' then codeID = '025'
|
|
38
|
+
when 'ebcdic' then codeID = '026'
|
|
39
|
+
when 'ecuKR' then codeID = '027'
|
|
40
|
+
when 'big5' then codeID = '028'
|
|
41
|
+
when 'GB2312' then codeID = '029'
|
|
42
|
+
else
|
|
43
|
+
codeName = 'INVALID CHARACTER SET'
|
|
44
|
+
codeID = '999'
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# write xml
|
|
48
|
+
@xml.tag!('gmd:MD_CharacterSetCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_CharacterSetCode',
|
|
49
|
+
:codeListValue=>"#{codeName}",
|
|
50
|
+
:codeSpace=>"#{codeID}"})
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_ClassificationCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-10-21 original script
|
|
6
|
+
|
|
7
|
+
class MD_ClassificationCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'unclassified' then codeID = '001'
|
|
15
|
+
when 'restricted' then codeID = '002'
|
|
16
|
+
when 'confidential' then codeID = '003'
|
|
17
|
+
when 'secret' then codeID = '004'
|
|
18
|
+
when 'topSecret' then codeID = '005'
|
|
19
|
+
else
|
|
20
|
+
codeName = 'INVALID CLASSIFICATION CODE'
|
|
21
|
+
codeID = '999'
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# write xml
|
|
25
|
+
@xml.tag!('gmd:MD_ClassificationCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ClassificationCode',
|
|
26
|
+
:codeListValue=>"#{codeName}",
|
|
27
|
+
:codeSpace=>"#{codeID}"})
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_DatatypeCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-10-21 original script
|
|
6
|
+
|
|
7
|
+
class MD_DatatypeCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'class' then codeID = '001'
|
|
15
|
+
when 'codelist' then codeID = '002'
|
|
16
|
+
when 'enumeration' then codeID = '003'
|
|
17
|
+
when 'codelistElement' then codeID = '004'
|
|
18
|
+
when 'abstractClass' then codeID = '005'
|
|
19
|
+
when 'aggregatedClass' then codeID = '006'
|
|
20
|
+
when 'specifiedClass' then codeID = '007'
|
|
21
|
+
when 'datatypeClass' then codeID = '008'
|
|
22
|
+
when 'interfaceClass' then codeID = '009'
|
|
23
|
+
when 'unionClass' then codeID = '010'
|
|
24
|
+
when 'metaClass' then codeID = '011'
|
|
25
|
+
when 'typeClass' then codeID = '012'
|
|
26
|
+
when 'characterString' then codeID = '013'
|
|
27
|
+
when 'integer' then codeID = '014'
|
|
28
|
+
when 'association' then codeID = '015'
|
|
29
|
+
else
|
|
30
|
+
codeName = 'INVALID DATATYPE'
|
|
31
|
+
codeID = '999'
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# write xml
|
|
35
|
+
@xml.tag!('gmd:MD_DatatypeCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_DatatypeCode',
|
|
36
|
+
:codeListValue=>"#{codeName}",
|
|
37
|
+
:codeSpace=>"#{codeID}"})
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:CI_DateTypeCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-08-09 original script
|
|
6
|
+
|
|
7
|
+
class CI_DateTypeCode
|
|
8
|
+
|
|
9
|
+
def initialize(xml)
|
|
10
|
+
@xml = xml
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def writeXML(codeName)
|
|
14
|
+
case(codeName)
|
|
15
|
+
when 'creation' then codeID = '001'
|
|
16
|
+
when 'publication' then codeID = '002'
|
|
17
|
+
when 'revision' then codeID = '003'
|
|
18
|
+
else
|
|
19
|
+
codeName = 'INVALID DATE TYPE'
|
|
20
|
+
codeID = '999'
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# write xml
|
|
24
|
+
@xml.tag!('gmd:CI_DateTypeCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode',
|
|
25
|
+
:codeListValue=>"#{codeName}",
|
|
26
|
+
:codeSpace=>"#{codeID}"})
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:DS_InitiativeTypeCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2014-05-21 original script
|
|
6
|
+
|
|
7
|
+
class DS_InitiativeTypeCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'campaign' then codeID = '001'
|
|
15
|
+
when 'collection' then codeID = '002'
|
|
16
|
+
when 'exercise' then codeID = '003'
|
|
17
|
+
when 'experiment' then codeID = '004'
|
|
18
|
+
when 'investigation' then codeID = '005'
|
|
19
|
+
else
|
|
20
|
+
codeName = 'INVALID CLASSIFICATION CODE'
|
|
21
|
+
codeID = '999'
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# write xml
|
|
25
|
+
@xml.tag!('gmd:DS_InitiativeTypeCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#DS_InitiativeTypeCode',
|
|
26
|
+
:codeListValue=>"#{codeName}",
|
|
27
|
+
:codeSpace=>"#{codeID}"})
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_KeywordTypeCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-09-18 original script
|
|
6
|
+
|
|
7
|
+
class MD_KeywordTypeCode
|
|
8
|
+
|
|
9
|
+
def initialize(xml)
|
|
10
|
+
@xml = xml
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def writeXML(codeName)
|
|
14
|
+
case(codeName)
|
|
15
|
+
when 'discipline' then codeID = '001'
|
|
16
|
+
when 'place' then codeID = '002'
|
|
17
|
+
when 'stratum' then codeID = '003'
|
|
18
|
+
when 'temporal' then codeID = '004'
|
|
19
|
+
when 'theme' then codeID = '005'
|
|
20
|
+
when 'taxon' then codeID = '006'
|
|
21
|
+
when 'instrument' then codeID = 'ADIwg-001'
|
|
22
|
+
else
|
|
23
|
+
codeName = 'INVALID KEYWORD TYPE'
|
|
24
|
+
codeID = '999'
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# write xml
|
|
28
|
+
@xml.tag!('gmd:MD_KeywordTypeCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_KeywordTypeCode',
|
|
29
|
+
:codeListValue=>"#{codeName}",
|
|
30
|
+
:codeSpace=>"#{codeID}"})
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_MaintenanceFrequencyCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-10-21 original script
|
|
6
|
+
|
|
7
|
+
class MD_MaintenanceFrequencyCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'continual' then codeID = '001'
|
|
15
|
+
when 'daily' then codeID = '002'
|
|
16
|
+
when 'weekly' then codeID = '003'
|
|
17
|
+
when 'fortnightly' then codeID = '004'
|
|
18
|
+
when 'monthly' then codeID = '005'
|
|
19
|
+
when 'quarterly' then codeID = '006'
|
|
20
|
+
when 'biannually' then codeID = '007'
|
|
21
|
+
when 'annually' then codeID = '008'
|
|
22
|
+
when 'asNeeded' then codeID = '009'
|
|
23
|
+
when 'irregular' then codeID = '010'
|
|
24
|
+
when 'notPlanned' then codeID = '011'
|
|
25
|
+
when 'unknown' then codeID = '012'
|
|
26
|
+
else
|
|
27
|
+
codeName = 'INVALID MAINTENANCE FREQUENCY'
|
|
28
|
+
codeID = '999'
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# write xml
|
|
32
|
+
@xml.tag!('gmd:MD_MaintenanceFrequencyCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_MaintenanceFrequencyCode',
|
|
33
|
+
:codeListValue=>"#{codeName}",
|
|
34
|
+
:codeSpace=>"#{codeID}"})
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_MediumFormatCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-09-24 original script
|
|
6
|
+
|
|
7
|
+
class MD_MediumFormatCode
|
|
8
|
+
|
|
9
|
+
def initialize(xml)
|
|
10
|
+
@xml = xml
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def writeXML(codeName)
|
|
14
|
+
case(codeName)
|
|
15
|
+
when 'cpio' then codeID = '001'
|
|
16
|
+
when 'tar' then codeID = '002'
|
|
17
|
+
when 'highSierra' then codeID = '003'
|
|
18
|
+
when 'iso9660' then codeID = '004'
|
|
19
|
+
when 'iso9660RockRidge' then codeID = '005'
|
|
20
|
+
when 'iso9660AppleHFS' then codeID = '006'
|
|
21
|
+
else
|
|
22
|
+
codeName = 'INVALID MEDIUM FORMAT TYPE'
|
|
23
|
+
codeID = '999'
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# write xml
|
|
27
|
+
@xml.tag!('gmd:MD_MediumFormatCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_MediumFormatCode',
|
|
28
|
+
:codeListValue=>"#{codeName}",
|
|
29
|
+
:codeSpace=>"#{codeID}"})
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_MediumNameCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-09-24 original script
|
|
6
|
+
|
|
7
|
+
class MD_MediumNameCode
|
|
8
|
+
|
|
9
|
+
def initialize(xml)
|
|
10
|
+
@xml = xml
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def writeXML(codeName)
|
|
14
|
+
case(codeName)
|
|
15
|
+
when 'cdRom' then codeID = '001'
|
|
16
|
+
when 'dvd' then codeID = '002'
|
|
17
|
+
when 'dvdRom' then codeID = '003'
|
|
18
|
+
when '3halfInchFloppy' then codeID = '004'
|
|
19
|
+
when '5quarterInchFloppy' then codeID = '005'
|
|
20
|
+
when '7trackTape' then codeID = '006'
|
|
21
|
+
when '9trackTape' then codeID = '007'
|
|
22
|
+
when '3480Cartridge' then codeID = '008'
|
|
23
|
+
when '3490Cartridge' then codeID = '009'
|
|
24
|
+
when '3580Cartridge' then codeID = '010'
|
|
25
|
+
when '4mmCartridgeTape' then codeID = '011'
|
|
26
|
+
when '8mmCartridgeTape' then codeID = '012'
|
|
27
|
+
when '1quarterInchCartridgeTape' then codeID = '013'
|
|
28
|
+
when 'digitalLinearTape' then codeID = '014'
|
|
29
|
+
when 'online' then codeID = '015'
|
|
30
|
+
when 'satellite' then codeID = '016'
|
|
31
|
+
when 'telephoneLink' then codeID = '017'
|
|
32
|
+
when 'hardcopy' then codeID = '018'
|
|
33
|
+
else
|
|
34
|
+
codeName = 'INVALID MEDIUM NAME'
|
|
35
|
+
codeID = '999'
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# write xml
|
|
39
|
+
@xml.tag!('gmd:MD_MediumNameCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_MediumNameCode',
|
|
40
|
+
:codeListValue=>"#{codeName}",
|
|
41
|
+
:codeSpace=>"#{codeID}"})
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_ObligationCode
|
|
2
|
+
# enumeration
|
|
3
|
+
|
|
4
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
5
|
+
|
|
6
|
+
# History:
|
|
7
|
+
# Stan Smith 2013-10-21 original script
|
|
8
|
+
|
|
9
|
+
class MD_ObligationCode
|
|
10
|
+
def initialize(xml)
|
|
11
|
+
@xml = xml
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def writeXML(codeName)
|
|
15
|
+
case(codeName)
|
|
16
|
+
when 'mandatory',
|
|
17
|
+
'optional',
|
|
18
|
+
'conditional'
|
|
19
|
+
else
|
|
20
|
+
codeName = 'INVALID OBLIGATION'
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# write xml
|
|
24
|
+
@xml.tag!('gmd:MD_ObligationCode',codeName)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:CI_OnLineFunctionCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-09-26 original script
|
|
6
|
+
|
|
7
|
+
class CI_OnLineFunctionCode
|
|
8
|
+
|
|
9
|
+
def initialize(xml)
|
|
10
|
+
@xml = xml
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def writeXML(codeName)
|
|
14
|
+
case(codeName)
|
|
15
|
+
when 'download' then codeID = '001'
|
|
16
|
+
when 'information' then codeID = '002'
|
|
17
|
+
when 'offlineAccess' then codeID = '003'
|
|
18
|
+
when 'order' then codeID = '004'
|
|
19
|
+
when 'search' then codeID = '005'
|
|
20
|
+
else
|
|
21
|
+
codeName = 'INVALID ONLINE FUNCTION CODE'
|
|
22
|
+
codeID = '999'
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# write xml
|
|
26
|
+
@xml.tag!('gmd:CI_OnLineFunctionCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_OnLineFunctionCode',
|
|
27
|
+
:codeListValue=>"#{codeName}",
|
|
28
|
+
:codeSpace=>"#{codeID}"})
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:CI_PresentationForm
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-11-20 original script
|
|
6
|
+
|
|
7
|
+
class CI_PresentationFormCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'documentDigital' then codeID = '001'
|
|
15
|
+
when 'documentHardcopy' then codeID = '002'
|
|
16
|
+
when 'imageDigital' then codeID = '003'
|
|
17
|
+
when 'imageHardcopy' then codeID = '004'
|
|
18
|
+
when 'mapDigital' then codeID = '005'
|
|
19
|
+
when 'mapHardcopy' then codeID = '006'
|
|
20
|
+
when 'modelDigital' then codeID = '007'
|
|
21
|
+
when 'modelHardcopy' then codeID = '008'
|
|
22
|
+
when 'profileDigital' then codeID = '009'
|
|
23
|
+
when 'profileHardcopy' then codeID = '010'
|
|
24
|
+
when 'tableDigital' then codeID = '011'
|
|
25
|
+
when 'tableHardcopy' then codeID = '012'
|
|
26
|
+
when 'videoDigital' then codeID = '013'
|
|
27
|
+
when 'videoHardcopy' then codeID = '014'
|
|
28
|
+
else
|
|
29
|
+
codeName = 'INVALID PRESENTATION FORM SET'
|
|
30
|
+
codeID = '999'
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# write xml
|
|
34
|
+
@xml.tag!('gmd:CI_PresentationFormCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_PresentationFormCode',
|
|
35
|
+
:codeListValue=>"#{codeName}",
|
|
36
|
+
:codeSpace=>"#{codeID}"})
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_ProgressCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-08-26 original script
|
|
6
|
+
|
|
7
|
+
class MD_ProgressCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
|
|
14
|
+
case(codeName)
|
|
15
|
+
when 'completed' then codeID = '001'
|
|
16
|
+
when 'historicalArchive' then codeID = '002'
|
|
17
|
+
when 'obsolete' then codeID = '003'
|
|
18
|
+
when 'onGoing' then codeID = '004'
|
|
19
|
+
when 'planned' then codeID = '005'
|
|
20
|
+
when 'required' then codeID = '006'
|
|
21
|
+
when 'underDevelopment' then codeID = '007'
|
|
22
|
+
else
|
|
23
|
+
codeName = 'INVALID ROLE CODE'
|
|
24
|
+
codeID = '999'
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# write xml
|
|
28
|
+
@xml.tag!('gmd:MD_ProgressCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_ProgressCode',
|
|
29
|
+
:codeListValue=>"#{codeName}",
|
|
30
|
+
:codeSpace=>"#{codeID}"})
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# ISO <<CodeLists>> gmd:MD_RestrictionCode
|
|
2
|
+
|
|
3
|
+
# from http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml
|
|
4
|
+
# History:
|
|
5
|
+
# Stan Smith 2013-10-21 original script
|
|
6
|
+
|
|
7
|
+
class MD_RestrictionCode
|
|
8
|
+
def initialize(xml)
|
|
9
|
+
@xml = xml
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def writeXML(codeName)
|
|
13
|
+
case(codeName)
|
|
14
|
+
when 'copyright' then codeID = '001'
|
|
15
|
+
when 'patent' then codeID = '002'
|
|
16
|
+
when 'patentPending' then codeID = '003'
|
|
17
|
+
when 'trademark' then codeID = '004'
|
|
18
|
+
when 'license' then codeID = '005'
|
|
19
|
+
when 'intellectualPropertyRights' then codeID = '006'
|
|
20
|
+
when 'restricted' then codeID = '007'
|
|
21
|
+
when 'otherRestrictions' then codeID = '008'
|
|
22
|
+
else
|
|
23
|
+
codeName = 'INVALID RESTRICTION'
|
|
24
|
+
codeID = '999'
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# write xml
|
|
28
|
+
@xml.tag!('gmd:MD_RestrictionCode',{:codeList=>'http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode',
|
|
29
|
+
:codeListValue=>"#{codeName}",
|
|
30
|
+
:codeSpace=>"#{codeID}"})
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|