{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/vtesttree-yaml/versions/2.0.0.json",
  "title": "vtesttree.yaml",
  "x-lintel": {
    "source": "https://www.schemastore.org/vtesttree-schema-v2.0.0.json",
    "sourceSha256": "eca6f956c0efd3a761464b06a7dbbbb0f01bf57ba7351a6c35a0effb1e8f0f91",
    "fileMatch": [
      "*.vtesttree.yaml",
      "*.vtesttree.yml",
      "*.vtesttree.json"
    ],
    "parsers": [
      "json",
      "yaml"
    ]
  },
  "type": "object",
  "$ref": "#/$defs/210d5/full",
  "$defs": {
    "d0889": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Version",
        "description": "Json schema version for the vtesttree.yaml file. Acceptance criteria: equal major version, less/equal minor and patch version.",
        "const": "2.0.0",
        "type": "string",
        "examples": [
          "2.0.0"
        ]
      }
    },
    "d773c": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Test tree",
        "description": "Definition of a test tree consisting of test fixtures, CAPL test cases and CAPL test sequences.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/742a2/full"
        }
      }
    },
    "ea7d2": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAPL test sequence",
        "description": "Definition of a call to a CAPL test sequence.",
        "type": "object",
        "required": [
          "capl-test-sequence"
        ],
        "additionalProperties": false,
        "properties": {
          "capl-test-sequence": {
            "type": "string",
            "description": "Function name of the CAPL test sequence."
          },
          "title": {
            "type": "string",
            "description": "Title of the CAPL test sequence."
          },
          "params": {
            "$ref": "#/definitions/2283a/full"
          }
        }
      }
    },
    "d6e89": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Test fixture",
        "description": "Definition of a test fixture containing other test fixtures, CAPL test cases and CAPL test sequences.",
        "type": "object",
        "required": [
          "test-fixture"
        ],
        "additionalProperties": false,
        "properties": {
          "test-fixture": {
            "type": "string",
            "description": "Name of the test fixture."
          },
          "description": {
            "type": "string",
            "description": "Description of the test fixture."
          },
          "elements": {
            "type": "array",
            "items": {
              "$ref": "#/definitions/742a2/full"
            }
          }
        }
      }
    },
    "210d5": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "vtesttree.yaml",
        "description": "Vector test execution tree description",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "version"
        ],
        "properties": {
          "version": {
            "$ref": "#/definitions/d0889/full"
          },
          "test-tree": {
            "$ref": "#/definitions/d773c/full"
          }
        }
      }
    },
    "742a2": {
      "full": {
        "description": "Element of a test tree or test fixture.",
        "oneOf": [
          {
            "$ref": "#/definitions/68a46/full"
          },
          {
            "$ref": "#/definitions/ea7d2/full"
          },
          {
            "$ref": "#/definitions/d6e89/full"
          }
        ]
      }
    },
    "68a46": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAPL test case",
        "description": "Definition of a call to a CAPL test case.",
        "type": "object",
        "required": [
          "capl-test-case"
        ],
        "additionalProperties": false,
        "properties": {
          "capl-test-case": {
            "type": "string",
            "description": "Function name of the CAPL test case."
          },
          "id": {
            "type": "string",
            "description": "Identifier of the CAPL test case."
          },
          "title": {
            "type": "string",
            "description": "Title of the CAPL test case."
          },
          "description": {
            "type": "string",
            "description": "Description of the CAPL test case."
          },
          "params": {
            "$ref": "#/definitions/2283a/full"
          }
        }
      }
    },
    "2283a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAPL parameter list",
        "description": "List of parameter values for a CAPL test case or CAPL test sequence.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/86925/full"
        }
      }
    },
    "86925": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAPL parameter",
        "description": "Parameter value for a CAPL test case or CAPL test sequence.",
        "anyOf": [
          {
            "title": "Numeric Value",
            "type": "number"
          },
          {
            "title": "String Value",
            "type": "string"
          }
        ]
      }
    }
  }
}
