...In the project that instigated this work the mapping between the DAOs and the XML DOM was not one for one and encoding the conversion into the DOAs was not a good idea.
While at first sight this may seem similar to dozer (http://dozer.sourceforge.net) the primary difference is that this is code generation and does not have the overhead of using introspection at run time.