class ADIWG::Mdtranslator::Writers::Iso19115_1::CI_Responsibility
Public Class Methods
new(xml, hResponseObj)
click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_1/classes/class_responsibility.rb, line 20 def initialize(xml, hResponseObj) @xml = xml @hResponseObj = hResponseObj @NameSpace = ADIWG::Mdtranslator::Writers::Iso19115_1 end
Public Instance Methods
writeXML(hResponsibility, inContext = nil)
click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_1/classes/class_responsibility.rb, line 26 def writeXML(hResponsibility, inContext = nil) # classes used codelistClass = MD_Codelist.new(@xml, @hResponseObj) extentClass = EX_Extent.new(@xml, @hResponseObj) individualClass = CI_Individual.new(@xml, @hResponseObj) orgClass = CI_Organization.new(@xml, @hResponseObj) outContext = 'responsible party' outContext = inContext + ' responsible party' unless inContext.nil? @xml.tag!('cit:CI_Responsibility') do # responsibility - role (required) unless hResponsibility[:roleName].nil? @xml.tag!('cit:role') do codelistClass.writeXML('cit', 'iso_role', hResponsibility[:roleName]) end end if hResponsibility[:roleName].nil? @NameSpace.issueWarning(270, 'cit:role', outContext) end # responsibility - extent [] {EX_Extent} aExtents = hResponsibility[:roleExtents] aExtents.each do |hExtent| @xml.tag!('cit:extent') do extentClass.writeXML(hExtent) end end if aExtents.empty? && @hResponseObj[:writerShowTags] @xml.tag!('cit:extent') end # responsibility - party [] {CI_Individual | CI_Organization} (required) aParty = hResponsibility[:parties] aParty.each do |hParty| unless hParty.empty? contactId = hParty[:contactId] hContact = @NameSpace.getContact(contactId) unless hContact.empty? @xml.tag!('cit:party') do if hContact[:isOrganization] orgClass.writeXML(hParty, hContact, outContext) else individualClass.writeXML(hContact, outContext) end end end if hContact.empty? @NameSpace.issueWarning(272, 'cit:party', outContext) end end if hParty.empty? @NameSpace.issueWarning(271, 'cit:party', outContext) end end end # CI_Responsibility tag end