Crap. We forgot to answer the question.
I'm not sure I can point you to anything definite. You might look at systems that store X12 EDI documents in databases. The X12 format is somewhat similar to XML, in that it is hierarchical.
Once upon a time, I designed a clearinghouse that stored data that came from X12 input files, allowed for editing of the data, and selectively output back into X12 format.
There were different approches taken, but the best-performing method was NOT to store blobs of data in the raw X12 form, but rather to break the documents into collections of similarly-structured element groups.
The heirarchical relationships between element groups were preseved with 3 different "keys":
1. Master key for all element groups that make up a document.
2. Sequence number to order the element groups for output.
3. Parent-child key. The child would contain the RID for its parent.
This would allow for very flexible querying, and high-performance input, and output. I was able to use SQL 2000 DTS to directly read and write without any pre/post-processing
hth and good luck