XML::Simple does not pick up multiple entries into array
am 10.04.2008 22:04:53 von jck000
I'm parsing data and one of there are multiple EMBEDDED_FILE tags.
I've set it to put these into an array as well as a hash. However,
only one entry appears
$ref = XMLin($xml_src,
ForceArray => [ 'EMBEDDED_FILE' ],
SuppressEmpty => '');
This is the result. I can view the source and there are multiple
EMBEDDED_FILE tags. So,
This is the result:
'EMBEDDED_FILE' => [
{
'DOCUMENT' => '',
'_Type' => 'HTML'
}
],
When there is a single entry usually PDF, I can decode it properly.
Is there an option to force it to correctly interpret the two entries?
Thanks
Jack
Re: XML::Simple does not pick up multiple entries into array
am 11.04.2008 02:00:43 von Jim Gibson
In article
<98e232e6-a7d8-4e13-b456-9fc0052b2ba0@u12g2000prd.googlegroups.com>,
<"jck000@gmail.com"> wrote:
> I'm parsing data and one of there are multiple EMBEDDED_FILE tags.
> I've set it to put these into an array as well as a hash. However,
> only one entry appears
>
> $ref = XMLin($xml_src,
> ForceArray => [ 'EMBEDDED_FILE' ],
> SuppressEmpty => '');
>
>
> This is the result. I can view the source and there are multiple
> EMBEDDED_FILE tags. So,
>
>
>
>
>
>
>
>
>
>
> This is the result:
>
> 'EMBEDDED_FILE' => [
> {
> 'DOCUMENT' => '',
> '_Type' => 'HTML'
> }
> ],
>
> When there is a single entry usually PDF, I can decode it properly.
> Is there an option to force it to correctly interpret the two entries?
>
> Thanks
> Jack
I am no XML expert, but well-formed XML documents should have a single,
all-enclosing tag at the beginning and end, and yours doesn't. You can
try adding them:
$xml_src = "$xml_src";
If you can't do that, you can try other XML parsers that might work
differently from XML::Simple, but you really should be giving
well-formed input to any XML Parser.
--
Jim Gibson
Posted Via Usenet.com Premium Usenet Newsgroup Services
----------------------------------------------------------
http://www.usenet.com