Would it be an option for you to create a view with the xml formatted result set (instead of storing it "physically")?
Might help to deal with the data in a normalized format while still being able to present it in a xml format.
This would also help to separate the data storage and the presentation layer. You could change the table structure without the downstream process even taking notice of it (as long as the result set of the view is unchanged).