class RelatonItu::XMLParser
Private Class Methods
bib_item(item_hash)
click to toggle source
@param item_hash [Hash] @return [RelatonItu::ItuBibliographicItem]
# File lib/relaton_itu/xml_parser.rb, line 10 def bib_item(item_hash) ItuBibliographicItem.new **item_hash end
fetch_editorialgroup(ext)
click to toggle source
@param ext [Nokogiri::XML::Element] @return [RelatonItu::EditorialGroup]
# File lib/relaton_itu/xml_parser.rb, line 16 def fetch_editorialgroup(ext) eg = ext.at("./editorialgroup") return unless eg EditorialGroup.new( bureau: eg.at("bureau")&.text, group: itugroup(eg.at("group")), subgroup: itugroup(eg.at("subgroup")), workgroup: itugroup(eg.at("workgroup")), ) end
fetch_structuredidentifier(ext)
click to toggle source
@param ext [Nokogiri::XML::Element] @return [RelatonItu::StructuredIdentifier]
# File lib/relaton_itu/xml_parser.rb, line 53 def fetch_structuredidentifier(ext) sid = ext.at "./structuredidentifier" return unless sid br = sid.at("bureau").text dn = sid.at("docnumber").text an = sid.at("annexid")&.text StructuredIdentifier.new(bureau: br, docnumber: dn, annexid: an) end
itugroup(group)
click to toggle source
@param com [Nokogiri::XML::Element] @return [RelatonItu::ItuGroup]
# File lib/relaton_itu/xml_parser.rb, line 30 def itugroup(group) return unless group ItuGroup.new( type: group[:type], name: group.at("name").text, acronym: group.at("acronym")&.text, period: itugroupperiod(group.at("period")), ) end
itugroupperiod(period)
click to toggle source
@param com [Nokogiri::XML::Element] @return [RelatonItu::ItuGroup::Period]
# File lib/relaton_itu/xml_parser.rb, line 43 def itugroupperiod(period) return until period ItuGroup::Period.new( start: period.at("start").text, finish: period.at("end")&.text, ) end