json - 在定义对象中定义的子模式可以引用另一个子模式吗?
问题描述
可能答案是如此明显,甚至不值得在任何地方提及,但我找不到任何关于此的明确信息。模式的定义(在 JSON 模式的“定义”内定义)可以引用另一个定义吗?
我还没有运行我的代码,因为我仍在编写模式并且我不想把它搞砸。这是我正在尝试做的一个例子:
"definitions": {
"apple": {
"description": "a type of fruit",
"edible": "boolean"
},
"fruit": {
"description": "a type of food",
"edible": "boolean",
"items": {
"$ref": "#definitions/apple"
}
}
}
解决方案
这是有趣的!
从定义中引用另一个定义是有效的。
如果您的引用是在items
“示例”而不是“示例”下,那么这将是有效的,因为“项目”的值必须是模式,而“示例”的值未定义为模式。(“示例”必须是一个数组,仅供参考。)
推荐阅读
- replace - Notepad++ - 增量替换所有数组索引
- c# - 如何 JSON 反序列化子对象 ASP.NET Core
- xslt - xslt 转换为 html 使用 select="format-date(@ДатаРожд, '[D01].[M01].[Y0001]')" 结果:[语言:en]19.09.2014
- node.js - webpack 没有将入口点代码拆分为单独的输出文件
- python - 运行脚本时出现 python 3.8 的语法错误
- swift - 如何在 UITextField 中设置 placeHolder / 用户文本和左边框之间的距离
- security - 向客户端公开具有读取平衡权限的条带密钥的安全风险?
- javascript - 即使原始模型中未指定新值,如何将新值添加到现有 MongoDB 数据库中
- c - 针对 pipe(2) 的读取操作不会阻塞进程
- reactjs - 在另一个组件 V6 中反应路由