Currently, the load() method uses the responseText from the ajax request and innerHTML. If the server send application/xhtml+xml content-type header the responseXML is returned by the ajax/get/post method but is not inserted into the DOM.
One needs to manually add it in the callback with a code like: function (data, status) { if (data.documentElement) targetnode.appendChild(document.importNode(data.documentElement, true)); else targetnode.append(data); } I just posted an enhancement request to the trac system but I post it there for reference and request for comments.