use strict; use warnings; use XML::HoA qw(genRecord); my $aData = [ { 'lname' => 'Krynicky' , 'fname' => 'Jenda' , PageId => 1, Name => 'Civil name' } , { 'Site' => 'PerlMonks' , 'Nick' => 'Jenda' , PageId => 2, Name => 'Online identity' } ]; my $crFilter = sub { my $k = shift; return $k !~ /^(?:PageId|Name)$/; }; my $hOptions={format=>XML::HoA::NAME_TEXT_VAL_TEXT , record=>'page' , name=>'ID' , filter => $crFilter }; print genRecord($aData, $hOptions);