use strict; use XML::Twig; local $/; XML::Twig->new( TwigHandlers => { '/root/msg' => sub { $_[1]->set_text('Twig is easy') } } )->parse()->print; __DATA__ As a last resort XML::LibXML is also useful.