XML::DOM is an in depth treatment of a Perl interface for XML. This is a heavier interface that XML::Simple but allows you to do use features such as validating the XML document against a DTD.
For something a bit more in depth, I would actually recommend XML::LibXML over XML::DOM. XML::LibXML is actively maintained and is lightning fast. XML::DOM got somewhat neglected by Enno until TJ Mather rescued it last year and put out a release.
Personally I use XML::LibXML both for it's speed (based on libxml2 instead of expat) and because it validates XML against DTDs nicely.