Hi!
Yes, it does look valid to me.
Have you tried to compile the XML schema that contains your type usign XJC, the JAXB XML schema compiler plugin?
It will help you generate Java classes that you can use to create object hierarchies in memory that you later serialize to XML.
If you are working in Eclipse, there is even a XJC plugin that let you do the schema compilation from within the
IDE.
Best wishes!