I dont know the exact form of the (presumably) hash you are getting back form the DB, but here is one way for a fairly flat hash
#!/usr/bin/perl -w
use strict;
use Data::Dumper;
use XML::Simple qw(:strict);
my $data = {
phone => '555-1234',
type => 'home'
};
print STDERR XML::Simple->new(KeyAttr => {phone => 'type'},
RootName => 'phone',
XMLDecl => 1,
ContentKey => 'phone',
)->XMLout($data);
output
/usr/bin/perl -w "/home/le6303/src/perl/phone.pl"
<?xml version='1.0' standalone='yes'?>
<phone type="home">555-1234</phone>
Update : changed the KeyAttr to the more preferred hash form