code: protected Node createNode(Node parent, Object name, Map attributes) {
          return new Node(parent, name, attributes);
      }
docs: Creates a new node with the given parent, name, and attributes. The
  default implementation returns an instance of
  <code>groovy.util.Node</code>.
  
  @param parent     the parent node, or null if the node being created is the
  root node
  @param name       an Object representing the name of the node (typically
  an instance of {@link QName})
  @param attributes a Map of attribute names to attribute values
  @return a new Node instance representing the current node