use XML::Rules; my $parser = XML::Rules->new( rules => [ 'description,title' => 'content', 'item' => sub { print "$_[1]->{title}: $_[1]->{description}\n" return; }, 'inbox' => '', ], ); $parser->parse('sample.xml');