我一直在寫簡單的JSON模式,但我遇到了一個更復雜一點的API輸入調用。我有,可以採取3種非常不同類型的JSON之一寧靜端路線:編寫更復雜的json模式,依賴於其他鍵
本地主機/富
可以採取:
{ 「類型」: 「ice_cream」, 「錐體」: 「華夫餅」 ...}
或
{ 「類型」:只有我 「小麥」 ...}
如果 「類型」 項中包含 「ice_cream」, 「hot_dog」, 「包子」曾經想看到關鍵「錐「而不是關鍵」小圓麪包「。類似地,如果「type」包含「hot_dog」,我只想看到「bun」而不是「cone」。我知道我可以進行模式匹配,以確保我只能看到類型「ice_cream」或類型「hot_dog」,但我不知道如何強制某些其他字段的要求,如果該鍵設置爲該值。我看到有一個叫做「依賴」的json模式字段,但是我還沒有找到關於如何使用它的好例子。
順便說一句,我不知道這個輸入JSON是不錯的形式(有效地重載它所需的JSON結構的類型),但我沒有選擇更改api。
我知道這是一個老問題,但我想我只是提到v5 *可能會有[`switch`](https://github.com/json-schema/json-schema/wiki/ switch-%28v5-proposal%29)關鍵字,它完全符合你的要求。儘管如此,我們將不得不等待實際選秀。 – cloudfeet 2013-09-18 15:52:52