<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:Courier New,courier,monaco,monospace,sans-serif;font-size:10pt">Para modificar un XML al vuelo, a lo mejor te interesa más utilizar XML::Twig o directamente con una transformación XSLT, sin usar Perl.<br><br>A mi XML::Simple no me gusta nada, creo que se pasa tratando de simplificar las cosas y siempre me decanto por XML::LibXML aunque es cierto que resulta más laborioso (pero lo compensa con el soporte para RelaxNG).<br><br>- Salva<br><div><br></div><div style="font-family:Courier New, courier, monaco, monospace, sans-serif;font-size:10pt"><br><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><font size="2" face="Tahoma"><hr size="1"><b><span style="font-weight: bold;">From:</span></b> Francisco Rivas <franciscojrivash@gmail.com><br><b><span style="font-weight: bold;">To:</span></b> Lista de correo de Madrid
 Perl Mongers <madrid-pm@pm.org><br><b><span style="font-weight: bold;">Sent:</span></b> Wed, April 27, 2011 6:39:16 PM<br><b><span style="font-weight: bold;">Subject:</span></b> [Madrid-pm] Parsear un XML<br></font><br>
<meta http-equiv="x-dns-prefetch-control" content="off"><font face="tahoma,sans-serif">Hola *,<br><br>Quiero hacer un script para modificar un XML y he encontrado varios modulos en el CPAN que lo hacen XML::LibXML y XML::Simple por ejemplo. El detalle es que la forma del XML que tengo es biiiienn extrana :P, puesto que tiene varios niveles. Entonces lo que quiero hacer con el XML es quitarle algunos elementos y modificar otros. Estoy utilizando por el momento XML::Simple, soy bastante novato en Perl y por eso recurro a la lista.<br>

<br>#!/usr/bin/perl<br><br>use strict;<br>use warnings;<br><br>use XML::Simple;<br>use Data::Dumper;<br>$Data::Dumper::Indent = 3;<br><br>my $fh = 'BookatableWid_asset.xml';<br>my $tree = XMLin($fh);<br>delete $tree->{protocolVersion};<br>

print Dumper($tree);<br><br>En esto que llevo hecho, que es una tonteria al final, solo elimino una de las 'keys' que me interesa.<br><br><span>El detalle esta en que luego hay hash de hashes de hashes dentro del XML. Miren <a target="_blank" href="http://pastebin.com/muT2zH9E">http://pastebin.com/muT2zH9E</a></span><br>

<br>Entonces necesito iterar en esa estructura para buscar las 'keys' que quiero modificar o eliminar incluso. <br><br>Algunas recomendacion?. usar otro modulo?, utilizar ForceArray o ForceContent, GroupTags o algo asi?<br>

<br>Gracias de antemano. Muy buena tarde. :D<br></font>
<meta http-equiv="x-dns-prefetch-control" content="on"></div></div>



</div></body></html>