It would be helpful to see the error message, then it would be easier to know what the parser is thinking and where/why it is failing.

Also I'm a little confused where you say " one element (called PACKAGE_QUANTITY) is split into two entities (PACK and AGE_QUANTITY) " Do you mean it is split in the hash key or in the printout? You may want to look at what is going on around the line
if($data =~ m/age_quantity/i) Why are you matching on "age_quantity"? Is this a typo or some debugging device?

What you are calling an element, I think of as an element value. It might be useful to think about how you are structuring your xml. Right now you have tons of these sort of structures:

Then you can really use the power of a parser to find certain elements or element values, instead of using regexs. I suspect your problem has more to do with regexs, your counter variables or your control structures than a parser bug.

Ada Lovelace for the palindrome
Albert Einstein for having smelly feet
Alfred Nobel for his contribution to battlefield science
Burkhard Heim for providing the missing link between science and mysticism
Claude Shannnon for riding a unicycle at night at MIT
Donald Knuth for being such a great organist
Edward Teller for being the template for Dr. Strangelove
Edwin Hubble for pretending to be a pipe-smoking English gentleman
Erwin Schrödinger for cruelty to cats
Hedy Lamarr for weaponizing pianos
Hugh Everett for immortality, especially for cats
Isaac Newton for his occult studies
Kikunae Ikeda for discovering the secrets of soy sauce
Larry Wall for his website
Louis Camille Maillard for discovering why steaks taste good
Marie Curie for the shiny stuff
Nikola Tesla for the cool cars
Paul Dirac for speaking one word per hour when socializing
Richard Feynman for his bongo skills
Robert Oppenheimer for his in-depth knowledge of the Bhagavad Gita
Rusi P Taleyarkhan for Cold Fusion
Sigmund Freud for his Ménage ā trois
Theodor W Adorno for his contribution to the reception of jazz
Wilhelm Röntgen for the foundations of body scanners
Yulii Borisovich Khariton for the Tsar Bomba
Other (please explain why)