openapi: 3.0.3 info: version: 0.1.0 title: Schemata for config models servers: [] paths: {} components: schemas: # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Config # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Config: descripton: |- Data model for all parts of the configuration. type: object required: - info - options - calls properties: info: $ref: "#/components/schemas/Info" options: $ref: "#/components/schemas/AppOptions" # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Info # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Info: description: |- Contains meta data about project. type: object required: - title - description - author properties: title: type: string description: type: string author: type: string # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # App Options # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AppOptions: description: |- Options pertaining to the rudimentary setup of the app. type: object properties: tsp: type: object properties: verbose: type: boolean default: false hirschberg: type: object properties: penality-missmatch: type: number default: 1 penality-gap: type: number default: 1 verbose: type: array items: $ref: '#/components/schemas/EnumHirschbergVerbosity' default: [] show: type: array items: $ref: '#/components/schemas/EnumHirschbergShow' default: [] # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Enum Hirschberg - Verbosity options # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ EnumHirschbergVerbosity: description: |- Enumeration of verbosity options for Hirschberg type: string enum: - COSTS - MOVES # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Enum Hirschberg - display options # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ EnumHirschbergShow: description: |- Enumeration of verbosity options for Hirschberg type: string enum: - TREE - ATOMS