Json 复杂的架构 JSON?

Json schema for a complex JSON?

我有一个 json,它使用对象的对象代替数组,以便使用 json 键轻松搜索数据。

如何在不将密钥硬编码到架构中的情况下根据架构验证这一点?在这种情况下,我应该在验证之前将对象转换为数组吗?

示例JSON:

{
    "item_value": {
        "id": 123,
        "name": "Item Value",
        "colors": {
            "red_value": {
                "id": 1231,
                "name": "Red Value"
            },
            "blue_value": {
                "id": 1231,
                "name": "Blue Value"
            }
        }
    },
    "another_item_value": {
        "id": 133,
        "name": "Another Item Value",
        "colors": {
            "red_value_xyz": {
                "id": 1331,
                "name": "Red Value Xyz"
            },
            "blue_value_bar": {
                "id": 1331,
                "name": "Blue Value Bar"
            }
        }
    }
}

您可以使用 patternProperties 进行 RegEx-matched 属性 验证,或者如果您的所有属性都遵循相同的子架构,只需将 additionalProperties 与子架构一起使用。