--- 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