code: function XNode(type, name, opt_value, opt_owner) {
    this.attributes = [];
    this.childNodes = [];
  
    XNode.init.call(this, type, name, opt_value, opt_owner);
  }
docs: Our W3C DOM Node implementation. Note we call it XNode because we can't define the identifier Node. We do this mostly for Opera, where we can't reuse the HTML DOM for parsing our own XML, and for Safari, where it is too expensive to have the template processor operate on native DOM nodes.