You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

109 lines
2.3 KiB

{
"$schema": "http:\/\/json-schema.org\/draft-04\/schema#",
"$ref": "#\/definitions\/TestUser",
"definitions": {
"GrandfatherType": {
"required": [
"family_name"
],
"properties": {
"family_name": {
"type": "string"
}
},
"additionalProperties": false,
"type": "object"
},
"TestUser": {
"required": [
"some_base_property",
"grand",
"SomeUntaggedBaseProperty",
"id",
"name",
"TestFlag",
"age",
"email"
],
"properties": {
"SomeUntaggedBaseProperty": {
"type": "boolean"
},
"TestFlag": {
"type": "boolean"
},
"age":{
"maximum": 120,
"minimum": 18,
"exclusiveMaximum": true,
"exclusiveMinimum": true,
"type": "integer"
},
"email": {
"type": "string",
"format": "email"
},
"birth_date": {
"type": "string",
"format": "date-time"
},
"feeling": {
"oneOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"friends": {
"items": {
"type": "integer"
},
"type": "array"
},
"grand": {
"$schema": "http:\/\/json-schema.org\/draft-04\/schema#",
"$ref": "#\/definitions\/GrandfatherType"
},
"id": {
"type": "integer"
},
"name": {
"type": "string",
"maxLength": 20,
"minLength": 1
},
"network_address": {
"type": "string",
"format": "ipv4"
},
"photo": {
"type": "string",
"media": {
"binaryEncoding": "base64"
}
},
"some_base_property": {
"type": "integer"
},
"tags": {
"patternProperties": {
".*": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
},
"website": {
"type": "string",
"format": "uri"
}
},
"additionalProperties": false,
"type": "object"
}
}
}