Como lidar com um xml que pode ter uma ou mais ocorrências de nó no arquivo em perl.
Na solução atual fornecida abaixo,
foreach $FileContainerRec (@{$XmlFile->{FileContainer}})
{
$FileContainer = 'C'.$FileContainerCt;
foreach $FileRec (@{$FileContainerRec->{File}})
{
$File = $FileContainer.'file'.$FileCt;
$OutFileName = $FileRec->{OutFileName};
$ActiveIndicator = $FileRec->{ActiveIndicator};
$AuditFlag = $FileRec->{AuditFlag};
$Delimiter = $FileRec->{Delimiter};
@FileDesc=();
@FileDesc=($OutFileName,$ActiveIndicator,$AuditFlag,$Delimiter);
$FileList{$File}=[@FileDesc];
$FileCt++;
}
$FileContainerCt++;
$FileCt=1;
}
amostra ip xml:
<Document>
<FileContainer>
<File>
......
</File>
<File>
......
</File>
</FileContainer>
<FileContainer>
<File>
......
</File>
<File>
......
</File>
</FileContainer>
<Document>
a ouccurance de e pode variar de 0 a n numero de vezes.
O trecho de código perl lança um erro como 'Não é uma ARRAY Referance', quando temos um dos Nós 'FileContainer' ou 'File'.