89 lines
1.6 KiB
JSON
89 lines
1.6 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "MyStruct",
|
|
"type": "object",
|
|
"required": [
|
|
"bound",
|
|
"inclusive",
|
|
"range"
|
|
],
|
|
"properties": {
|
|
"range": {
|
|
"$ref": "#/definitions/Range_of_uint"
|
|
},
|
|
"inclusive": {
|
|
"$ref": "#/definitions/Range_of_double"
|
|
},
|
|
"bound": {
|
|
"$ref": "#/definitions/Bound_of_String"
|
|
}
|
|
},
|
|
"definitions": {
|
|
"Range_of_uint": {
|
|
"type": "object",
|
|
"required": [
|
|
"end",
|
|
"start"
|
|
],
|
|
"properties": {
|
|
"start": {
|
|
"type": "integer",
|
|
"format": "uint",
|
|
"minimum": 0.0
|
|
},
|
|
"end": {
|
|
"type": "integer",
|
|
"format": "uint",
|
|
"minimum": 0.0
|
|
}
|
|
}
|
|
},
|
|
"Range_of_double": {
|
|
"type": "object",
|
|
"required": [
|
|
"end",
|
|
"start"
|
|
],
|
|
"properties": {
|
|
"start": {
|
|
"type": "number",
|
|
"format": "double"
|
|
},
|
|
"end": {
|
|
"type": "number",
|
|
"format": "double"
|
|
}
|
|
}
|
|
},
|
|
"Bound_of_String": {
|
|
"oneOf": [
|
|
{
|
|
"type": "object",
|
|
"required": [
|
|
"Included"
|
|
],
|
|
"properties": {
|
|
"Included": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"required": [
|
|
"Excluded"
|
|
],
|
|
"properties": {
|
|
"Excluded": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "string",
|
|
"const": "Unbounded"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
} |