{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/continuous-delivery-foundation/json-schema/continuous-delivery-foundation-model34-schema.json",
  "title": "Model34",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/continuous-delivery-foundation-templates-api-openapi.yml#/components/schemas/Model34",
  "type": "array",
  "items": {
    "$ref": "#/$defs/TemplateTag"
  },
  "$defs": {
    "TemplateTag": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "description": "Identifier of this template tag",
          "x-constraint": {
            "sign": "positive"
          }
        },
        "createTime": {
          "type": "string",
          "description": "When this template tag was created",
          "maxLength": 32,
          "x-format": {
            "isoDate": true
          }
        },
        "namespace": {
          "type": "string",
          "description": "Namespace of the Template",
          "maxLength": 64,
          "pattern": "^[\\w-]+$"
        },
        "name": {
          "type": "string",
          "description": "Template name",
          "maxLength": 64
        },
        "tag": {
          "type": "string",
          "description": "Name of the Template Tag",
          "maxLength": 30,
          "pattern": "^[a-zA-Z][\\w-.]+$"
        },
        "version": {
          "type": "string",
          "description": "Exact version of the Template",
          "maxLength": 16,
          "pattern": "^(\\d+)\\.(\\d+)\\.(\\d+)$"
        },
        "templateType": {
          "$ref": "#/$defs/templateType"
        }
      },
      "required": [
        "templateType"
      ]
    },
    "templateType": {
      "type": "string",
      "description": "Template Type",
      "default": "JOB",
      "enum": [
        "JOB",
        "PIPELINE"
      ],
      "maxLength": 16
    }
  }
}