XoXMLStreamWriter w = new XoXMLStreamWriterImpl(writer);
try {
// if the is not a fragment, write the document header
if (!isFragment()) {
w.writeStartDocument(getEncoding(), null);
}
// write xsi:type if there is no default root element for this type
boolean writeXsiType = true;
if (jaxbElement instanceof JAXBElement) {