【问题标题】:How to define a two-dimensional rectangular array in JSON Schema?如何在 JSON Schema 中定义一个二维矩形数组?
【发布时间】:2021-02-26 11:21:33
【问题描述】:

如何在 JSON 模式中定义二维数组?问题是我知道,如何定义一个具有精确项目数的二维数组:

{
    type: "array",
    items: {
        type: "array",
        items: {
            type: "number",
            minItems: 2,
            maxItems: 2
        }
    },
}

但是我不明白,当这个数字不固定时,如何定义一个每行具有完全相同数量的项目的数组。也就是说,我需要定义一个矩形的二维数组。

这个数据应该是有效的:

[
    [1, 2, 3],
    [1, 2, 3],
    [1, 2, 3],
]

而且这个数据也应该是有效的:

[
    [1, 2, 3, 4],
    [1, 2, 3, 4],
    [1, 2, 3, 4],
]

这不应该:

[
    [1, 2, 3],
    [1, 2],
    [1, 2, 3],
]

这不应该:

[
    [1, 2, 3, 4],
    [1, 2, 3],
    [1, 2, 3],
]

【问题讨论】:

  • 是否有可以发送的最大方阵尺寸?如果是这样,那么您可以使用暴力 oneOf 描述来描述每种尺寸。

标签: arrays json jsonschema


【解决方案1】:

我认为 JSON Schema 不可能做到这一点,因为您无法向 JSON Schema 提供与实例 JSON 相关的动态值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-28
    • 2012-07-04
    • 1970-01-01
    • 2021-05-30
    • 1970-01-01
    • 2010-09-18
    相关资源
    最近更新 更多