現在、一部のデータ用にJSONスキーマを作成中です。のは、私のスキーマがこの形式であることを言ってみましょう:JSON Schema enumのすべての可能な組み合わせ
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Title",
"type": "array",
"items": {
"type":"object",
"properties":{
"property1": {
"type": "string",
"enum": ["ALPHA", "BETA"]
},
"property2": {
"type": "string",
"enum": ["alpha", "beta"]
},
"val": {
"type": "number",
"min": 0,
"max": 100
}
},
"required": ["property1", "property2", "val"]
}
}
私の質問は、それは我々が(なしリピートを有する任意の順序で)property1
とproperty2
値のすべての可能な組み合わせをするよう指定することは可能でしょうか? val
の値はほとんど確実にユニークではありません。
"items"
オブジェクトの上のスキーマに"minItems": 4, "maxItems": 4,
を追加していると思いますが、これはちょうど4つのアイテムで終わることを意味しており、それらが一意であることを保証するものではありません。
私はスキーマ全体を記述したり、ドキュメントへのポインタを探したり、簡単な例を使って適切な方向に私を押し込んでください。
これは、組み合わせの一つとして、故障した(が私のポイントを明確にするために含ま)
テストケースは、組み合わせの一つであり、これは失敗し
{"data":[
{
"property1": "ALPHA",
"property2": "alpha",
"val": 7
},{
"property1": "ALPHA",
"property2": "beta"
"val": 16
},{
"property1": "BETA",
"property2": "alpha"
"val": 12
}
]}
が欠落しています繰り返される
{"data":[
{
"property1": "ALPHA",
"property2": "alpha"
"val": 73
},{
"property1": "ALPHA",
"property2": "beta"
"val": 72
},{
"property1": "BETA",
"property2": "alpha"
"val": 73
},{
"property1": "BETA",
"property2": "beta"
"val": 71
},{
"property1": "ALPHA",
"property2": "beta"
"val": 68
}
]}
これは {"data":[
{
"property1": "ALPHA",
"property2": "alpha"
"val": 26
},{
"property1": "ALPHA",
"property2": "beta"
"val": 26
},{
"property1": "BETA",
"property2": "alpha"
"val": 32
},{
"property1": "BETA",
"property2": "beta"
"val": 83
}
]}
を渡す必要があります
これも
{"data":[
{
"property1": "ALPHA",
"property2": "beta"
"val": 15
},{
"property1": "BETA",
"property2": "alpha"
"val": 6
},{
"property1": "ALPHA",
"property2": "alpha"
"val": 65
},{
"property1": "BETA",
"property2": "beta"
"val": 37
}
]}
試しましたか?これはコード作成サービスではありません –
@DarrenSweeney私はJSONスキーマを使い慣れていますので、私は見た目には思えるかもしれませんが、有用なものは何も見つかりませんでした。このウェブサイトは通常、私が立ち往生しているときに私を正しい方向に向けるのにとても良いです、そして私が見つけることができる限り、誰もこのような質問をしていませんでした。私が考えることができるのは制限されているので、配列に正確に4つのアイテムがなければならないが、これはすべてがユニークであることを保証するものではない。 – lioness99a