0
スキーマはjsonオブジェクトに続いて検証する必要があり、追加プロパティを許可しないでください。他のプロパティの条件付き存在を強制するためにjsonスキーマを書くには?
{
"id": "11111111111111111111111111111111",
"status": "employed",
"company_name": "Google"
}
{
"id": "00000000000000000000000000000000",
"status": "unemployed"
}
スキーマのドラフトV4:
{
"type": "object",
"additionalProperties":false,
"required": [
"status",
"id"
],
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string",
"enum":["unemployed", "employed"]
},
"company_name": {
"type": "string"
}
},
"dependencies": {
"company_name": {
"properties": {
"status": {
"enum": [
"employed"
]
}
}
}
}
}
このスキーマは、右に見えるが、それはJSONオブジェクトには、次のではない無効化を行います。
{
"id": "00000000000000000000000000000001",
"status": "employed"
}
"ステータス"が "採用"されていても必須のプロパティ "company_name"が指定されていないため、無効にする必要があります。
参照http://stackoverflow.com/questions/41837518/removing-the-duplication-in-a-json-schema-that-uses-oneof-v4-or-v5/41838321?noredirect=1#comment70862053_41838321 – esp
@ espそこにはっきりとはっきりしていません。私の観察によれば:私は最後のもの(最高のもの)を使用しています:)私が紛失しているものがありますか? – Nilesh
@ esp私は答えを追加しました。 **依存関係を使用して**これを行う方法に別の答えを加えてください** ** – Nilesh