【问题标题】:json-schema additional metadatajson-schema 附加元数据
【发布时间】:2017-02-21 01:38:49
【问题描述】:

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

理想情况下,我想像这样添加一些元数据:

//...
"properties": {
  "contactFullName": {
    "$ref": "#/definitions/fullName",
    "custom": "my custom metadata here"
  }
}
//...

您可以在definitions 中添加一些内容以允许这样做吗?

【问题讨论】:

    标签: javascript json metadata jsonschema


    【解决方案1】:

    您无需执行任何特殊操作即可使用其他元数据关键字。你可以使用它们。在 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" }
      }
    }
    

    【讨论】:

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

    您可以使用 description 属性并在其中放置特定的结构,然后可以根据需要对其进行解释和应用(可以这么说,就像 JSON 架构中的 JSON)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-27
      • 2019-08-05
      • 2014-01-15
      • 1970-01-01
      • 2013-08-23
      • 2017-09-22
      • 2019-04-05
      • 1970-01-01
      相关资源
      最近更新 更多