in reply to How to build a simple XML DTD parser

Jupe, it sounds as if you may want to look into the XML::Simple module. You can feed it an XML file or string as input, and it can give you back a hash, with the appropriate nested keys.

Hope that helps!