From: Wiebe Cazemier Date: 2007-11-04T05:20:16+09:00 Subject: Re: Rexml Xpath parsing change On Monday 29 October 2007 20:25, ermac wrote: > Hi, > > Some of my old code no longer works with the latest version of ruby > and I'm trying to figure out why. > > My code is parsing an XML file with REXML, using XPath.each(). The > same code with the same xpath on the same xml input returns some > results in ruby 1.8.4, but no results in ruby 1.8.6. > > Can anyone explain this? I've had no luck searching through the > archives of this group. > > I've distilled out a minimal example. > > ## XML input: > > > > > > > > > > > > ## Code: > > xPath = "/containerxml/container[@name='0001']/atom" > REXML::XPath.each(xDoc.root, xPath) do |elt| > puts elt.attributes["name"] > end > > > ## Results on ruby 1.8.4: > > build4:/p4/gq$ ruby -v > ruby 1.8.4 (2005-12-24) [i586-linux] > > build4:/p4/gq$ ruby test.rb > 1001 > 1002 > 1003 > > ## Results on ruby 1.8.6: > > jim@roch:/tmp$ ruby -v > ruby 1.8.6 (2007-06-07 patchlevel 36) [i486-linux] > > jim@roch:/tmp$ ruby test.rb > jim@roch:/tmp$ Did you find a solution? I'm having the same problem.