The engine includes an XML parsing and saving library by default in order to easily support cases of storing data in XML.
To load an XML from buffer, see ISystem::LoadXmlFromBuffer - this allows for parsing from a string into an XmlNodeRef object that can be programatically parsed.
Saving an XML node can be done using IXmlNode::saveToFile. We can either use an existing XML node loaded from a buffer or file (see above) - or create a new XML node from scratch using the ISystem::CreateXmlNode function.
This concludes the article on Reading & Writing XML, you may be interested in: