-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvalidation-contract-singlecell.schema.json
More file actions
55 lines (55 loc) · 1.84 KB
/
Copy pathvalidation-contract-singlecell.schema.json
File metadata and controls
55 lines (55 loc) · 1.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
{
"$schema": "https://json-schema.org/draft-07/schema#",
"$id": "https://ecaa-workflow/validation-contract-singlecell.schema.json",
"title": "Validation contract — per-stage required + recommended assertions",
"type": "object",
"required": ["contract_id", "stages"],
"additionalProperties": false,
"properties": {
"contract_id": { "type": "string", "minLength": 1 },
"description": { "type": "string" },
"version": { "type": "string" },
"stages": {
"type": "object",
"additionalProperties": {
"type": "object",
"required": ["assertions"],
"additionalProperties": false,
"properties": {
"assertions": {
"type": "array",
"items": {
"type": "object",
"required": ["id", "assertion_type", "target", "severity"],
"additionalProperties": true,
"properties": {
"id": { "type": "string", "minLength": 1 },
"description": { "type": "string" },
"assertion_type": {
"type": "string",
"enum": [
"artifact_present",
"artifact_non_empty_table",
"artifact_glob_any",
"string_contains",
"numeric_threshold",
"json_key_equals",
"cross_field_equals",
"formula_references_covariates",
"json_pointer_is_array"
]
},
"target": { "type": "string", "minLength": 1 },
"check": { "type": "object" },
"severity": {
"type": "string",
"enum": ["required", "recommended"]
}
}
}
}
}
}
}
}
}