{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "additionalProperties": true,
  "id": "https://json.schemastore.org/global.json",
  "properties": {
    "sdk": {
      "type": "object",
      "description": "Specify information about the SDK.",
      "properties": {
        "version": {
          "type": "string",
          "pattern": "^(?<major>0|[1-9]\\d*)\\.(?<minor>0|[1-9]\\d*)\\.(?<patch>0|[1-9]\\d*)(?:-(?<prerelease>(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+(?<buildmetadata>[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$",
          "description": "The version of the SDK to use."
        },
        "allowPrerelease": {
          "type": "boolean"
        },
        "rollForward": {
          "type": "string",
          "enum": [
            "patch",
            "feature",
            "minor",
            "major",
            "latestPatch",
            "latestFeature",
            "latestMinor",
            "latestMajor",
            "disable"
          ],
          "default": "disable",
          "description": "The roll-forward policy when selecting an SDK version, either as a fallback to accommodate missing a specific SDK version or as a directive to use a later version."
        }
      }
    },
    "test": {
      "type": "object",
      "description": "Specify information related to testing",
      "properties": {
        "runner": {
          "type": "string",
          "enum": ["Microsoft.Testing.Platform", "VSTest"],
          "default": "VSTest",
          "description": "The test runner/platform used by 'dotnet test' command."
        }
      }
    }
  },
  "title": "JSON schema for the .NET global configuration file",
  "type": "object"
}
