From: Paul Ash Date: 2008-06-08T07:18:46+09:00 Subject: rexml & nested loops I'm a bit of a newbie to Ruby, and to xpath..... and hoping someone here can give me the one-liner version of why this is failing. I have an XML structure like: Foo1 foobar1 foobar2 Foo2 foobar3 foobar4 And the code doc.each_element('//foo') { |foo| puts "*** Processing #{foo.elements['fooId'].text}" foo.each_element('//subFoo') { |subFoo| puts subFoo.elements["subfooName"].text } } What I was expecting was a nested loop.. but what I get is: doc.each_element('//foo') { |foo| This iterator does what I expect. foo.each_element('//subFoo') { |subFoo| This iterator seems to give me all instances of subFoo in doc, not just in the current instance of foo. I'm sure this i just something about ruby that I don't understand... but can someone point me in the right direction? Cheers ash