in reply to Statement Parsing and Rendering

Taking the HoA a bit further, I would use the record types as keys in a dispatch table consisting of code references to sub-routines that know how to parse an individual record type into a meaningful structure, and of course the start and stop record handlers would know how to initialize the structure and assemble the pieces into a whole for storage, etc., respectively.

The answer to the question "Can we do this?" is always an emphatic "Yes!" Just give me enough time and money.