JSON 架构:将 additionalProperties 限制为一种类型

JSON Schema: Restrict additionalProperties to exactly one type

我正在尝试验证具有完全相同类型的所有 additionalProperties 的对象。

这是我对 JSON 架构的尝试:

{
  additionalProperties: {
    oneOf: [
      { type: "string" },
      { type: "boolean" },
    ]
  }
}

但这只会检查各个附加属性。

有没有办法实现以下目标?

// Valid
{
  "a": true
  "b": false
}

{
  "c": "c",
  "d": "d"
}

// Invalid
{
  "a": true,
  "b": "b"
}
{
  "$schema": "https://json-schema.org/draft/2019-09/schema",
   "oneOf": [
      {
        "additionalProperties": {
          "type": "string"
        }
      },
      {
        "additionalProperties": {
          "type": "boolean"
        }
      }
    ]
}

工作:

{
  "a": true,
  "b": false
}

不工作:

{
  "a": true,
  "b": "false"
}