# -*- coding: utf-8 -*- EXTRACT_ASSAY_EXPRESSION_INPUT_ARGS_SCHEMA = { "schema_version": "1.0", "parser_args": [ "path", "assay_name", "list_assays", "output", "retrieve_expression", "additional_fields", "additional_fields_help", "delim", "filter_json_file", "sql", "expression_matrix", "json_help", "filter_json", ], "1_path_or_json_help-at_least_one_required": { "properties": { "items": ["path", "json_help"], }, "condition": "at_least_one_required", "error_message": { "message": 'At least one of the following arguments is required: "Path", "--json-help"' }, }, "2_path_with_no_args-with_at_least_one_required": { "properties": { "main_key": "path", "items": [ "list_assays", "retrieve_expression", "additional_fields_help", "json_help", ], }, "condition": "with_at_least_one_required", "error_message": { "message": 'One of the arguments "--retrieve-expression", "--list-assays", "--additional-fields-help", "--json-help" is required.' }, }, "3_list_assays_exclusive_with_exceptions": { "properties": { "main_key": "list_assays", "exceptions": ["path"], }, "condition": "exclusive_with_exceptions", "error_message": { "message": '"--list-assays" cannot be presented with other options' }, }, "4_retrieve_expression_with_at_least_one_required": { "properties": { "main_key": "retrieve_expression", "items": [ "filter_json", "filter_json_file", "json_help", "additional_fields_help", "sql" ], }, "condition": "with_at_least_one_required", "error_message": { "message": 'The flag "--retrieve_expression" must be followed by "--sql", "--filter-json", "--filter-json-file", "--json-help", or "--additional-fields-help".' }, }, "5_json_help_exclusive_with_exceptions": { "properties": { "main_key": "json_help", "exceptions": [ "path", "retrieve_expression", ], }, "condition": "exclusive_with_exceptions", "error_message": { "message": '"--json-help" cannot be passed with any option other than "--retrieve-expression".' }, }, "6_additional_fields_help_exclusive_with_exceptions": { "properties": { "main_key": "additional_fields_help", "exceptions": [ "path", "retrieve_expression", ], }, "condition": "exclusive_with_exceptions", "error_message": { "message": '"--additional-fields-help" cannot be passed with any option other than "--retrieve-expression".' }, }, "7_json_inputs-mutually_exclusive": { "properties": { "items": ["filter_json", "filter_json_file"], }, "condition": "mutually_exclusive_group", "error_message": { "message": 'The arguments "--filter-json" and "--filter-json-file" are not allowed together.' }, }, "8_expression_matrix-with_at_least_one_required": { "properties": { "main_key": "expression_matrix", "items": ["retrieve_expression"], }, "condition": "with_at_least_one_required", "error_message": { "message": '"--expression-matrix" cannot be passed with any argument other than "--retrieve-expression".' }, }, "9_em_sql-mutually_exclusive": { "properties": { "items": ["expression_matrix", "sql"], }, "condition": "mutually_exclusive_group", "error_message": { "message": '"--expression-matrix"/"-em" cannot be passed with the flag, "--sql".' }, }, }