http://www.perlmonks.org?node_id=846291


in reply to Re^2: help to preserve the order of hash
in thread help to preserve the order of hash

Howdy!

True, but it does not appear to do what the OP needs. As I read the POD, it appears that the top level structure returned by XMLin is always a hashref. At any given level, the keys in the hash are the distinct tags that appear at that level. If there are multiple instances of a tag, each instance is an element in an array of hashes.

ForceArray simply forces that behavior even if there is only one instance of the tag. It does not appear that there is any way to make XMLin return an arrayref.

The POD does describe the limitations, and the OP has run smack into one of them. The suggested course of action is "use a different module". Hacking (for some value of "hacking") XML::Simple to use Tie::IxHash internally is certainly one way to go there; the OP will have to decide which approach will work best for this problem.

yours,
Michael
  • Comment on Re^3: help to preserve the order of hash

Replies are listed 'Best First'.
Re^4: help to preserve the order of hash
by LanX (Saint) on Jun 24, 2010 at 16:21 UTC
    > Howdy!

    Grüß Gott! :)

    Sure I was wondering myself about the hashref, but I didn't (and still don't) want to dig to deep into the problem, (just communicate the little bit of observation:)

    Cheers Rolf