json_schema: {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "title": "Provider",
      "description": "A provider is a deployment platform or orchestrator.",
      "type": "array",
      "items": {
          "oneOf": [
              {
                  "$ref": "#/definitions/path"
              },
              {
                  "$ref": "#/definitions/repository"
              },
              {
                  "$ref": "#/definitions/inheritance"
              }
          ]
      },
      "definitions": {
          "path": {
              "description": "Path to the artifact",
              "type": "string",
              "default": "null"
          },
          "repository": {
              "type": "object",
              "properties": {
                  "source": {
                      "name": "source",
                      "description": "Source location of the source control repository. The source MUST be specified by a valid URL.",
                      "type": "string",
                      "default": "null"
                  },
                  "path": {
                      "name": "path",
                      "description": "The path to a specific artifact file or directory of artifact files. Default value is '/' which would reference all of the files in the repository.",
                      "type": "string",
                      "default": "/"
                  },
                  "type": {
                      "name": "type",
                      "description": "The source control type. Default value is 'git'.",
                      "type": "string",
                      "default": "git"
                  },
                  "branch": {
                      "name": "branch",
                      "description": "The source control branch. Default value is 'master'.",
                      "type": "string",
                      "default": "master"
                  },
                  "tag": {
                      "name": "tag",
                      "description": "The source control tag.",
                      "type": "string",
                      "default": "null"
                  }
              }
          },
          "inheritance": {
              "type": "object",
              "properties": {
                  "inherit": {
                      "name": "inherit",
                      "description": "List of components whose artifacts will be added to the list of artifacts for the provider.",
                      "type": "array"
                  }
              }
          }
      }
  }