Проверка схемы JSON с использованием tv4 или любого другого средства проверки

У меня есть какая-то структура JSON в массиве. Требование:

1. All the JSON object within the array can be optional.
2. Each JSON can have its own set of properties and can be complex and nested.
3. Each JSON object will have a set of mandatory attributes.

Как создать схему для такого JSON. Будет ли полезным использование каких-либо или определений?

Обновлено: у меня есть массив объектов JSON, где каждый объект может иметь различные атрибуты. Единственный общий признак - это "тип" с допустимыми значениями: электроника, мебель или финансы. Итак, мой вопрос, как получить схему?

пример

{
 "list": [
  {
   "type": "electronics"
  },
  {
   "type": "furniture"
  },
  {
   "accessRights": "readOnly",
   "rules": ['print','copy'],
   "type": "finance"
  }
}

Решение

{
"properties": {
    "list": {
        "type": "array",
        "items": {
            "type": "object",
            "required": ["type"],
            "properties": {
                "type": {
                    "type": "string",
                    "enum": ["electronics", "furniture", "finance"]
                }
            },
            "anyOf": [{
                "properties": {
                    "type": {
                        "enum": ["electronics"]
                    }
                }
            }, {
                "properties": {
                    "type": {
                        "enum": ["furniture"]
                    }
                }
            }, {
                "properties": {
                    "type": {
                        "enum": ["finance"]
                    },
                    "accessRights": {
                        "type": "string"
                    },
                    "rules": {
                        "type": "array"
                    }
                }
            }]
        }
    }
 }
}

0 ответов

Другие вопросы по тегам