Great! That is definatelly quick (and simpler). :) Nonetheless to complete my code I will eventually have to access that data... and since it is nested and requires a long trail to get to the inner data is it considered easier or more common practice to simply store the data in an array and separate field values and records with some delimeter? Or am I on a good track (records is good for this and it won't be to difficult to get at the data)?
Delimited data organization might seem tempting, especially if the concept of references is a little foreign. But I think you will find that in general, manipulating data internally using records is good, and internally using just delimited data in an array is bad, unless your data is very simple. In a complex record structure, each atom of data has a location, which can't be said for the delimited data; it requires you to create temporary variables and use split every time you need access to something. There is also the problem of quoting/escaping data so it doesn't interfere with the delimiter. Given that your record structure is intelligently organized (it seems that way so far), you really can't go wrong. Once you really come to understand Perl's way of handling references, you will find very little data that you can't model inside your program with complex structures. The same can't be said for a delimited array.