[XML-SIG] Proper way of generating a parentless Node object
Martin v. Loewis
martin@v.loewis.de
18 Jun 2002 22:55:12 +0200
Mark Humphrey <msph@alyra.org> writes:
> Okay, this is a kind of odd situation, but I need to know the
> correct way to create a Node (Text node or Element, I actually have
> to create both) that is not attached to a particular document and
> that can be inserted into any given document.
That is not possible. You need atleast to guarantee that the node is
inserted into a Document originating from the same DOMImplementation.
> from xml.dom import Node
>
> def toHtml (self):
> target = Node()
> target.nodeName = u'a'
> target.nodeType = Node.ELEMENT_NODE
> return target
>
> But that has me accessing not only internal object variables, it has
> me *setting* variables that the DOM spec says are supposed to be
> read-only.
Furthermore, your instances are of the wrong class: "good" nodes are
instances of subclasses of Node.
> How should I really be doing this?
I believe what you want to do is not possible with standard DOM
API. So you need to revert to implementation-specific extensions. For
4DOM, you can use _4dom_setOwnerElement.
Regards,
Martin