使用自定义属性扩展JSON模式是否有效?
我问的原因是,因为我使用模式也为模式描述的JSON呈现一个表单(模式中描述的每个属性都用作带有标签和某种输入的表单元素)。 / p>
能够使用我主要用于表单呈现的一些属性扩展模式会很有用,但在使用模式验证JSON对象本身时会忽略这些属性。
我可以为JSON对象提供两种不同的表示形式(一种是模式,一种是具有自定义属性的对象的模式,我只是用于创建表单,但如果我可以将两者结合在一起,则更容易进行维护)。
不幸的是,谷歌没有太大的帮助,而且我没有大量使用JSON模式的经验,所以如果我遗漏了一些明显的东西,我会道歉。
编辑1:
Schema Snippet示例:
{
"title": "Example Schema",
"type": "object",
"properties": {
"firstName": {
"type": "string",
"CUSTOM_PROPERTY": "CUSTOM_VALUE"
}
}
}
请注意,上面只是一个片段,因此没有title
,$schema
等。
答案 0 :(得分:5)
(如果它是有效的JSON)验证器很可能会忽略您的自定义属性。但是你要使用什么验证器?检查该特定验证器。
这里有一些在线验证器可供测试:
此外,您可以扩展JSON架构,请参阅http://json-schema.org/latest/json-schema-core.html#rfc.section.6.4