【问题标题】:JsonSchema - Defining a white-listed set of valuesJsonSchema - 定义一组白名单值
【发布时间】:2022-01-09 19:38:08
【问题描述】:

我觉得我的问题不可能以前没有人问过,但我在任何地方都找不到答案。

正如标题所暗示的,我正在尝试创建一个 JSON 模式,当且仅当其中的 所有 值在预定义集中定义时,该模式才会验证数组。

例如: 如果预定义集包含{"One", "Two", "Three"},并且我要验证的数组是["One", "Two"],那么数组应该是有效。 但是如果数组是["One", "Two", "Four"],那么数组就会无效

所以我知道enum,但它并没有实现我的目标,因为只要在预定义集中定义了一个值,它就会验证。

我也知道min/max-contain 组合,但它们可能会干扰预定义集中必须中没有任何值出现的要求。它们都可能出现,也可能不出现。

有人知道如何满足这些要求吗?

【问题讨论】:

    标签: jsonschema whitelist


    【解决方案1】:

    好的,让我们分解一下:

    把它放在一起:

    {
      "type": "array",
      "items": {
        "enum": [ "one", "two", "three" ]
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-16
      • 2011-08-04
      相关资源
      最近更新 更多