We have a part of our application where our users can create objects containing html, javascript and css through custom made Wysiwyg components. Those objects are at some point serialized and later deserialized. However, since our users/clients are located all over the globe, they sometimes input characters that cause grievance during deserialization. Recently, I have seen 
appear in the serialized xml from user in China which caused problems later on as the xml is loaded through some java code using MSXML2 (the same is not a problem in .NET and System.Xml, but that is another issue). We are currently stuck with MSXML2, so this needs to be addressed separately.
A proposal is to change some fields to be serialized as CDATA, not HtmlTextAttribute as they are today.
How can I accomplish this and will it have an impact on data serialized prior to such a change?