{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "http://asyncapi.com/definitions/3.1.0/serverVariable.json",
  "description": "An object representing a Server Variable for server URL template substitution.",
  "type": "object",
  "properties": {
    "description": {
      "description": "An optional description for the server variable. CommonMark syntax MAY be used for rich text representation.",
      "type": "string"
    },
    "examples": {
      "description": "An array of examples of the server variable.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "default": {
      "description": "The default value to use for substitution, and to send, if an alternate value is not supplied.",
      "type": "string"
    },
    "enum": {
      "description": "An enumeration of string values to be used if the substitution options are from a limited set.",
      "type": "array",
      "uniqueItems": true,
      "items": {
        "type": "string"
      }
    }
  },
  "patternProperties": {
    "^x-[\\w\\d\\.\\x2d_]+$": {
      "$ref": "http://asyncapi.com/definitions/3.1.0/specificationExtension.json"
    }
  },
  "additionalProperties": false,
  "example": {
    "$ref": "http://asyncapi.com/examples/3.1.0/serverVariable.json"
  }
}
