#!/usr/local/bin/perl use strict; use warnings; use XML::Twig; my $xml = < s + s XML my $twig = XML::Twig->new ( twig_roots => {'mml:mi' => \&subst,}, # process the element twig_print_outside_roots => 1, # print the rest ); $twig->parse ($xml); sub subst { my ($twig, $value) = @_; print '...'; } #### ... + ...