如何在 json 模式中表示 sum/union 类型

2024-04-22

我正在尝试使用 json-schema 记录 JSON 的现有用法。系统允许对象属性之一具有以下两种可能性。

Either

{
    "tracking_number" : 123
}

Or

{
    "tracking_number" : [ 123, 124, 125 ]
}

我如何使用 json 模式来表达这一点?


Use anyOf断言该属性必须符合一个或另一个模式。

{
    "type": "object",
    "properties": {
        "tracking_number": {
            "anyOf": [
                { "$ref": "#/definitions/tracking_number" },
                { "type": "array", "items": { "$ref": "#/definitions/tracking_number" }
            ]
    },
    "definitions": {
        "tracking_number": { "type": "integer" }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 json 模式中表示 sum/union 类型 的相关文章

随机推荐