def dbs_has_min_columns(column_name_list):
    """
    Function determines if DBS headers passed contain the required
    columns.
    """
    compulsory_header_cols = set(['runtype', 'station', 'cast', 'niskin',
        'depth', 'bottle', 'date', 'time', 'temp', 'salt', 'po4', 'sio4',
        'acidconcL', 'pipVol', 'aciddens', 'pKchoice', 'CRMCT', 'CRMAT',
        'calcID', 'DIC'])
    missing_header_cols = compulsory_header_cols - set(column_name_list)
    if any(missing_header_cols):
        raise UserWarning(
            'The header is missing compulsory header columns: ' + str(
            missing_header_cols).replace('{', '').replace('}', ''))
    else:
        return True
