{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/sarif-external-property-file-2-1-0/latest.json",
  "title": "SARIF External Property File Schema Version 2.1.0 JSON Schema",
  "x-lintel": {
    "source": "https://www.schemastore.org/sarif-external-property-file-2.1.0.json",
    "sourceSha256": "db7007c1e13774d4ed539e748149775a8819ea0cecfe3e80e8b3a111aa5cf7bd"
  },
  "type": "object",
  "properties": {
    "$schema": {
      "description": "The URI of the JSON schema corresponding to the version of the external property file format.",
      "type": "string",
      "format": "uri"
    },
    "version": {
      "description": "The SARIF format version of this external properties object.",
      "enum": [
        "2.1.0"
      ]
    },
    "guid": {
      "description": "A stable, unique identifier for this external properties object, in the form of a GUID.",
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$"
    },
    "runGuid": {
      "description": "A stable, unique identifier for the run associated with this external properties object, in the form of a GUID.",
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$"
    },
    "conversion": {
      "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/conversion",
      "description": "A conversion object that will be merged with an external run."
    },
    "graphs": {
      "description": "An array of graph objects that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "default": [],
      "uniqueItems": true,
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/graph"
      }
    },
    "externalizedProperties": {
      "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/propertyBag",
      "description": "Key/value pairs that provide additional information that will be merged with an external run."
    },
    "artifacts": {
      "description": "An array of artifact objects that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/artifact"
      }
    },
    "invocations": {
      "description": "Describes the invocation of the analysis tool that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": false,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/invocation"
      }
    },
    "logicalLocations": {
      "description": "An array of logical locations such as namespaces, types or functions that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/logicalLocation"
      }
    },
    "threadFlowLocations": {
      "description": "An array of threadFlowLocation objects that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/threadFlowLocation"
      }
    },
    "results": {
      "description": "An array of result objects that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": false,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/result"
      }
    },
    "taxonomies": {
      "description": "Tool taxonomies that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/toolComponent"
      }
    },
    "driver": {
      "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/toolComponent",
      "description": "The analysis tool object that will be merged with an external run."
    },
    "extensions": {
      "description": "Tool extensions that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/toolComponent"
      }
    },
    "policies": {
      "description": "Tool policies that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/toolComponent"
      }
    },
    "translations": {
      "description": "Tool translations that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/toolComponent"
      }
    },
    "addresses": {
      "description": "Addresses that will be merged with with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": false,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/address"
      }
    },
    "webRequests": {
      "description": "Requests that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/webRequest"
      }
    },
    "webResponses": {
      "description": "Responses that will be merged with an external run.",
      "type": "array",
      "minItems": 0,
      "uniqueItems": true,
      "default": [],
      "items": {
        "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/webResponse"
      }
    },
    "properties": {
      "$ref": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json#/$defs/propertyBag",
      "description": "Key/value pairs that provide additional information about the external properties."
    }
  },
  "required": [
    "version"
  ],
  "additionalProperties": false
}
