24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/onoma/nomenclature.rb', line 24
def harvest(element, options = {})
notions = element.attr('notions').to_s.split(/\s*\,\s*/).map(&:to_sym)
options[:notions] = notions if notions.any?
options[:translateable] = element.attr('translateable').to_s != 'false'
name = element.attr('name').to_s
nomenclature = new(name, options)
element.xpath('xmlns:properties/xmlns:property').each do |property|
nomenclature.harvest_property(property)
end
element.xpath('xmlns:items/xmlns:item').each do |item|
nomenclature.harvest_item(item)
end
nomenclature.list.each(&:fetch_parent)
nomenclature.rebuild_tree!
nomenclature
end
|