at-least-one-item-in-schema-any-of-list
Overview
This rule belongs to the openapi-v3-standards-validation ruleset and states that:
The anyOf property in a Schema Object is a logical operator that helps infer data validity based on results of its subschemas. Therefore, if declared, it must contain at least one subschema in its list i.e. the anyOf array must not be empty.
| Property | Value |
|---|---|
| Enabled | Yes |
| Maximum Severity | Error |
| Message | Schema Object anyOf list is empty. |
| Code | OPENAPI3STANDARDS_V344 |
| Type | Validation |
| Rule System | Semantic |
| Broad Category | Schemas |
| Products Impacted | API Transformer, Code Generation, Developer Experience Portal |
| Tags | openapi3 openapi standards semantic validation any of json schema schema |
Suggested Fixes
- Ensure that the
anyOflist contains at least one subschema. - If the
anyOflist in the Schema Object is not expected to contain any subschemas, remove its declaration from the Schema Object.
For More Information
- https://datatracker.ietf.org/doc/html/draft-bhutton-json-schema-00#section-10.2.1.2
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#schema-object
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#openapi-specification
- https://docs.apimatic.io/rulesets/overview/