<html xmlns="http://www.w3.org/1999/xhtml">
<body>
    <script>
    if (window.layoutTestController)
        layoutTestController.dumpAsText();
        
    var failure = false;

    // This shouldn't be known since we haven't parsed that far yet.
    var d = document.getElementById('div1');

    if (d)
        failure = true;
    </script>
    
    <div id="div1"/>
    
    <script src="resources/xhtml-scripts.js"/>
    <div id="div2"/>
    
    This tests that parsing stops when a script is encountered in an XML document. Parsing resumes when the script has finished executing.
    <div id="result">FAILURE</div>
    
    <script>
        if (!failure)
            document.getElementById('result').firstChild.nodeValue = 'SUCCESS';
    </script>
</body>
</html>
