<?xml version="1.0"?>
<!DOCTYPE html 
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
    <title></title>
    <script type="text/javascript">
        function test()
        {
            if (window.testRunner)
              testRunner.dumpAsText();
            var td = document.createElement("td");
            document.getElementById("target").appendChild(document.createTextNode(td.namespaceURI));
        }
    </script>
</head>
<body onload="test()">
    <div id="target">
        namespaceURI: 
    </div>
    <p>The above text should display the xhtml namespace uri. Bug 8007.
    </p>
</body>
</html>
