title: XML serialize annotations
body: <p>I have a situation where I have an xml file that I don't want to modify.
  The AddAnnotation function in XElement class provides an option to add memory-only data which is not serialized and not part of the XML. </p>
  
  <p>I want to be able to save these annotations (for example: to another xml file) and then to deserialize both the xml and the annotations in order to get the same object I had. </p>
  
  <p>I don't want to change the original xml and that's the reason that I use annotations.</p>
  
  <p>To summarize, I want to be able to add custom data to an xml file. This data won't be a part of the xml when I serialize it or it will be a part of the xml but I would be able to retrieve the original xml easily.</p>
  
  <p>Do you have any recommendation how I can do such a thing? </p>
  
  <p><strong>Edit:</strong> Should I use xml processing instructions? Are processing instructions intended for this kind of usage?</p>