json-schema附加元数据

kre*_*eek 4 javascript json metadata jsonschema

是否可以向json架构属性添加其他元素或自定义元数据(标题和描述除外)?

理想情况下,我想添加一些元数据,如下所示:

//...
"properties": {
  "contactFullName": {
    "$ref": "#/definitions/fullName",
    "custom": "my custom metadata here"
  }
}
//...
Run Code Online (Sandbox Code Playgroud)

你可以添加一些东西definitions来容许吗?

Jas*_*ers 11

您无需执行任何特殊操作即可使用其他元数据关键字.你可以使用它们.在JSON Schema中,包含未定义的关键字不是错误.任何没有JSON Schema语义的东西都应该被忽略.因此,以下模式完全有效,不应与任何验证器实现冲突.

{
  "title": "Foo",
  "description": "All the foo you can GET",
  "version": "1.0.3",
  "author": "Jason Desrosiers",
  "type": "object",
  "properties": {
    "id": { "type": "string" }
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 我认为答案应该指出 json 模式中没有自定义元数据。您可以创建自己的名称,但不能保证该名称不会在下一个 json 架构版本中使用。 (3认同)