如何在JSON Schema 2019-09中定义Map<String, SomeType>及写法有效性确认
你的写法在JSON Schema 2019-09中完全合法
你的实现方式完全符合JSON Schema 2019-09的规范,具体原因如下:
$defs是2019-09版本引入的标准字段,专门用于存放可复用的Schema片段,你将SomeType定义在$defs中是合规的用法。additionalProperties字段支持接收任意合法的JSON Schema结构,包括通过$ref引用其他Schema片段。你用{"$ref": "#/$defs/SomeType"}指定对象额外属性的类型,完美对应Java中Map<String, SomeType>的语义——JSON对象的键天然是字符串类型,值则符合SomeType的定义。
这种写法本质上和你给出的Map<String, String>实现逻辑一致,只是把内联的字符串类型替换为对预定义类型的引用,是定义自定义值类型字符串键映射的标准做法。
内容的提问来源于stack exchange,提问作者JohannisK
相关产品推荐
相关产品推荐

