25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
# File 'lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_processing.rb', line 25
def writeXML(hProcessing, inContext = nil)
identifierClass = MD_Identifier.new(@xml, @hResponseObj)
citationClass = CI_Citation.new(@xml, @hResponseObj)
algorithmClass = LE_Algorithm.new(@xml, @hResponseObj)
outContext = 'processing'
outContext = inContext + ' ' + outContext unless inContext.nil?
@xml.tag!('mrl:LE_Processing') do
aAlgorithms = hProcessing[:algorithms]
aAlgorithms.each do |hAlgorithm|
@xml.tag!('mrl:algorithm') do
algorithmClass.writeXML(hAlgorithm, outContext)
end
end
if aAlgorithms.empty? && @hResponseObj[:writerShowTags]
@xml.tag!('mrl:algorithm')
end
unless hProcessing[:identifier].empty?
hIdentifier = hProcessing[:identifier]
unless hIdentifier.empty?
@xml.tag!('mrl:identifier') do
identifierClass.writeXML(hIdentifier, outContext)
end
end
end
if hProcessing[:identifier].nil?
@NameSpace.issueWarning(430, 'mrl:identifier', outContext)
end
hCitation = hProcessing[:softwareReference]
unless hCitation.empty?
@xml.tag!('mrl:softwareReference') do
citationClass.writeXML(hCitation, outContext)
end
end
if hCitation.empty? && @hResponseObj[:writerShowTags]
@xml.tag!('mrl:softwareReference')
end
unless hProcessing[:procedureDescription].nil?
@xml.tag!('mrl:procedureDescription') do
@xml.tag!('gco:CharacterString', hProcessing[:procedureDescription])
end
end
if hProcessing[:procedureDescription].nil? && @hResponseObj[:writerShowTags]
@xml.tag!('mrl:procedureDescription')
end
aCitations = hProcessing[:documentation]
aCitations.each do |hCitation|
@xml.tag!('mrl:documentation') do
citationClass.writeXML(hCitation, outContext)
end
end
if aCitations.empty? && @hResponseObj[:writerShowTags]
@xml.tag!('mrl:documentation')
end
unless hProcessing[:runtimeParameters].nil?
@xml.tag!('mrl:runTimeParameters') do
@xml.tag!('gco:CharacterString', hProcessing[:runtimeParameters])
end
end
if hProcessing[:runtimeParameters].nil? && @hResponseObj[:writerShowTags]
@xml.tag!('mrl:runTimeParameters')
end
end
end
|