I see this exception message from XslCompiledTransform.Transform (), but after handling the exception, the XSL transformation still seems successful. Full exception message:
Token text in EndRootElement state will result in an invalid XML document. Make sure the ConformanceLevel parameter is set to ConformanceLevel.Fragment or ConformanceLevel.Auto if you want to write an XML fragment.
The style sheet looks like this:
<xsl:stylesheet version="1.0" xmlns:ext="ext:extensions" xmlns:f="http://schemas.foo.com/FOAMSchema"> <xsl:template match="/Root/Documents/PO/DROPSHIP"> <Transactions> <Transaction> <f:partnerTransmission> <transmission_id> <xsl:value-of select="ext:NewGUID()"/> </transmission_id> <partner_code> <xsl:value-of select="/Root/@PartnerCode"/> </partner_code> <control_nbr> <xsl:value-of select="@GS_CNTRL_NUM"/> </control_nbr> <creationTime> <xsl:value-of select="ext:ConvertToStandardDateTime(@DATE,@TIME,'ISO8601Basic')"/> </creationTime> <direction>I</direction> <messageCount> <xsl:value-of select="count(ORDERS/ORDER)"/> </messageCount> <syntax>XML</syntax> <format>BARBAZ</format> <deliveryMethod>FTP</deliveryMethod> </f:partnerTransmission> </Transaction> </Transactions> </xsl:template> </xsl:stylesheet>
The generated XML is as follows:
<Transactions xmlns="http://schemas.foo.com/IntegrationProfile" xmlns:ext="ext:extensions"> <Transaction> <f:partnerTransmission xmlns:f="http://schemas.foo.com/FOAMSchema"> <transmission_id>a5e0ec76-6c24-426b-9eb5-aef9c45d913f</transmission_id> <partner_code>VN000033</partner_code> <control_nbr>650</control_nbr> <creationTime>9/27/2008 12:51:00 AM</creationTime> <direction>I</direction> <messageCount>2</messageCount> <syntax>XML</syntax> <format>BARBAZ</format> <deliveryMethod>FTP</deliveryMethod> </f:partnerTransmission> </Transaction> </Transactions>
The above is what I get when I catch and ignore the exception.
I was not able to find a way to set ConformanceLevel (the property is read-only), but at the same time I also don't think there should be a problem here anyway.
Is my output an XML snippet? Am I missing something in the stylesheet?
source share