JSON 架构中的自定义属性

Custom Properties in JSON Schema

使用自定义属性扩展 JSON 架构是否有效?

我问的原因是,因为我正在使用模式来呈现模式描述的 JSON 的表单(模式中描述的每个 属性 都用作表单元素带有标签和某种输入)。

如果能够使用我主要用于表单呈现的一些属性来扩展架构会很有用,但在使用架构验证 JSON 对象本身时会忽略这些属性。

我可以为 JSON 对象提供两种不同的表示形式(一种是模式,另一种是具有自定义属性的对象模式,我只是为了创建表单,但如果这样维护起来会更容易我可以将两者合而为一)。

不幸的是 Google 不是很有帮助,而且我没有大量使用 JSON 模式的经验,所以如果我遗漏了一些明显的东西,我深表歉意。

编辑 1:
示例架构片段:

{
    "title": "Example Schema",
    "type": "object",
    "properties": {
        "firstName": {
            "type": "string",
            "CUSTOM_PROPERTY": "CUSTOM_VALUE"
        }
    }
}

请注意,以上只是一个片段,因此没有 title$schema

(如果有效 JSON)验证器很可能会忽略您的自定义属性。但是你要使用什么验证器?针对该特定验证器进行检查。

这里有一些要测试的在线验证器:

此外,您可以扩展 JSON 架构,请参阅 https://json-schema.org/draft/2019-09/json-schema-core.html#rfc.section.6.5