【发布时间】:2017-04-22 12:28:38
【问题描述】:
使用自定义属性扩展 JSON 模式是否有效?
我问的原因是,因为我正在使用模式来为模式描述的 JSON 呈现表单(模式中描述的每个属性都用作带有标签和某种输入的表单元素)。
如果能够使用我主要用于表单呈现的一些属性来扩展架构会很有用,但是在使用架构来验证 JSON 对象本身时会被忽略。
我可以对 JSON 对象有两种不同的表示形式(一种是模式,另一种是具有自定义属性的模式类对象,我只是用于创建表单,但如果我可以将两者结合在一起,维护起来会更容易)。
不幸的是,Google 并没有提供太多帮助,而且我没有大量使用 JSON 模式的经验,所以如果我遗漏了一些明显的东西,请致歉。
编辑 1:
示例架构片段:
{
"title": "Example Schema",
"type": "object",
"properties": {
"firstName": {
"type": "string",
"CUSTOM_PROPERTY": "CUSTOM_VALUE"
}
}
}
请注意,上面只是一个 sn-p,因此没有 title、$schema 等。
【问题讨论】:
-
如果 JSON 仍然有效,您可以通过添加新属性来扩展 JSON 对象。你能举个例子吗?
-
@Cubi 如果 JSON Schema 包含自定义属性,它是否可以被 JSON 模式解析器正确解析。在上面添加了一个示例。
标签: javascript json jsonschema json-schema-validator