The next version of the JAXB specification is planning to attack this
problem.
If you want to do that today, try long-term Bean persistence (in JDK1.4),
mapping data-binding tools (such as Castor), or RELAXNGCC (my personal
project.)
--
Kohsuke Kawaguchi <kohsuke.kawaguchi_at_sun.com>