map (callback) {
      return new RelationalNode(
        this.conditionals.slice(),
        this.params.map(
          (n, i) => this._ifNode(callback(n, 'params[' + i + ']', this)), this))
    }
Create a new RelationalNode whose children are the results of calling
the provided callback function for each child of the original node.
@param {function(child: Node, path: string, parent: Node): Node} callback
@returns {RelationalNode} Returns a transformed copy of the node