Collectives™ on Stack Overflow
Find centralized, trusted content and collaborate around the technologies you use most.
Learn more about Collectives
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Learn more about Teams
Ask Question
The line that is having an issue is the
<xsl:output method = "html" doctype-system = "about:legacy-compat"/>
, line.
<?xml version="1.0"?>
<!-- Fig. 15.21: sorting.xsl -->
<xsl:stylesheet version = "1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/>
<!-- write XML declaration and DOCTYPE DTD information -->
*<xsl:output method = "html" doctype-system = "about:legacy-compat" />*
<!-- match document root -->
<xsl:template match="/"> -<html> <xsl:apply-templates/> </html>
</xsl:template>
This error indicates that your XML has markup following the root element.
In order to be well-formed, XML must have exactly one root element, and there can be no further markup following the single root element.
One root element example (GOOD)
The most common sources for this error are:
Including stray or extra close tags (BAD):
</r> <!-- shouldn't be here -->
Intentionally having multiple root elements (BAD):
<b/> <!-- second root element shouldn't be here -->
<c/> <!-- third root element shouldn't be here -->
Unintentionally having multiple root elements (BAD):
<r/> <!-- shouldn't be self-closing -->
Parsing different XML than you think (BAD):
Log the XML immediately before providing to the parse that's
failing in order to make sure that the XML that the parser is
seeing is the same as the XML you think it's seeing. Common
errors here include:
The filename of the XML document being passed to the
parser differs from what you believe it is.
The buffer of the XML being dirty. Make sure it's been
cleared prior to adding your XML.
An earlier program from a prior stage in your pipeline
changing the XML prior to the parsing that's yielding
this error message.
Your particular problem
In your particular case, your XML appears to have multiple root elements because the xsl:stylesheet
element is closed prematurely (case #3 above).
Change
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/>
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
to fix your immediate problem, and add a closing tag,
</xsl:stylesheet>
if one does not already exist in your real document.
–
–
–
–
–
–
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
DrawerLayout - The markup in the document following the root element must be well-formed
See more linked questions