Skip to content

Commit 65b9fae

Browse files
committed
attribute_defs.toml
1 parent c170106 commit 65b9fae

2 files changed

Lines changed: 161 additions & 11 deletions

File tree

share/openPMD/json_schema/attribute_defs.json

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -180,17 +180,10 @@
180180
"const": "ARR_DBL_7"
181181
},
182182
"value": {
183-
"any_of": [
184-
{
185-
"type": "number"
186-
},
187-
{
188-
"type": "array",
189-
"items": {
190-
"type": "number"
191-
}
192-
}
193-
]
183+
"type": "array",
184+
"items": {
185+
"type": "number"
186+
}
194187
}
195188
}
196189
}
Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
2+
["$defs"]
3+
4+
######################
5+
# Vectors of strings #
6+
######################
7+
8+
["$defs".vec_string_attribute.properties]
9+
10+
value.any_of = [
11+
{ type = "string" },
12+
{ type = "array", items = { "type" = "string" } },
13+
]
14+
15+
datatype.enum = [
16+
"STRING",
17+
"CHAR",
18+
"SCHAR",
19+
"UCHAR",
20+
"VEC_STRING",
21+
"VEC_CHAR",
22+
"VEC_SCHAR",
23+
"VEC_UCHAR",
24+
]
25+
26+
##################
27+
# Vectors of int #
28+
##################
29+
30+
["$defs".vec_int_attribute.properties]
31+
32+
value.any_of = [
33+
{ type = "integer" },
34+
{ type = "array", items = { "type" = "integer" } },
35+
]
36+
37+
datatype.enum = [
38+
"SHORT",
39+
"INT",
40+
"LONG",
41+
"LONGLONG",
42+
"USHORT",
43+
"UINT",
44+
"ULONG",
45+
"ULONGLONG",
46+
"VEC_SHORT",
47+
"VEC_INT",
48+
"VEC_LONG",
49+
"VEC_LONGLONG",
50+
"VEC_USHORT",
51+
"VEC_UINT",
52+
"VEC_ULONG",
53+
"VEC_ULONGLONG",
54+
]
55+
56+
####################
57+
# Vectors of float #
58+
####################
59+
60+
["$defs".vec_float_attribute.properties]
61+
62+
value.any_of = [
63+
{ type = "number" },
64+
{ type = "array", items = { "type" = "number" } },
65+
]
66+
67+
datatype.enum = [
68+
"SHORT",
69+
"INT",
70+
"LONG",
71+
"LONGLONG",
72+
"USHORT",
73+
"UINT",
74+
"ULONG",
75+
"ULONGLONG",
76+
"FLOAT",
77+
"DOUBLE",
78+
"LONG_DOUBLE",
79+
"CFLOAT",
80+
"CDOUBLE",
81+
"CLONG_DOUBLE",
82+
"VEC_SHORT",
83+
"VEC_INT",
84+
"VEC_LONG",
85+
"VEC_LONGLONG",
86+
"VEC_USHORT",
87+
"VEC_UINT",
88+
"VEC_ULONG",
89+
"VEC_ULONGLONG",
90+
"VEC_FLOAT",
91+
"VEC_DOUBLE",
92+
"VEC_LONG_DOUBLE",
93+
"VEC_CFLOAT",
94+
"VEC_CDOUBLE",
95+
"VEC_CLONG_DOUBLE",
96+
]
97+
98+
###########################
99+
# Special case: #
100+
# unitDimension attribute #
101+
###########################
102+
103+
["$defs".unitDimension.properties]
104+
105+
value = { type = "array", items = { type = "number" } }
106+
datatype.const = "ARR_DBL_7"
107+
108+
#####################
109+
# string attributes #
110+
#####################
111+
112+
["$defs".string_attribute.properties]
113+
114+
value.type = "string"
115+
datatype.enum = ["STRING", "CHAR", "SCHAR", "UCHAR"]
116+
117+
##################
118+
# int attributes #
119+
##################
120+
121+
["$defs".int_attribute.properties]
122+
123+
value.type = "integer"
124+
datatype.enum = [
125+
"SHORT",
126+
"INT",
127+
"LONG",
128+
"LONGLONG",
129+
"USHORT",
130+
"UINT",
131+
"ULONG",
132+
"ULONGLONG",
133+
]
134+
135+
####################
136+
# float attributes #
137+
####################
138+
139+
["$defs".float_attribute.properties]
140+
141+
value.type = "number"
142+
datatype.enum = [
143+
"SHORT",
144+
"INT",
145+
"LONG",
146+
"LONGLONG",
147+
"USHORT",
148+
"UINT",
149+
"ULONG",
150+
"ULONGLONG",
151+
"FLOAT",
152+
"DOUBLE",
153+
"LONG_DOUBLE",
154+
"CFLOAT",
155+
"CDOUBLE",
156+
"CLONG_DOUBLE",
157+
]

0 commit comments

Comments
 (0)