使用此架构,此文件不会捕获 下的name_en
和legalName_en
字段parties/identifier
,即使在属性additionalProperties: false
上已指定。identifier
这是与:
jsonschema schema.json -i file.json
在 OSX 上,使用python-jsonschema。
我做错了什么,还是这是一个错误?
使用此架构,此文件不会捕获 下的name_en
和legalName_en
字段parties/identifier
,即使在属性additionalProperties: false
上已指定。identifier
这是与:
jsonschema schema.json -i file.json
在 OSX 上,使用python-jsonschema。
我做错了什么,还是这是一个错误?
我不认为这是一个错误 - 至少如果它也是http://www.jsonschemavalidator.net/使用的处理器中的一个错误。
奇怪的是,还有其他一些实例additionalProperties:false
已经指定了验证器兑现它的位置。packageInfo 部分中有四个属性被捕获,例如:
尚未定义属性“documentation_en”,并且架构不允许其他属性。架构路径: http ://standard.open-contracting.org/schema/1__1__0/release-schema.json#/properties/packageInfo/properties/publisher/additionalProperties
如果我从 packageInfo 部分中删除多余的属性,则整个有效负载都可以正常验证。
然后我从定义中删除了该patternProperties
属性,Identity
验证器开始工作。因此,关于定义中 patternProperties 的存在或值的某些事情正在阻止 additionalProperties 验证工作,这是我所能推测的。
此外,作为开关的不仅仅是 patternProperties 的存在。我在 packageInfo 定义中添加了一个 patternProperties 属性,以查看它是否阻止了验证器验证 4 个多余的属性,但它仍然有效。所以它必须是别的东西。很神秘。