in reply to Building XML Index File

If your task is so easy ( just get some fields and values ) XML::XPath may an option too. Or use XML::Simple or XML::Smart for not so large files. Or the most flexible way is to use XML::SAX read XML::SAX::Intro if you have not done already. Or use XSLT but IMHO it is complicated for anything that does something with the data.
Boris