lib/gutenberg_rdf/rdf/agent.rb in gutenberg_rdf-0.0.2 vs lib/gutenberg_rdf/rdf/agent.rb in gutenberg_rdf-0.1.0

- old
+ new

@@ -6,11 +6,11 @@ def initialize(xml) @xml = xml end def id - xml.at_xpath('pgterms:agent').attribute('about').content.match(/\A\d\d\d\d\/agents\/(\d+)\z/)[1] + xml.elements['pgterms:agent'].attributes['about'].match(/\A\d\d\d\d\/agents\/(\d+)\z/)[1] end def fullname [firstname, lastname].join(' ') end @@ -22,32 +22,32 @@ def firstname @firstname ||= name_parts[:first] end def birthdate - xml.at_xpath('pgterms:agent/pgterms:birthdate').text + xml.elements['pgterms:agent/pgterms:birthdate'].text end def deathdate - xml.at_xpath('pgterms:agent/pgterms:deathdate').text + xml.elements['pgterms:agent/pgterms:deathdate'].text end def webpage - xml.at_xpath('pgterms:agent/pgterms:webpage').attribute('resource').content + xml.elements['pgterms:agent/pgterms:webpage'].attributes['resource'] end def aliases entries = Array.new - xml.xpath('//pgterms:alias').each do |name| + xml.elements.each('pgterms:agent/pgterms:alias') do |name| entries << name.text end entries end private def name_parts - parts = xml.xpath('//pgterms:name').text.split(/, */) + parts = xml.elements['pgterms:agent/pgterms:name'].text.split(/, */) last = parts.shift first = parts.reverse.join(' ') {first: first, last: last} end