rules: info-title-required: description: Info title must be present severity: error given: $.info then: {field: title, function: truthy} info-description-required: description: Info description must be present severity: error given: $.info then: {field: description, function: truthy} operation-operationid-required: description: Every operation must have an operationId severity: error given: $.paths[*][get,post,put,patch,delete] then: {field: operationId, function: truthy} operation-summary-required: description: Every operation must have a summary severity: error given: $.paths[*][get,post,put,patch,delete] then: {field: summary, function: truthy} operation-tags-required: description: Every operation must have tags severity: error given: $.paths[*][get,post,put,patch,delete] then: {field: tags, function: truthy} response-description-required: description: Every response must have a description severity: error given: $.paths[*][get,post,put,patch,delete].responses[*] then: {field: description, function: truthy} no-empty-descriptions: description: Descriptions must not be empty severity: error given: $..description then: {function: truthy} iso-currency-code-pattern: description: Currency code parameters must enforce ISO 4217 three-letter uppercase pattern severity: warn given: $.components.parameters[?(@.name == 'base_code' || @.name == 'target_code')].schema then: {field: pattern, function: truthy}