/ / html etiquetas de xml usando libxml - html, xml, perl, libxml2

Etiquetas html de xml usando libxml - html, xml, perl, libxml2

tengo un xml como este

 <text>
<h1>First title</h1>
<p>First paragraph</p>
<p>Second paragraph</p>
</text>

y un script de perl

my $file = "../data/text.xml";
my $parser = XML::LibXML->new();
my $doc = $parser->parse_file($file);
my $root= $doc->getDocumentElement;
$t=$doc->findnodes("//text")->get_node(1);
$text=encode_entities($t->findvalue("text"));

El problema es que cuando estoy imprimiendo el texto, Perl ignora esas 2 etiquetas html y solo devuelve

"Primer título Primer párrafo Segundo párrafo"

Entonces el contenido de la página no es correcto. ¿Que puedo hacer? ¿Hay una manera sin ciclismo y tomando cada párrafo manualmente? El xml podría tener un título y un párrafo, 20 párrafos o incluso un párrafo, un título, otro párrafo y un título más pequeño. Gracias.

Respuestas

0 para la respuesta № 1
join q(), map { $_->toString } $doc->findnodes("//text")->get_node(1)->childNodes