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
|
-- schema.json --
{
"type": "object",
"title": "Main schema",
"properties": {
"intOrString1": {
"type": [ "string", "integer" ]
},
"intOrString2": {
"oneOf": [
{ "type": "integer" },
{ "type": "string" }
]
},
"intOrString3": {
"anyOf": [
{ "type": "integer" },
{ "type": "string" }
]
},
"disjunction": {
"oneOf": [
{
"anyOf": [
{ "type": "integer" },
{ "type": "string" }
]
},
{
"type": "integer",
"minimum": 3
}
]
}
}
}
-- out/decode/extract --
// Main schema
intOrString1?: int | string
intOrString2?: matchN(1, [int, string])
intOrString3?: matchN(>=1, [int, string])
disjunction?: matchN(1, [matchN(>=1, [int, string]), int & >=3])
...
|