1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
openapi: "3.0.0"
info:
title: Test API - Complex allOf Inheritance
version: 1.0.0
paths: {}
components:
schemas:
StringConstraint:
type: string
minLength: 1
NumberConstraint:
type: number
minimum: 0
BaseConfig:
type: object
properties:
name:
type: string
enabled:
type: boolean
ExtendedConfig:
type: object
properties:
timeout:
type: integer
ProjectedItem:
type: object
properties:
id:
type: integer
code:
allOf:
- $ref: '#/components/schemas/StringConstraint'
- maxLength: 10
score:
allOf:
- type: number
- minimum: 0
- maximum: 100
config:
allOf:
- $ref: '#/components/schemas/BaseConfig'
- $ref: '#/components/schemas/ExtendedConfig'
metadata:
allOf:
- type: object
additionalProperties:
type: string
- type: object
additionalProperties:
minLength: 1
Item:
allOf:
- $ref: '#/components/schemas/ProjectedItem'
- type: object
required:
- id
- code
- score
- config
- metadata
properties:
extra:
type: string
|