http://www.perlmonks.org?node_id=1044234


in reply to Creating a hash out of multiple XML attributes in an elment

I think you want something like this:

my $key2value; my $t= XML::Twig->new( twig_handlers => { 'settings' => sub { file( +@_, $key2value); } } ) ->parsefile( 'sample.xml'); sub file{ my($t, $settings, $key2value)=@_; $key2value->{$settings->att( 'key')}= $settings->att( 'value'); }