id summary reporter owner description type status priority milestone component resolution keywords cc branch branch_author 5179 twisted.web.template might not implement XML namespaces properly indigo "Say I have a template like this: {{{ }}} and then fillMeUp is a render function that loads another template and inserts it into the element. That template is defined like this: {{{ woo! }}} the result might be a document like this: {{{ woo! }}} The problem here is that the element has magically changed namespaces. Because the XML document that contained it didn't define any namespaces, was in the null namespace. By sticking it inside , it's now in a different namespace, 'http://example.com'. I don't know if there's anything in the XML standards that calls this illegal, but it's not the way most namespace aware XML applications will work, and so violates the principle of least surprise. For example, if one were to merge these two documents with XSLT, the result would be this: {{{ woo! }}} The first step towards fixing this problem probably involves altering the template DOM to be more in line with the data model typically used by XML applications. See for example the [http://www.w3.org/TR/xpath/#data-model data model for xpath] which is used by reference in the W3C standard for XSLT and probably others. See in particular the bit about ""namespace nodes""." enhancement new normal web indigo