Para analisar facilmente XML em Perl, eu uso XML :: Simple . Isso é muito útil se você quiser, para analisar a resposta de uma solicitação a um site que permite usar um sistema de API, como o Imageshack no meu caso.
Por exemplo, vamos escrever um pedaço de código XML como o seguinte:
<booklist>
<author>George Orwell</author>
<book>
<title>Animal Farm</title>
<year>1945</year>
<language>English</language>
<country>United Kingdom</country>
</book>
</booklist>
agora vamos ver como o Perl pode transformar o código XML anterior em um hash Perl:
use strict;
use warnings;
use XML::Simple;
my $xml = q{<booklist>
<author>George Orwell</author>
<book>
<title>Animal Farm</title>
<year>1945</year>
<language>English</language>
<country>United Kingdom</country>
</book>
</booklist>};
my $data = XMLin($xml);
por exemplo, vamos imprimir o título do livro:
print $data->{book}{title}, "n"
ou se quiser ver todo o conteúdo de $ data com Data :: Dumper basta digitar:
print Dumper( $data ), "n";
bem fácil né?