cyrilw has asked for the wisdom of the Perl Monks concerning the following question:
We are sent XML orders that have this structure..
<OrderDetail> <ListOfItemDetail> <ItemDetail> <BuyerLineItemNum>1</BuyerLineItemNum> <ListOfStructuredNote> <StructuredNote> <GeneralNote>Line 1 Text.</GeneralNote> </StructuredNote> </ListOfStructuredNote> </ItemDetail> <ItemDetail> <BuyerLineItemNum>2</BuyerLineItemNum> <ListOfStructuredNote> <StructuredNote> <GeneralNote>Line 2 Text.</GeneralNote> </StructuredNote> </ListOfStructuredNote> <ListOfStructuredNote> <StructuredNote> <GeneralNote>More Line 2 Text.</GeneralNote> </StructuredNote> </ListOfStructuredNote> </ItemDetail> </ListOfItemDetail> </OrderDetail>
We use these bits of perl code to extract the data.
my ( $orderDetail ) = $message->{OrderDetail}; my ( $itemDetails ) = $orderDetail->{ListOfItemDetail}->{ItemDetail +}; $LineNoteNum = scalar ( @$itemDetails ); for ( $itemNum = 0; $itemNum < $LineNoteNum; $itemNum++ ) { my ( $lineItemNote ) = $$itemDetails[$itemNum]{ListOfStructu +redNote}->{StructuredNote}; for ( $NoteNum = 0; $NoteNum < $LineNoteNum; $NoteNum++ ) { my ( $testString ) = $$lineItemNote[$NoteNum]{GeneralNote}; } }
We only get the first line of Text for each ItemDetail.
I suspect that is because that is all I am asking for.
How do I get it to loop through all the text lines sent.?
Many thanks,
Cyril.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Nested data with XML::Simple
by manorhce (Beadle) on Feb 22, 2013 at 05:47 UTC | |
Re: Nested data with XML::Simple
by Anonymous Monk on Feb 22, 2013 at 01:14 UTC | |
by cyrilw (Initiate) on Feb 22, 2013 at 01:33 UTC | |
by Anonymous Monk on Feb 22, 2013 at 01:45 UTC | |
by tangent (Parson) on Feb 22, 2013 at 02:09 UTC |
Back to
Seekers of Perl Wisdom