"things": {
"type": "array",
"items": {
"$ref": "definitions.json#/definitions/thing"
}
},
"thing": {
"oneOf": [
{
"$ref": "#/definitions/thing_one"
},
{
"$ref": "#/definitions/thing_two"
},
... (a bunch more)
]
},
"thing_one": {
"title": "Thing One",
"allOf": [
{
"$ref": "#/definitions/thing_base"
},
... (other stuff)
]
},
"thing_base": {
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
... (other stuff)
}
},