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


in reply to Dereferencing a hashref from XML::Simple

Maybe this could help:
#!/usr/bin/perl use warnings; use strict; ; use XML::Simple qw(:strict); use Data::Dumper; my $xml =q(<?xml version="1.0"?> <response> <files> <file file_url="http://server.domain/file1.exe"> file1.exe </file> <file file_url="http://server.domain/file2.zip"> file2.zip </file> </files> </response> ); my $ref = XMLin($xml, forcearray => [ qw(files) ], keyattr => [] ); my %files; for my $elem(@{$ref->{files}}){ my $filesref = $elem->{file}; $files{$_->{content}} = $_->{file_url} for(@$filesref); } print Dumper(\%files);