2016-05-10 2 views
2

Мне нужно построить дерево как структуру данных Json. Каждый узел имеет идентификатор (целое число, обязательно), метку (строку, необязательную) и массив дочерних узлов (необязательно). Можете ли вы помочь мне написать схему JSON для данных Json. Мне нужно также установить Id, как требуется в дочернем узле.JSON Schema для древовидной структуры

{ 
    "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" 
       } 
      ] 
     } 
    ] 
} 

enter image description here

ответ

3

Схема для этой структуры требуется только определение узла и ссылку на этот узел. Свойство 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" 
     ] 
    } 
    } 
} 
+0

Большое спасибо за быстрый ответ. –

Смежные вопросы