my $xml_obj = XML::Simple->new(Keeproot => 1); #### #!/usr/bin/perl use strict; use XML::Simple; use Data::Dumper; my $xml_obj = XML::Simple->new(Keeproot => 1, ForceArray => ['campaign']); # xml my $xml = $xml_obj->XMLin('test.xml'); print Dumper($xml); my $out = $xml_obj->XMLout($xml); print Dumper($out); exit; ---------------------------------------------------------- $VAR1 = { 'campaign' => [ { 'menuid' => '10118-2', 'action' => '0', 'phonenumbers' => { 'phonenumber' => { 'number' => '4167781583', 'prompts' => { 'prompt' => { 'tts' => 'Hello, this is a test.', 'promptid' => '2' } }, 'callid' => '1234abc' } } } ] }; $VAR1 = ' '; #### #!/usr/bin/perl use strict; use XML::Simple; use Data::Dumper; my $xml_obj = XML::Simple->new(ForceArray => ['campaign']); # xml my $xml = $xml_obj->XMLin('test.xml'); print Dumper($xml); my $out = $xml_obj->XMLout($xml); print Dumper($out); exit; ------------------------------------------------------ $VAR1 = { 'menuid' => '10118-2', 'action' => '0', 'phonenumbers' => { 'phonenumber' => { 'number' => '4167781583', 'prompts' => { 'prompt' => { 'tts' => 'Hello, this is a test.', 'promptid' => '2' } }, 'callid' => '1234abc' } } }; $VAR1 = ' ';