What does Windows error code 14056 (ERROR_SXS_XML_E_BADXMLDECL) mean?

 
Previous Next
ERROR_SXS_XML_E_INVALIDATROOTLEVEL ERROR_SXS_XML_E_MISSINGROOT

ERROR_SXS_XML_E_BADXMLDECL

ERROR_SXS_XML_E_BADXMLDECL (0x000036E8) is a Windows Side-by-Side XML parser status for application, assembly, policy, or configuration manifest processing.

The parser recognized an XML declaration but could not accept the declaration as a valid whole. The declaration controls XML version information and may declare encoding and standalone status; these pseudo-attributes have defined names, order, quoting, and values.

Parser boundary

XML 1.0 gives the declaration its own XMLDecl production. Version information is required in that production, encoding is optional after it, and standalone is optional after those fields; arbitrary attributes do not belong there.

What to inspect

  • Compare the entire first declaration against the XML declaration grammar instead of treating it like a normal element start tag.
  • Verify the order and spelling of version, encoding, and standalone, including quoted values.
  • Check for a byte-order mark or characters before the declaration when the file producer claims the declaration is at document start.

Use the first parse failure in the SxS trace and inspect the raw first bytes of that manifest; reinstalling a runtime cannot make a malformed XML declaration well formed.

References


Looking for a different code? Search another status or error code.