我正在尝试查找导致以下JSON无效的内容。奇怪的是,它在this网站中作为有效的JSON传递,但在this一个
中无效这是架构:
第二个架构验证网站上记录的错误如下:
Error when resolving schema reference '#/definitions/identifiable'.
Path 'definitions.subscription.allOf[0]', line 19, position 17.
有人可以澄清我的架构是否不正确,或者这是关于JSON架构本身的一些模棱两可的规则吗?
答案 0 :(得分:0)
您没有为类型'可识别'的对象定义架构。在根定义级别:
{
...
"definitions": {
...
"identifiable": {
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "http://api.sprint.com/schema/identifiable#",
"title": "Identifiable Schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "READ ONLY. The id of the resource."
}
},
"required": [
"id"
],
"additionalProperties": true
...
}
...
}
但是你已经在类型'订阅'的对象定义中定义了它。因此,您在计划中的参考指向:
[root]/definitions/identifiable
但是你有:
[root]/definitions/subscriptions/definitions/identifiable
请修改您的参考。 顺便说一句,两个网站都标记您的架构无效。