use strict; use warnings; use XML::Simple qw(XMLout); my $VAR1 = "bla1"; my $VAR2 = "bla2"; my $VAR3 = "bla3"; my $VAR4 = "bla4"; my $xml = { source=>[{ abc=>[{ uname=>[$VAR1], dbcrdn=>[$VAR2], paridn=>[$VAR3], osath=>[$VAR4], }] }] }; print XMLout($xml,RootName => "root");