use strict; use XML::Rules; my $xml = <<'*END*'; John Doe 43 M Operations *END* { my $parser = new XML::Rules ( rules => [ _default => 'content', employee => 'pass no content', ] ); my $result = $parser->parsestring($xml); use Data::Dumper; print Dumper($result); } { my $parser = new XML::Rules ( rules => [ _default => 'content', employee => sub {print "$_[1]->{name} is $_[1]->{age} years old and works in the $_[1]->{department} section\n"}, ] ); $parser->parsestring($xml); } print "\n\n"; { my $xml = <<'*END*'; John Doe 43 M Operations Jane Doe 31 F Accounts Be Goode 32 M Human Resources *END* my $parser = new XML::Rules ( rules => [ _default => 'content', employee => sub {print "$_[1]->{name}\nAge/Sex: $_[1]->{age}/$_[1]->{sex}\nDepartment: $_[1]->{department} section\n\n"}, ] ); $parser->parsestring($xml); }