def METHOD_NAME(outdir, base_trace_node: TraceNode):
    """
    Construct and write out the DataValidator
    (this is the validator that inputs a list of traces)
    Parameters
    ----------
    outdir : str
        Root outdir in which the top-level validators package should reside
    base_trace_node : PlotlyNode
        PlotlyNode that is the parent of all of the individual trace nodes
    Returns
    -------
    None
    """
    # Validate inputs
    # ---------------
    if base_trace_node.node_path:
        raise ValueError(
            "Expected root trace node.\n"
            'Received node with path "%s"' % base_trace_node.path_str
        )
    # Build Source
    # ------------
    source = build_data_validator_py(base_trace_node)
    # Write file
    # ----------
    # filepath = opath.join(outdir, "validators", "__init__.py")
    filepath = opath.join(outdir, "validators", "_data.py")
    write_source_py(source, filepath, leading_newlines=2)