internal void WriteTo(XmlWriter xmlWriter) { Debug.Assert(_xmlDiff._fragments != TriStateBool.DontKnown); xmlWriter.WriteStartDocument(); xmlWriter.WriteStartElement(XmlDiff.Prefix, "xmldiff", XmlDiff.NamespaceUri); xmlWriter.WriteAttributeString("version", "1.0"); xmlWriter.WriteAttributeString("srcDocHash", _xmlDiff._sourceDoc.HashValue.ToString()); xmlWriter.WriteAttributeString("options", _xmlDiff.GetXmlDiffOptionsString()); xmlWriter.WriteAttributeString("fragments", (_xmlDiff._fragments == TriStateBool.Yes) ? "yes" : "no"); WriteChildrenTo(xmlWriter, _xmlDiff); OperationDescriptor curOD = _descriptors; while (curOD != null) { curOD.WriteTo(xmlWriter); curOD = curOD._nextDescriptor; } xmlWriter.WriteEndElement(); xmlWriter.WriteEndDocument(); }