$doc->findnodes('foo') #### $doc->findnodes('seg/foo') #### $doc->findnodes('/seg/foo') #### $foo->findnodes('text()') #### join('', map { $_->toString() } $foo_node->childNodes) #### join('', $foo_node->childNodes) #### $foo->findvalue('@mid') #### $foo->getAttribute('mid') #### use strict; use warnings qw( all ); use feature qw( say ); use XML::LibXML qw( ); my $xml = <<'__EOS__'; Need to export this text __EOS__ my $doc = XML::LibXML->new->parse_string($xml); for my $foo_node ($doc->findnodes('/seg/foo')) { my $mid = $foo_node->getAttribute('mid'); my $inner_xml = join('', $foo_node->childNodes); say "$mid $inner_xml"; }