0
ない:JSONスキーマ・バリデータは、アレイのすべての項目を検証するが、私は2つのスキーマの下に持っている唯一の最初の
A.json
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type":"object",
"properties":
{
"ArgumentChoice":{
"type" : "array",
"items" : {"$ref" : "B.json"}
}
}
}
B.json
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title" : "ArgumentChoiceType",
"type":"object",
"properties":{
"ArgumentInt" : {
"type" : "object",
"properties":{
"Value":{
"type" : "integer"
}
}
},
"ArgumentString" : {
"type" : "object",
"properties":{
"Value":{
"type" : "string"
}
}
}
}
}
以下は、A.jsonに対して検証されたjson要求です。
{
"ArgumentChoice" : [
{
"ArgumentInt" : {
"Value" : 1
}
},
{
"ArgumentString" :
{
"Name" : "JOB_NAME",
"Value" : "test"
}
}
]
}
私の問題は、文字列としてArgumentInt
の値を渡すと、整数値を受け付けてレポートメッセージに表示されるため、失敗します。 しかし、私はArgumentString
の値を整数として渡すとまだ失敗しますが、間違ったタイプが入力されたために失敗したというメッセージは表示されません。 ArgumentString
の上にArgumentInt
を置き、ArgumentString
に間違った値の型を入れると、ArgumentChoice
の最初の配列要素だけがスキーマに対して検証されていると推測されます。 何か間違っていますか?