0

也许听起来令人困惑,我想验证这个模型架构(应该有 $schema、title、properties 和必填字段):

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "My Schema",
  "type": "object",
  "properties": {
    "myData": {
      "type": "object",
      "properties": {
        "name_1": {
          "type": "string"
        },
        "name_2": {
          "type": "string"
        },
        "name_3": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "myData"
  ]
}

我已经这样做了:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "$schema": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "properties": {
      "type": "object",
      "enum": "myData"
    },
    "required": {
      "type": "array",
      "items": {
        "myData": "string"
      }
    }
  }
}

但这部分效果不佳:

"properties": {
      "type": "object",
      "enum": "myData"
 },

有可能做到这一点吗?还是禁止使用那些构建的模式词,例如:“required”、“enum”、“properties”作为“properties”中的属性?在此先感谢您帮助我理解这部分:)

4

1 回答 1

0

我的错,对不起。我创建了错误的 json 模式,它应该是这样的:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "id": "http://jsonschema.net",
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "properties": {
      "type": "object",
      "properties": {
        "myData": {
          "type": "object"
        }
      }
    },
    "required": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}

并且工作正常:)

于 2015-11-05T19:51:55.737 回答