public void WritePrimitiveContents(string name, Element value, XmlSerializationHint xmlFormatHint) { if (xmlFormatHint == XmlSerializationHint.Attribute) writePrimitiveAttribute(name, value.ToString()); else if (xmlFormatHint == XmlSerializationHint.TextNode) xw.WriteString(value.ToString()); else if (xmlFormatHint == XmlSerializationHint.XhtmlElement) { XNamespace xhtml = Support.Util.XHTMLNS; XElement xe = XElement.Parse(value.ToString()); xe.Name = xhtml + xe.Name.LocalName; // Write xhtml directly into the output stream, // the xhtml <div> becomes part of the elements // of the type, just like the other FHIR elements xw.WriteRaw(xe.ToString()); } else throw new ArgumentException("Unsupported xmlFormatHint " + xmlFormatHint); }