{
  "$id": "http://asl-validator.cloud/common.json#",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "definitions": {
    "Catch": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "ErrorEquals": {
            "type": "array",
            "items": {
              "$ref": "errors.json#"
            }
          },
          "Next": {
            "$ref": "#/definitions/Next"
          }
        },
        "required": ["ErrorEquals", "Next"]
      }
    },
    "Comment": {
      "type": "string"
    },
    "End": {
      "enum": [true]
    },
    "Next": {
      "type": "string"
    },
    "Retry": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "ErrorEquals": {
            "type": "array",
            "items": {
              "$ref": "errors.json#"
            }
          },
          "IntervalSeconds": {
            "type": "number",
            "minimum": 0
          },
          "MaxAttempts": {
            "type": "number",
            "minimum": 0
          },
          "BackoffRate": {
            "type": "number",
            "minimum": 0
          }
        },
        "required": ["ErrorEquals"]
      }
    }
  }
}
