7
7
[["$defs" .any_type_recursive_array .anyOf ]]
8
8
title = " A numeric type"
9
9
type = " array"
10
- items.anyOf = [{"type" = " number" }, {"type" = " null" }]
10
+ items.anyOf = [{ "type" = " number" }, { "type" = " null" }]
11
11
12
12
[["$defs" .any_type_recursive_array .anyOf ]]
13
13
title = " A recursive array of numeric types"
14
14
type = " array"
15
15
items."$ref" = " #/$defs/any_type_recursive_array"
16
16
17
- ["$defs" .any_type_dataset ]
18
- title = " A dataset of any numeric type"
19
- required = [" data" , " datatype" ]
20
-
21
- ["$defs" .any_type_dataset .properties ]
22
17
18
+ ["$defs" .any_type_dataset_properties .properties ]
23
19
datatype.enum = [
24
20
" CHAR" ,
25
21
" UCHAR" ,
@@ -41,6 +37,36 @@ datatype.enum = [
41
37
" BOOL" ,
42
38
]
43
39
data."$ref" = " #/$defs/any_type_recursive_array"
40
+ extent = { type = " array" , items = { type = " integer" } }
41
+
42
+
43
+ # ##################################################
44
+ # Either `datatype` and `data` must be defined... #
45
+ # ##################################################
46
+
47
+ [["$defs" .any_type_dataset .anyOf ]]
48
+ title = " A dataset of any numeric type"
49
+ allOf = [
50
+ { required = [
51
+ " datatype" ,
52
+ " data" ,
53
+ ], title = " Required properties" },
54
+ { "$ref" = " #/$defs/any_type_dataset_properties" , title = " Property definitions" },
55
+ ]
56
+
57
+ # ########################################################
58
+ # ...or `datatype` and `extent` must be (template form) #
59
+ # ########################################################
60
+
61
+ [["$defs" .any_type_dataset .anyOf ]]
62
+ title = " A template dataset of any numeric type"
63
+ allOf = [
64
+ { required = [
65
+ " datatype" ,
66
+ " extent" ,
67
+ ], title = " Required properties" },
68
+ { "$ref" = " #/$defs/any_type_dataset_properties" , title = " Property definitions" },
69
+ ]
44
70
45
71
# #####################################
46
72
# n-dimensional datasets of int type #
@@ -49,19 +75,15 @@ data."$ref" = "#/$defs/any_type_recursive_array"
49
75
[["$defs" .int_type_recursive_array .anyOf ]]
50
76
title = " An integer type"
51
77
type = " array"
52
- items.anyOf = [{"type" = " integer" }, {"type" = " null" }]
78
+ items.anyOf = [{ "type" = " integer" }, { "type" = " null" }]
53
79
54
80
[["$defs" .int_type_recursive_array .anyOf ]]
55
81
title = " A recursive array of integer types"
56
82
type = " array"
57
83
items."$ref" = " #/$defs/int_type_recursive_array"
58
84
59
- ["$defs" .int_type_dataset ]
60
- title = " A dataset of integer type"
61
- required = [" data" , " datatype" ]
62
-
63
- ["$defs" .int_type_dataset .properties ]
64
85
86
+ ["$defs" .int_type_dataset_properties .properties ]
65
87
datatype.enum = [
66
88
" CHAR" ,
67
89
" UCHAR" ,
@@ -77,3 +99,33 @@ datatype.enum = [
77
99
" BOOL" ,
78
100
]
79
101
data."$ref" = " #/$defs/int_type_recursive_array"
102
+ extent = { type = " array" , items = { type = " integer" } }
103
+
104
+
105
+ # ##################################################
106
+ # Either `datatype` and `data` must be defined... #
107
+ # ##################################################
108
+
109
+ [["$defs" .int_type_dataset .anyOf ]]
110
+ title = " A dataset of integer type"
111
+ allOf = [
112
+ { required = [
113
+ " datatype" ,
114
+ " data" ,
115
+ ], title = " Required properties" },
116
+ { "$ref" = " #/$defs/int_type_dataset_properties" , title = " Property definitions" },
117
+ ]
118
+
119
+ # ########################################################
120
+ # ...or `datatype` and `extent` must be (template form) #
121
+ # ########################################################
122
+
123
+ [["$defs" .int_type_dataset .anyOf ]]
124
+ title = " A dataset template of integer type"
125
+ allOf = [
126
+ { required = [
127
+ " datatype" ,
128
+ " extent" ,
129
+ ], title = " Required properties" },
130
+ { "$ref" = " #/$defs/int_type_dataset_properties" , title = " Property definitions" },
131
+ ]
0 commit comments