json - 如何引用顶级数组 json 的模式

标签 json jsonschema

我有一个包含项目列表的 JSON 文件。此文件中存储的唯一内容是作为数组的项目。例如:

[
    {...},
    {...},
    {...},
]

我想为此定义一个架构文件。这似乎很好,因为可以将初始类型设置为数组,并且我可以将项目定义为类型。但我想引用项目 json 文件中的架构。不幸的是它不是一个对象所以我不能添加 "$schema" key 。我当然可以使 json 成为一个只有一个具有数组值的键的对象,但这似乎不是一个好的设计。

模式系统似乎有一些设计错误还是顶级数组 json 不受支持?

最佳答案

我想你可能已经假设把 $schema根据 JSON Schema,在您的 JSON 数据中具有任何含义。

But I want to reference the schema in the item json file.



赋予它的任何含义都不是来自 JSON Schema 规范。
$schema用于 JSON 模式。该规范没有定义任何方法来允许 JSON 文档识别为应该符合模式的文档。

有一种方法可以使用 HTTP header ,但仅此而已。

关于json - 如何引用顶级数组 json 的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57930439/

相关文章:

c# - .Net 将 JSON 反序列化为 c# 对象

json - Perl 处理后向 JSON 数据添加内容

jquery - JSON 对象映射到另一个 JSON 对象到备用键名称

python - jsonschema验证未按预期返回错误?

javascript - 查找对象的值

ios - 使用NSURL和NSJSON运行应用程序时出现“NSInvalidArgumentException”

java - Android AsyncTask 出现 JSON 解析错误

java - Json 架构验证失败

regex - 创建正则表达式模式以匹配 "string/uuid"模式

json - Pyspark delta Lake json 数据类型演变问题(合并不兼容异常)