我必须构建类似Json数据的树结构。每个节点都有一个id(一个整数,必需),一个标签(一个字符串,可选)和一个子节点数组(可选)。你能帮我解决一下如何为这个Json数据编写JSON模式吗?我还需要在子节点中根据需要设置Id。
{
"Id": 1,
"Label": "A",
"Child": [
{
"Id": 2,
"Label": "B",
"Child": [
{
"Id": 5,
"Label": "E"
}, {
"Id": 6,
"Label": "E"
}, {
"Id": 7,
"Label": "E"
}
]
}, {
"Id": 3,
"Label": "C"
}, {
"Id": 4,
"Label": "D",
"Child": [
{
"Id": 8,
"Label": "H"
}, {
"Id": 9,
"Label": "I"
}
]
}
]
}
答案 0 :(得分:4)
此结构的架构只需要定义节点和对该节点的引用。属性Children
(从Child
重命名)也引用了node
。
这是架构:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"$ref": "#/definitions/node",
"definitions": {
"node": {
"properties": {
"Id": {
"type": "integer"
},
"Label": {
"type": "string"
},
"Children": {
"type": "array",
"items": {
"$ref": "#/definitions/node"
}
}
},
"required": [
"Id"
]
}
}
}