<!DOCTYPE html>
<p>Test of createContextualFragment from a Range whose context is an HTML document without a body. If the test succeeds you will see the word "PASS" below.</p>
<p id="result"></p>
<script>
if (window.testRunner)
    testRunner.dumpAsText();

var doc = document.implementation.createHTMLDocument();
var div = doc.createElement('div');
doc.replaceChild(div, doc.documentElement);

var range = doc.createRange();
var fragment = range.createContextualFragment('<p id="fragment">Inserted fragment</p>');
div.appendChild(fragment);
var p = doc.getElementById('fragment');

var result = document.getElementById('result');
result.textContent = (p && p.parentElement === div && p.namespaceURI === 'http://www.w3.org/1999/xhtml') ? 'PASS' : 'FAIL';
</script>

