in reply to problem parsing XML into hash

The hash you'd like it to be isn't very well formed. Several of the leaf hashes contain an odd number of elements. Are you sure the leaves shouldn't be arrays?
Perl --((8:>*