2

我正在寻找如何为对象中的对象集合编写 JSON 模式。

{
    "name": "Sadiq",
    "age": 68,
    "email": [
        {
            "emailid": "sadiq@gmail.com"
        },
        {
            "emailid": "sadiq@yahoo.com"
        }
    ],
    "phone": [
        {
            "phonenumber": "301-215-8006"
        },
        {
            "phonenumber": "301-215-8007"
        }
    ]
}
4

3 回答 3

7

这是编写此架构的一种可能方法:

{
    "type": "object",
    "additionalProperties": false,
    "properties": {
        "name": {
            "type": "string",
            "required": true
        },
        "age": {
            "type": "integer",
            "required": true
        },
        "email": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                    "emailid": {
                        "type": "string",
                        "required": true
                    }
                }
            }
        },
        "phone": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                    "phonenumber": {
                        "type": "string",
                        "required": true
                    }
                }
            }
        }
    }
}

可能的改进是:

  • 添加正则表达式模式以强验证emailid字段
  • 提取emailphone进入顶级类型并在上述模式中引用它们。
于 2014-11-02T18:12:13.237 回答
1

你可以试试csonschema,它可以让你用更简单的方式编写 jsonschema。

name: 'string'
age: 'integer'
email: ['email']
phone: ['string']
于 2014-11-20T17:25:24.503 回答
0

在 python 中,有一个 json 库可以帮助您根据需要进行编码或重新格式化

于 2014-11-02T13:21:59.720 回答