Open
Description
A $ref
breaks when used on the root object
Example A
Non-working example:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"$ref": "#/definitions/anatomic-location",
"definitions": {
"anatomic-location": {
"description": "thing",
"properties": {
/* .. */
"children": {
"type": "array",
"items": { "$ref": "#/definitions/anatomic-location" }
},
}
}
}
}
Error message will be:
Refs should have been resolved by the resolver!
It will log:
title: 'AnatomicLocation',
properties:
{ id: { type: 'integer' } },
'$ref': '#' }
I wonder where the $ref: '#'
comes from?
Example B
Working but with duplicated interface
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"$ref": "#/definitions/anatomic-location/properties"
},
"definitions": {
"anatomic-location": {
"description": "thing...",
"properties": { /* .. */ }
}
}
}
Generated code is:
export interface AnatomicLocation {
id?: number;
children?: AnatomicLocation1[];
}
export interface AnatomicLocation1 {
id: number;
children?: AnatomicLocation1[];
}