![]() |
|
Think about Loose Coupling | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
XML::Simple tries to provide a simple interface but it does assume a knowledge of Perl references. I recommend perlreftut. The most common mistake with XML::Simple is to ignore the advice in the docs about the ForceArray and KeyAttr options. Always set ForceArray => 1 if you're not sure, and setting it to an array of element names is probably the best way. I also recommend setting KeyAttr => [] unless you know what you want. In the case of the original XML snippet, KeyAttr => 'DlrItemNum' might be useful. I suspect the line that says if ( ref $thing eq "SCALER" ); will never get executed. If you're processing big XML files, XML::SAX might be a good answer. XML::SAX::ByRecord from Barrie Slaymaker's XML::SAX::Machines could be very handy once you have your head around SAX. But, XML::Twig is possibly the best answer for simple record oriented processing. Edit: Sorry, I typed 'always set ForceArray => 0 ...' when I meant 'ForceArray => 1 ...' In reply to Re: Re: easy way of parsing XML
by grantm
|
|