ajv-validator / ajv-validator/ajv-cli

spurious error "must NOT have additional properties" for required field

未關閉
#235 3 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
TypeScript
星號
316
分支
77
PR 合併指標
30 天內沒有已合併 PR

描述

I am encountering an unexpected behavior from `ajv-cli`.
```bash
$ npx ajv -s sch.json -d dat.json
dat.json invalid
[
{
instancePath: '/obj',
schemaPath: '#/properties/obj/additionalProperties',
keyword: 'additionalProperties',
params: { additionalProperty: 'r' },
message: 'must NOT have additional properties'
}
]
$
```

with the following `sch.json`
```json
{
"$id": "sch.json",
"$schema": "http://json-schema.org/schema",
"definitions": {
"Obj": {
"type": "object",
"properties": {
"r": {
"type": "number"
},
"o": {
"type": "string"
}
},
"required": [
"r"
],
"additionalProperties": false
}
},
"type": "object",
"properties": {
"obj": {
"type": "object",
"$ref": "#/definitions/Obj",
"additionalProperties": false
}
}
}
```

and the following `dat.json`
```
{
"$id": "dat.json",
"$schema": "./sch.json",
"obj": {
"r": 123
}
}
```

but the field `r` is required, and must be set.

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。