jsonschema - 如何指定 Liquid Studio 创建的 json 模式中的属性顺序?
问题描述
我们目前正在使用 Liquid Studio 的试用版来检查它是否符合我们的要求。
我们的 json 看起来像这样:
{
"$schema": "http://json-schema.org/draft-06/schema#",
"@id": "event-bulk",
"title": "events - bulk send",
"titleMap": {
"de": "Ereignisse"
},
"description": "Send events in a bulk",
"descriptionMap": {
"de": "Sende Ereignisse als Block"
},
"additionalProperties": false,
"type": "object",
"properties": {
...
},
"definitions": {
...
}
}
当我们使用 Liquid Studio 编辑我们的 Json Schema 时,它到目前为止运行良好,但突然我注意到生成的模式最终看起来像这样:
{
"$schema": "http://json-schema.org/draft-06/schema#",
"type": "object",
"title": "events - bulk send",
"description": "Send events in a bulk",
"additionalProperties": {
"not": {}
},
"properties": {
...
},
"required": [],
"definitions": {
...
},
"@id": "event-bulk",
"titleMap": {
"de": "Ereignisse"
},
"descriptionMap": {
"de": "Sende Ereignisse als Block"
}
}
这意味着不仅翻译的 titleMap 和 descriptionMap 被移动到文件的底部,而我们希望它们靠近原始标题和描述(我们有很多属性,所以它非常深入),还有 ID它定义了模式的类型,并且应该很快就会被注意到,所以它应该在顶部。
它还将 AdditionalProperties 更改为我们也不太喜欢的对象。
有什么方法可以定义排序顺序并改变提到的事情如何改变和添加的行为?
谢谢你。
解决方案
抱歉,无法指定顺序,但图形模式编辑器始终以一致的格式显示数据。
'additionalProperties' 似乎是一个问题,所以我会向开发团队提出这个问题。
推荐阅读
- bash - 脚本中的 OSX bash 管道无法按预期工作
- python - 用平均值替换过滤列的 NaN 值
- ios - Ionic iOS 过一会选择后台应用,只显示闪屏,应用不继续
- windows - D3D11_USAGE_STAGING,使用什么样的 GPU/CPU 内存?
- windows - usebackq 没有延迟扩展
- angular - Angular:从组件中获取 nativeElement
- c++ - 如何在函数内调用命名空间?
- java - Shapes doesn't appear (until JFrame is minimized and restored)
- javascript - 使用 Magnific Popup 打开 HTML 页面
- java - 从 Java 中的 XML 标记解析值