我有一个树结构,我想创建一个JSON模式。
班级结构
class Node {
String id;
List<Node> children = new ArrayList<>();
}
到目前为止的JSON模式:
{
"name": "node",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The node id",
"required": true
}
"children": {
"type": "array",
"items": {
//The items of array should be node ?
}
}
}
}
我的问题是我不知道如何用JSON描述数组的内容"items"
?
提前感谢您的回答。
答案 0 :(得分:9)
只需使用JSON引用指向架构本身:
{
"type": "object",
"required": [ "id" ],
"properties": {
"id": {
"type": "string",
"description": "The node id"
},
"children": {
"type": "array",
"items": { "$ref": "#" }
}
}
}
#
JSON引用本质上意味着“文档本身”。因此,这允许您定义递归模式,如此处。
注意:重写以使其符合草案v4。