in reply to Dynamically parse BibTeX and create hash of hash

You are reading the details of a bibliographic entry into %article, and then storing a reference to this hash:

$bibliography{"$key"} = \%article;

So, when %article is subsequently cleared, the %bibliography entry now refers to an empty hash! Change that line to:

$bibliography{"$key"} = { %article };

which makes a copy of the hash, and the output will be what you are looking for.

Hope that helps,

Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,