Я использую пакет npm quicktype для генерации схемы json из примеров файлов json. Позже я использую эти файлы схемы в файле openapispec, а затем создаю документацию и SDK с помощью инструмента генератор openapi .
Проблема в том, что quicktype по умолчанию генерирует json-схему draft6, а генератор открытого API не может читать / понимать что-либо выше draft4.
Я попробовал несколько генераторов схемы json и обнаружил, что quicktype довольно близок к тому, что требуется, и хотел бы продолжать его использовать.
Есть идеи, можно ли использовать quicktype для создания схемы draft4?
Редактировать: добавление примера.
Упрощенная схема draft4 будет выглядеть примерно так:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "",
"type": "object",
"properties": {
"property1": {
"type": "string",
"minLength": 1
},
"property2": {
"type": "string",
"minLength": 1
}
}
}
Теперь схема draft6, сгенерированная с использованием quicktype, будет выглядеть примерно так
{
"$schema": "http://json-schema.org/draft-06/schema#",
"$ref": "#/definitions/MyObject",
"definitions": {
"MyObject": {
"type": "object",
"additionalProperties": false,
"properties": {
"property1": {
"type": "string"
},
"property2": {
"type": "string"
}
}
}
}
}