<html xmlns="http://www.w3.org/1999/xhtml">
<body>
    <script>
    if (window.testRunner)
        testRunner.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>
