I am very impressed by your design approach and understanding of X12.
X12 is one of those old artifacts of computer history that OO developers are frustrated by.
All those codes and loops and for what?
I get the history of the compression algorithm. And I get the desire to convert the data to XML.
The flat file folks (which I sorta am) like simple file structures with defined schema's.
I am currently working on ways to create functional transactions from HIPAA 834 files.
Our development team is thinking of deploying a rules engine on top of an X12 parser.
Its my belief that "the points of variability" come from the trading partners not from the file
Lastly - I am sick of one of commercial products that try to "handle" HIPAA transactions.
Just my thoughts before Christmas. And Kudo's for a really clear design pattern.