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 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
---
swagger: "2.0"
info:
version: "0.1.0"
title: referenced validation
paths:
/:
get:
parameters:
- $ref: "#/parameters/rateLimit"
- $ref: "#/parameters/requiredPatternProps"
responses:
default:
description: the record
schema:
$ref: "#/definitions/record"
404:
$ref: "#/responses/notFound"
403:
$ref: "#/responses/wrongMe"
/greatAgain:
get:
parameters:
- $ref: "#/parameters/rateLimit"
- $ref: "#/parameters/requiredPatternItems"
responses:
default:
description: the record
schema:
$ref: "#/definitions/record"
404:
$ref: "#/responses/notFound"
403:
$ref: "#/responses/despicableMeItems"
parameters:
rateLimit:
name: X-Rate-Limit
in: header
type: integer #<--- try error with $ref in header
format: int32
requiredPatternProps:
name: badPattern
in: body
schema:
$ref: '#/definitions/record' #<--- patternProperties in parameters
requiredPatternItems:
name: badPatternInItems
in: body
schema:
type: array
items:
$ref: '#/definitions/lotOfErrors2' #<--- patternProperties in parameters
responses:
notFound:
description: Not found
schema:
$ref: "#/definitions/record"
wrongMe:
description: wrong me
schema:
$ref: "#/definitions/lotOfErrors"
despicableMeItems:
description: despicable me
schema:
type: array
items:
$ref: "#/definitions/lotOfErrors2"
definitions:
record:
type: object
additionalProperties: true
required: [ createdAt, oneMore ]
properties:
createdAt:
type: string
format: date-time
lotOfErrors:
type: object
required: [ a, b-1, x, z-1, bug ]
properties:
a:
type: integer
format: int32
readOnly: true #<--- warning
default: 3
example: 5
additionalProperties:
#type: object
properties:
x:
type: integer
z:
type: integer
additionalProperties: false
patternProperties: #<-- unsupported: patternProperties in schema
'^z-.*$':
type: integer
format: int32
readOnly: true #<-- warning
default: 3
example: 5
patternProperties: #<-- unsupported: patternProperties in schema
'^b-.*$':
type: integer
format: int32
default: 3
example: 5
'^)b-InvalidRegexp1.(*$': #<-- invalid regexp
type: integer
format: int32
default: 3
example: 5
lotOfErrors2: #<-- note the missing type to declare in items
required: [ a , b-8]
properties:
a:
type: integer
format: int32
default: 3
example: 5
patternProperties: #<-- unsupported: patternProperties in schema
'^b-.*$':
type: integer
format: int32
readOnly: true #<--- warning
default: 3
example: 5
'^)b-InvalidRegexp2.(*$': #<-- invalid regexp
type: integer
format: int32
default: 3
example: 5
|