【发布时间】:2016-04-12 19:02:10
【问题描述】:
我想定义一个类似这样的对象,以映射到类似 java Map 的东西(但不完全是,因为这也需要与 typescript 接口)。最终,我想弄清楚的是如何在另一个对象中声明<T> 类型的东西(比如Dict<MyObj>)(如果这可能的话):
(这显然不是一个有效的 json 模式)
{
"type": "object",
"javaType": "some.package.base.DictKeyValuePair",
"properties": {
"key": { "type": "string" },
"value": { "type": "<T>" }
}
}
将在其他 json 模式中引用,如下所示:
{
"type": "object",
"javaType": "some.package.base.Dict",
"properties": {
"key": { "type": "string" },
"value": { "type": "<T>" },
"keValuePairs": {
"type": "array",
"items": {
"$ref": "DictKeyValuePair.json",
"genericType": "<T>"
}
}
}
}
终于被用在了类似这样的对象中:
{
"type": "object",
"javaType": "some.package.SomeObject",
"properties": {
"someDict": {
"$ref": "Dict.json",
"genericType": "SomeObjectOrSimpleType"
}
}
}
那么...这在 json 模式中是否可行?
【问题讨论】:
-
需要解决这个确切的问题,表示一个 Dictionary
和 Tuple 。你能分享任何经验教训吗?
标签: json jsonschema