libxml iterate xml tree

P

Philipp

Hello Everyone,
i dumped my whole saturday on a small xml problem :)

i have a xml document

e.g

<car>
<door id=1>
<door_handle id=1 color='black'>
</door_handle>
<door_handle id=2 color='blue'>
</door_handle>
</door>

<door id=2>
<door_handle id=3 color='green'>
</door_handle>
</door>

</car>

now i want to get all door_handle from each door ?
i tried to iterate it with

running_config_xml = XML::Document.file(@running_config_file)
car = running_config_xml.root

car.each{|door|
door.each{|door_handle|
puts door_handle['color']
}
}


fist it looks working but every second door_handle had no color ..
i probably iterate it wrong..

is there a trick to do this ??

thanks ahead


Philipp
 
P

Philipp

if i do it like

car.each{|door| if door.child?
door.each{|door_handle| if door_handle.child?
puts "color #{door_handle['color']}"

end }

end}

it shows only the elements with content !!
dont know why but its working ..
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,269
Messages
2,571,338
Members
48,026
Latest member
DannieKeeg

Latest Threads

Top