use XML::Rules;
my $xml = <<'*END*';
<?xml version='1.0'?>
<employees>
<employee>
<name>John Doe</name>
<age>43</age>
<sex>M</sex>
<department>Operations</department>
</employee>
<employee>
<name>Jane Doe</name>
<age>31</age>
<sex>F</sex>
<department>Accounts</department>
</employee>
<employee>
<name>Be Goode</name>
<age>32</age>
<sex>M</sex>
<department>Human Resources</department>
</employee>
</employees>
*END*
my $parser = new XML::Rules (
rules => [
_default => 'as array trim',
]
);
my $data = $parser->parse($xml);
use Data::Dumper;
print Dumper($data);
print $parser->toXML( 'employees', $data->{employees}[0]);