Thank you for your prompt response.
My use case is based on the following (which in many respects is no different than what one could do with InfoPath): the user creates a schema describing the "template". The schema is loaded in a DataSet (the good thing is that when loading the schema in the data set, all the relationships between tables are in place). The data to be "merged" is coming from an XML which is loaded in the dataset. It is then easy to support nested merge as long as the "nesting" "matches" the XML hierarchy. I would think that if support for this "XSD-driven" data set be in place, any other nesting scenario could be reduced to this by providing the appropriate schema. I have done this myself using WordML and using a pull model (much like your merge field event modelling) in such a way that allowed me to generate over 20,000 pages with a very low memory footprint (using streaming on the XML side). I like your product much better because of the ability to easily manipulate/insert images, bookmarks, etc. I am also interested in seeing if I can automate the creation of cross references, index entries (like inserting cross references to numbered items like headings, etc.). I am willing to share all the code with you for better understanding/ incorporation into your product. If you're interested, we can take this discussion offline. Thank you.