{
  "title": "DeploymentDiagram",
  "type": "object",
  "properties": {
    "type": {
      "const": "DeploymentDiagram",
      "description": "Type of the diagram.",
      "title": "Type",
      "type": "string"
    },
    "title": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional diagram title.",
      "title": "Title"
    },
    "layouts": {
      "description": "Relative layout constraints between elements.",
      "items": {
        "$ref": "#/$defs/LayoutSchema"
      },
      "title": "Layouts",
      "type": "array"
    },
    "render_options": {
      "anyOf": [
        {
          "$ref": "#/$defs/RenderOptionsSchema"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional renderer-specific options"
    },
    "elements": {
      "description": "Top-level elements.",
      "items": {
        "anyOf": [
          {
            "$ref": "#/$defs/PersonSchema"
          },
          {
            "$ref": "#/$defs/PersonExtSchema"
          },
          {
            "$ref": "#/$defs/SystemSchema"
          },
          {
            "$ref": "#/$defs/SystemExtSchema"
          },
          {
            "$ref": "#/$defs/SystemDbSchema"
          },
          {
            "$ref": "#/$defs/SystemDbExtSchema"
          },
          {
            "$ref": "#/$defs/SystemQueueSchema"
          },
          {
            "$ref": "#/$defs/SystemQueueExtSchema"
          },
          {
            "$ref": "#/$defs/ContainerSchema"
          },
          {
            "$ref": "#/$defs/ContainerExtSchema"
          },
          {
            "$ref": "#/$defs/ContainerDbSchema"
          },
          {
            "$ref": "#/$defs/ContainerDbExtSchema"
          },
          {
            "$ref": "#/$defs/ContainerQueueSchema"
          },
          {
            "$ref": "#/$defs/ContainerQueueExtSchema"
          }
        ]
      },
      "title": "Elements",
      "type": "array"
    },
    "boundaries": {
      "description": "Top-level boundaries.",
      "items": {
        "anyOf": [
          {
            "$ref": "#/$defs/NodeSchema"
          },
          {
            "$ref": "#/$defs/NodeLeftSchema"
          },
          {
            "$ref": "#/$defs/NodeRightSchema"
          },
          {
            "$ref": "#/$defs/DeploymentNodeSchema"
          },
          {
            "$ref": "#/$defs/DeploymentNodeLeftSchema"
          },
          {
            "$ref": "#/$defs/DeploymentNodeRightSchema"
          }
        ]
      },
      "title": "Boundaries",
      "type": "array"
    },
    "relationships": {
      "description": "Top-level relationships.",
      "items": {
        "$ref": "#/$defs/RelationshipSchema"
      },
      "title": "Relationships",
      "type": "array"
    }
  },
  "required": [
    "type"
  ],
  "examples": [
    {
      "type": "DeploymentDiagram",
      "title": "Web App Deployment",
      "elements": [
        {
          "alias": "user",
          "description": "Uses the web application.",
          "label": "User",
          "tags": [
            "person"
          ],
          "type": "Person"
        }
      ],
      "boundaries": [
        {
          "alias": "web_node",
          "boundaries": [],
          "description": "Hosts the frontend application.",
          "elements": [
            {
              "alias": "web_app",
              "description": "Customer-facing web application.",
              "label": "Web App",
              "tags": [
                "frontend"
              ],
              "technology": "Next.js",
              "type": "Container"
            }
          ],
          "label": "Web Server",
          "relationships": [],
          "sprite": "server",
          "stereotype": "Compute Node",
          "tags": [
            "runtime_node"
          ],
          "type": "DeploymentNodeLeft"
        },
        {
          "alias": "db_node",
          "boundaries": [],
          "description": "Hosts the application database.",
          "elements": [
            {
              "alias": "app_db",
              "description": "Stores application data.",
              "label": "App Database",
              "tags": [
                "database"
              ],
              "technology": "PostgreSQL",
              "type": "ContainerDb"
            }
          ],
          "label": "Database Server",
          "relationships": [],
          "sprite": "database",
          "stereotype": "Data Node",
          "tags": [
            "data_node"
          ],
          "type": "DeploymentNodeRight"
        }
      ],
      "relationships": [
        {
          "from": "user",
          "label": "Uses",
          "tags": [
            "encrypted_traffic"
          ],
          "technology": "HTTPS",
          "to": "web_node",
          "type": "REL"
        },
        {
          "from": "web_node",
          "label": "Reads and writes",
          "tags": [
            "encrypted_traffic"
          ],
          "technology": "TLS / SQL",
          "to": "db_node",
          "type": "REL"
        }
      ],
      "layouts": [
        {
          "from": "user",
          "to": "web_node",
          "type": "LAY_R"
        },
        {
          "from": "web_node",
          "to": "db_node",
          "type": "LAY_R"
        }
      ],
      "render_options": {
        "plantuml": {
          "layout": "LAYOUT_LEFT_RIGHT",
          "tags": [
            {
              "legend_text": "End user",
              "sprite": "user",
              "tag_stereo": "person",
              "type": "PersonTag"
            },
            {
              "legend_text": "Frontend container",
              "sprite": "browser",
              "tag_stereo": "frontend",
              "type": "ContainerTag"
            },
            {
              "legend_text": "Database container",
              "sprite": "database",
              "tag_stereo": "database",
              "type": "ContainerTag"
            },
            {
              "legend_text": "Runtime deployment node",
              "shape": "RoundedBoxShape",
              "sprite": "server",
              "tag_stereo": "runtime_node",
              "technology": "Runtime",
              "type": "NodeTag"
            },
            {
              "legend_text": "Data deployment node",
              "shape": "RoundedBoxShape",
              "sprite": "database",
              "tag_stereo": "data_node",
              "technology": "Data",
              "type": "NodeTag"
            },
            {
              "legend_text": "Encrypted communication",
              "sprite": "lock",
              "tag_stereo": "encrypted_traffic",
              "technology": "TLS",
              "type": "RelTag"
            }
          ]
        }
      }
    },
    {
      "type": "DeploymentDiagram",
      "title": "Online Shop - Production Deployment",
      "elements": [
        {
          "alias": "customer",
          "description": "Uses the online shop through a browser.",
          "label": "Customer",
          "tags": [
            "person"
          ],
          "type": "Person"
        },
        {
          "alias": "payment_gateway",
          "description": "External service that processes card payments.",
          "label": "Payment Gateway",
          "tags": [
            "external_service"
          ],
          "technology": "HTTPS API",
          "type": "ContainerExt"
        }
      ],
      "boundaries": [
        {
          "alias": "aws_prod",
          "boundaries": [
            {
              "alias": "public_subnet",
              "boundaries": [
                {
                  "alias": "alb",
                  "boundaries": [],
                  "description": "Terminates TLS and routes requests to the web tier.",
                  "elements": [
                    {
                      "alias": "web_app",
                      "description": "Serves the storefront UI.",
                      "label": "Web Application",
                      "tags": [
                        "frontend"
                      ],
                      "technology": "Next.js",
                      "type": "Container"
                    }
                  ],
                  "label": "Application Load Balancer",
                  "relationships": [],
                  "sprite": "router",
                  "stereotype": "Ingress",
                  "tags": [
                    "edge_node"
                  ],
                  "type": "DeploymentNodeLeft"
                }
              ],
              "description": "Internet-facing network segment.",
              "elements": [],
              "label": "Public Subnet",
              "relationships": [],
              "sprite": "network",
              "stereotype": "Network Segment",
              "tags": [
                "public_network"
              ],
              "type": "NodeLeft"
            },
            {
              "alias": "private_subnet",
              "boundaries": [
                {
                  "alias": "app_cluster",
                  "boundaries": [],
                  "description": "Runs backend services and asynchronous workers.",
                  "elements": [
                    {
                      "alias": "backend_api",
                      "description": "Handles catalog, checkout, and order processing.",
                      "label": "Backend API",
                      "tags": [
                        "backend"
                      ],
                      "technology": "Python / FastAPI",
                      "type": "Container"
                    },
                    {
                      "alias": "order_events",
                      "description": "Internal asynchronous event stream.",
                      "label": "Order Events",
                      "tags": [
                        "message_bus"
                      ],
                      "technology": "Kafka",
                      "type": "ContainerQueue"
                    }
                  ],
                  "label": "Kubernetes Cluster",
                  "properties": {
                    "properties": [
                      [
                        "Platform",
                        "EKS"
                      ],
                      [
                        "Autoscaling",
                        "Enabled"
                      ]
                    ]
                  },
                  "relationships": [],
                  "sprite": "server",
                  "stereotype": "Runtime Environment",
                  "tags": [
                    "runtime_node"
                  ],
                  "type": "DeploymentNode"
                },
                {
                  "alias": "db_service",
                  "boundaries": [],
                  "description": "Managed relational database service.",
                  "elements": [
                    {
                      "alias": "orders_db",
                      "description": "Stores orders, payments, and fulfillment data.",
                      "label": "Orders Database",
                      "tags": [
                        "database"
                      ],
                      "technology": "PostgreSQL",
                      "type": "ContainerDb"
                    }
                  ],
                  "label": "Managed PostgreSQL",
                  "properties": {
                    "properties": [
                      [
                        "Service",
                        "RDS"
                      ],
                      [
                        "Mode",
                        "Multi-AZ"
                      ]
                    ]
                  },
                  "relationships": [],
                  "sprite": "database",
                  "stereotype": "Data Platform",
                  "tags": [
                    "data_node"
                  ],
                  "type": "DeploymentNodeRight"
                }
              ],
              "description": "Internal network segment for application and data services.",
              "elements": [],
              "label": "Private Subnet",
              "relationships": [],
              "sprite": "network",
              "stereotype": "Network Segment",
              "tags": [
                "private_network"
              ],
              "type": "NodeRight"
            }
          ],
          "description": "Production cloud account for the online shop.",
          "elements": [],
          "label": "AWS Production Account",
          "properties": {
            "properties": [
              [
                "Environment",
                "Production"
              ],
              [
                "Region",
                "eu-central-1"
              ]
            ]
          },
          "relationships": [],
          "sprite": "cloud",
          "stereotype": "Cloud Account",
          "tags": [
            "cloud_account"
          ],
          "type": "Node"
        }
      ],
      "relationships": [
        {
          "from": "customer",
          "label": "Uses",
          "tags": [
            "encrypted_traffic"
          ],
          "technology": "HTTPS",
          "to": "alb",
          "type": "REL"
        },
        {
          "from": "alb",
          "label": "Routes traffic to",
          "tags": [
            "encrypted_traffic"
          ],
          "technology": "HTTPS",
          "to": "app_cluster",
          "type": "REL"
        },
        {
          "from": "app_cluster",
          "label": "Reads and writes",
          "tags": [
            "encrypted_traffic"
          ],
          "technology": "TLS / SQL",
          "to": "db_service",
          "type": "REL"
        },
        {
          "from": "app_cluster",
          "label": "Calls",
          "tags": [
            "encrypted_traffic"
          ],
          "technology": "HTTPS/JSON",
          "to": "payment_gateway",
          "type": "REL"
        },
        {
          "from": "backend_api",
          "label": "Publishes events to",
          "tags": [
            "async_flow"
          ],
          "technology": "Kafka",
          "to": "order_events",
          "type": "REL"
        }
      ],
      "layouts": [
        {
          "from": "customer",
          "to": "alb",
          "type": "LAY_R"
        },
        {
          "from": "alb",
          "to": "app_cluster",
          "type": "LAY_R"
        },
        {
          "from": "app_cluster",
          "to": "db_service",
          "type": "LAY_D"
        },
        {
          "from": "app_cluster",
          "to": "payment_gateway",
          "type": "LAY_R"
        }
      ],
      "render_options": {
        "plantuml": {
          "hide_person_sprite": false,
          "hide_stereotype": false,
          "layout": "LAYOUT_LEFT_RIGHT",
          "layout_with_legend": true,
          "legend_title": "Deployment Legend",
          "show_legend": {
            "details": "Normal",
            "hide_stereotype": false
          },
          "show_person_outline": true,
          "show_person_sprite": {
            "alias": "person"
          },
          "styles": [
            {
              "line_color": "#546e7a",
              "text_color": "#37474f",
              "type": "RelStyle"
            }
          ],
          "tags": [
            {
              "bg_color": "#e8f5e9",
              "border_color": "#66bb6a",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#1b5e20",
              "legend_text": "End user",
              "sprite": "user",
              "tag_stereo": "person",
              "type": "PersonTag"
            },
            {
              "bg_color": "#f3e5f5",
              "border_color": "#ab47bc",
              "border_style": "DashedLine",
              "border_thickness": "2",
              "font_color": "#4a148c",
              "legend_text": "External service",
              "sprite": "cloud",
              "tag_stereo": "external_service",
              "type": "ExternalContainerTag"
            },
            {
              "bg_color": "#e3f2fd",
              "border_color": "#42a5f5",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#0d47a1",
              "legend_text": "Frontend container",
              "sprite": "browser",
              "tag_stereo": "frontend",
              "type": "ContainerTag"
            },
            {
              "bg_color": "#ede7f6",
              "border_color": "#7e57c2",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#311b92",
              "legend_text": "Backend container",
              "sprite": "server",
              "tag_stereo": "backend",
              "type": "ContainerTag"
            },
            {
              "bg_color": "#fff3e0",
              "border_color": "#fb8c00",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#e65100",
              "legend_text": "Database container",
              "sprite": "database",
              "tag_stereo": "database",
              "type": "ContainerTag"
            },
            {
              "bg_color": "#fce4ec",
              "border_color": "#ec407a",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#880e4f",
              "legend_text": "Message queue / stream",
              "sprite": "queue",
              "tag_stereo": "message_bus",
              "type": "ContainerTag"
            },
            {
              "bg_color": "#eef6ff",
              "border_color": "#64b5f6",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#0d47a1",
              "legend_sprite": "cloud",
              "legend_text": "Cloud account boundary",
              "shadowing": true,
              "shape": "RoundedBoxShape",
              "sprite": "cloud",
              "tag_stereo": "cloud_account",
              "technology": "Infrastructure",
              "type": "NodeTag"
            },
            {
              "bg_color": "#f1f8e9",
              "border_color": "#8bc34a",
              "border_style": "SolidLine",
              "border_thickness": "1",
              "font_color": "#33691e",
              "legend_sprite": "network",
              "legend_text": "Public network zone",
              "shape": "RoundedBoxShape",
              "sprite": "network",
              "tag_stereo": "public_network",
              "technology": "DMZ",
              "type": "NodeTag"
            },
            {
              "bg_color": "#fbe9e7",
              "border_color": "#ff8a65",
              "border_style": "SolidLine",
              "border_thickness": "1",
              "font_color": "#bf360c",
              "legend_sprite": "network",
              "legend_text": "Private network zone",
              "shape": "RoundedBoxShape",
              "sprite": "network",
              "tag_stereo": "private_network",
              "technology": "Internal",
              "type": "NodeTag"
            },
            {
              "bg_color": "#e1f5fe",
              "border_color": "#29b6f6",
              "border_style": "BoldLine",
              "border_thickness": "2",
              "font_color": "#01579b",
              "legend_sprite": "router",
              "legend_text": "Ingress deployment node",
              "shape": "RoundedBoxShape",
              "sprite": "router",
              "tag_stereo": "edge_node",
              "technology": "Ingress",
              "type": "NodeTag"
            },
            {
              "bg_color": "#e8f5e9",
              "border_color": "#66bb6a",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#1b5e20",
              "legend_sprite": "server",
              "legend_text": "Runtime deployment node",
              "shadowing": true,
              "shape": "RoundedBoxShape",
              "sprite": "server",
              "tag_stereo": "runtime_node",
              "technology": "Runtime",
              "type": "NodeTag"
            },
            {
              "bg_color": "#fff8e1",
              "border_color": "#ffb300",
              "border_style": "SolidLine",
              "border_thickness": "2",
              "font_color": "#ff6f00",
              "legend_sprite": "database",
              "legend_text": "Data deployment node",
              "shape": "RoundedBoxShape",
              "sprite": "database",
              "tag_stereo": "data_node",
              "technology": "Data Platform",
              "type": "NodeTag"
            },
            {
              "legend_sprite": "lock",
              "legend_text": "Encrypted communication",
              "line_color": "#1976d2",
              "line_style": "SolidLine",
              "line_thickness": "2",
              "sprite": "lock",
              "tag_stereo": "encrypted_traffic",
              "technology": "TLS",
              "text_color": "#0d47a1",
              "type": "RelTag"
            },
            {
              "legend_sprite": "queue",
              "legend_text": "Asynchronous event flow",
              "line_color": "#8e24aa",
              "line_style": "DashedLine",
              "line_thickness": "2",
              "sprite": "queue",
              "tag_stereo": "async_flow",
              "technology": "Kafka",
              "text_color": "#4a148c",
              "type": "RelTag"
            }
          ]
        }
      }
    }
  ],
  "$defs": {
    "BoundaryStyleSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "BoundaryStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "element_name": {
          "description": "C4 element type to style (e.g. 'person', 'system', 'container'). This applies to all elements of the given type, not a specific instance.",
          "title": "Element Name",
          "type": "string"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font/text color.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line color.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shape macro used for rendering."
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon applied to the element.",
          "title": "Sprite"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend label for this styled element.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend sprite for this styled element.",
          "title": "Legend Sprite"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "element_name"
      ],
      "title": "BoundaryStyleSchema",
      "type": "object"
    },
    "BoundaryTagSchema": {
      "properties": {
        "type": {
          "const": "BoundaryTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used for labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the element border.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the element border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "BoundaryTagSchema",
      "type": "object"
    },
    "ComponentTagSchema": {
      "properties": {
        "type": {
          "const": "ComponentTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used for labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the element border.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the element border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "ComponentTagSchema",
      "type": "object"
    },
    "ContainerBoundaryStyleSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "ContainerBoundaryStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "element_name": {
          "description": "C4 element type to style (e.g. 'person', 'system', 'container'). This applies to all elements of the given type, not a specific instance.",
          "title": "Element Name",
          "type": "string"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font/text color.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line color.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shape macro used for rendering."
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon applied to the element.",
          "title": "Sprite"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend label for this styled element.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend sprite for this styled element.",
          "title": "Legend Sprite"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "element_name"
      ],
      "title": "ContainerBoundaryStyleSchema",
      "type": "object"
    },
    "ContainerDbExtSchema": {
      "examples": [
        {
          "alias": "fraud_vendor_db",
          "description": "External datastore used to look up fraud signals.",
          "label": "Fraud Vendor Database",
          "link": "https://vendor.example.com",
          "properties": {
            "properties": [
              [
                "Provider",
                "FraudCo"
              ],
              [
                "Access",
                "Read-only"
              ]
            ]
          },
          "sprite": "database",
          "tags": [
            "container",
            "database",
            "external"
          ],
          "technology": "Vendor DB",
          "type": "ContainerDbExt"
        }
      ],
      "properties": {
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional technology.",
          "title": "Technology"
        },
        "type": {
          "const": "ContainerDbExt",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "ContainerDbExt",
      "type": "object"
    },
    "ContainerDbSchema": {
      "examples": [
        {
          "alias": "catalog_db",
          "description": "Stores products, categories, and pricing data.",
          "label": "Catalog Database",
          "link": "https://db-admin.example.com/catalog",
          "properties": {
            "properties": [
              [
                "Engine",
                "PostgreSQL 16"
              ],
              [
                "Replication",
                "Streaming"
              ]
            ]
          },
          "sprite": "database",
          "tags": [
            "container",
            "database",
            "internal"
          ],
          "technology": "PostgreSQL",
          "type": "ContainerDb"
        }
      ],
      "properties": {
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional technology.",
          "title": "Technology"
        },
        "type": {
          "const": "ContainerDb",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "ContainerDb",
      "type": "object"
    },
    "ContainerExtSchema": {
      "examples": [
        {
          "alias": "recommendation_api",
          "base_shape": "RoundedBox",
          "description": "External API that returns personalized product recommendations.",
          "label": "Recommendation Engine API",
          "link": "https://partner.example.com/recommendations",
          "properties": {
            "properties": [
              [
                "SLA",
                "99.9%"
              ],
              [
                "Owner",
                "Partner"
              ]
            ]
          },
          "sprite": "cloud",
          "tags": [
            "container",
            "external",
            "api"
          ],
          "technology": "REST API",
          "type": "ContainerExt"
        }
      ],
      "properties": {
        "base_shape": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional base shape override (supported by some element classes).",
          "title": "Base Shape"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional technology.",
          "title": "Technology"
        },
        "type": {
          "const": "ContainerExt",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "ContainerExt",
      "type": "object"
    },
    "ContainerQueueExtSchema": {
      "examples": [
        {
          "alias": "partner_fulfillment_topic",
          "description": "External topic with fulfillment status updates.",
          "label": "Partner Fulfillment Topic",
          "link": "https://partner.example.com/events",
          "properties": {
            "properties": [
              [
                "Broker",
                "Managed Kafka"
              ],
              [
                "Format",
                "Avro"
              ]
            ]
          },
          "sprite": "queue",
          "tags": [
            "container",
            "queue",
            "external"
          ],
          "technology": "Kafka",
          "type": "ContainerQueueExt"
        }
      ],
      "properties": {
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional technology.",
          "title": "Technology"
        },
        "type": {
          "const": "ContainerQueueExt",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "ContainerQueueExt",
      "type": "object"
    },
    "ContainerQueueSchema": {
      "examples": [
        {
          "alias": "payment_events_queue",
          "description": "Carries asynchronous payment status updates.",
          "label": "Payment Events Queue",
          "link": "https://ops.example.com/rabbitmq",
          "properties": {
            "properties": [
              [
                "Durable",
                "true"
              ],
              [
                "DLQ",
                "payment_events_dlq"
              ]
            ]
          },
          "sprite": "queue",
          "tags": [
            "container",
            "queue",
            "internal"
          ],
          "technology": "RabbitMQ",
          "type": "ContainerQueue"
        }
      ],
      "properties": {
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional technology.",
          "title": "Technology"
        },
        "type": {
          "const": "ContainerQueue",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "ContainerQueue",
      "type": "object"
    },
    "ContainerSchema": {
      "examples": [
        {
          "alias": "backend_api",
          "base_shape": "RoundedBox",
          "description": "Main backend API serving web and mobile clients.",
          "label": "Backend API",
          "link": "https://api.example.com",
          "properties": {
            "properties": [
              [
                "Runtime",
                "Python 3.12"
              ],
              [
                "Team",
                "Platform"
              ]
            ]
          },
          "sprite": "server",
          "tags": [
            "container",
            "api",
            "core"
          ],
          "technology": "Python / FastAPI",
          "type": "Container"
        }
      ],
      "properties": {
        "base_shape": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional base shape override (supported by some element classes).",
          "title": "Base Shape"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional technology.",
          "title": "Technology"
        },
        "type": {
          "const": "Container",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "Container",
      "type": "object"
    },
    "ContainerTagSchema": {
      "properties": {
        "type": {
          "const": "ContainerTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used for labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the element border.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the element border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "ContainerTagSchema",
      "type": "object"
    },
    "DeploymentNodeLeftSchema": {
      "examples": [
        {
          "alias": "edge_lb",
          "boundaries": [],
          "description": "Receives public HTTPS traffic and forwards requests to the cluster.",
          "elements": [],
          "label": "Edge Load Balancer",
          "properties": {
            "properties": [
              [
                "Type",
                "Application Load Balancer"
              ],
              [
                "TLS",
                "Enabled"
              ]
            ]
          },
          "relationships": [],
          "sprite": "router",
          "stereotype": "Ingress",
          "tags": [
            "deployment_node",
            "edge"
          ],
          "type": "DeploymentNodeLeft"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "relationships": {
          "description": "Top-level relationships.",
          "items": {
            "$ref": "#/$defs/RelationshipSchema"
          },
          "title": "Relationships",
          "type": "array"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite name to visually represent the node.",
          "title": "Sprite"
        },
        "elements": {
          "description": "Top-level elements.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/PersonSchema"
              },
              {
                "$ref": "#/$defs/PersonExtSchema"
              },
              {
                "$ref": "#/$defs/SystemSchema"
              },
              {
                "$ref": "#/$defs/SystemExtSchema"
              },
              {
                "$ref": "#/$defs/SystemDbSchema"
              },
              {
                "$ref": "#/$defs/SystemDbExtSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerSchema"
              },
              {
                "$ref": "#/$defs/ContainerExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueExtSchema"
              }
            ]
          },
          "title": "Elements",
          "type": "array"
        },
        "boundaries": {
          "description": "Top-level boundaries.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/NodeSchema"
              },
              {
                "$ref": "#/$defs/NodeLeftSchema"
              },
              {
                "$ref": "#/$defs/NodeRightSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeLeftSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeRightSchema"
              }
            ]
          },
          "title": "Boundaries",
          "type": "array"
        },
        "type": {
          "const": "DeploymentNodeLeft",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "DeploymentNodeLeft",
      "type": "object"
    },
    "DeploymentNodeRightSchema": {
      "examples": [
        {
          "alias": "managed_db_service",
          "boundaries": [],
          "description": "Managed relational database deployment for transactional workloads.",
          "elements": [],
          "label": "Managed Database Service",
          "properties": {
            "properties": [
              [
                "Engine",
                "PostgreSQL"
              ],
              [
                "Availability",
                "Multi-AZ"
              ]
            ]
          },
          "relationships": [],
          "sprite": "database",
          "stereotype": "Data Platform",
          "tags": [
            "deployment_node",
            "database"
          ],
          "type": "DeploymentNodeRight"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "relationships": {
          "description": "Top-level relationships.",
          "items": {
            "$ref": "#/$defs/RelationshipSchema"
          },
          "title": "Relationships",
          "type": "array"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite name to visually represent the node.",
          "title": "Sprite"
        },
        "elements": {
          "description": "Top-level elements.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/PersonSchema"
              },
              {
                "$ref": "#/$defs/PersonExtSchema"
              },
              {
                "$ref": "#/$defs/SystemSchema"
              },
              {
                "$ref": "#/$defs/SystemExtSchema"
              },
              {
                "$ref": "#/$defs/SystemDbSchema"
              },
              {
                "$ref": "#/$defs/SystemDbExtSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerSchema"
              },
              {
                "$ref": "#/$defs/ContainerExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueExtSchema"
              }
            ]
          },
          "title": "Elements",
          "type": "array"
        },
        "boundaries": {
          "description": "Top-level boundaries.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/NodeSchema"
              },
              {
                "$ref": "#/$defs/NodeLeftSchema"
              },
              {
                "$ref": "#/$defs/NodeRightSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeLeftSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeRightSchema"
              }
            ]
          },
          "title": "Boundaries",
          "type": "array"
        },
        "type": {
          "const": "DeploymentNodeRight",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "DeploymentNodeRight",
      "type": "object"
    },
    "DeploymentNodeSchema": {
      "examples": [
        {
          "alias": "k8s_cluster",
          "boundaries": [],
          "description": "Primary runtime cluster for web and API workloads.",
          "elements": [],
          "label": "Kubernetes Cluster",
          "link": "https://kubernetes.io/",
          "properties": {
            "properties": [
              [
                "Platform",
                "EKS"
              ],
              [
                "Region",
                "eu-central-1"
              ]
            ]
          },
          "relationships": [],
          "sprite": "server",
          "stereotype": "Runtime Environment",
          "tags": [
            "deployment_node",
            "compute"
          ],
          "type": "DeploymentNode"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "relationships": {
          "description": "Top-level relationships.",
          "items": {
            "$ref": "#/$defs/RelationshipSchema"
          },
          "title": "Relationships",
          "type": "array"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite name to visually represent the node.",
          "title": "Sprite"
        },
        "elements": {
          "description": "Top-level elements.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/PersonSchema"
              },
              {
                "$ref": "#/$defs/PersonExtSchema"
              },
              {
                "$ref": "#/$defs/SystemSchema"
              },
              {
                "$ref": "#/$defs/SystemExtSchema"
              },
              {
                "$ref": "#/$defs/SystemDbSchema"
              },
              {
                "$ref": "#/$defs/SystemDbExtSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerSchema"
              },
              {
                "$ref": "#/$defs/ContainerExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueExtSchema"
              }
            ]
          },
          "title": "Elements",
          "type": "array"
        },
        "boundaries": {
          "description": "Top-level boundaries.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/NodeSchema"
              },
              {
                "$ref": "#/$defs/NodeLeftSchema"
              },
              {
                "$ref": "#/$defs/NodeRightSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeLeftSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeRightSchema"
              }
            ]
          },
          "title": "Boundaries",
          "type": "array"
        },
        "type": {
          "const": "DeploymentNode",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "DeploymentNode",
      "type": "object"
    },
    "Details": {
      "description": "Defines PlantUML legend details.",
      "enum": [
        "Small",
        "Normal",
        "None"
      ],
      "title": "Details",
      "type": "string"
    },
    "DiagramElementPropertiesSchema": {
      "properties": {
        "show_header": {
          "default": true,
          "description": "Whether to display the header row.",
          "title": "Show Header",
          "type": "boolean"
        },
        "header": {
          "default": [
            "Property",
            "Value"
          ],
          "description": "Header columns.",
          "items": {
            "type": "string"
          },
          "minItems": 1,
          "title": "Header",
          "type": "array"
        },
        "properties": {
          "type": "array",
          "items": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": "List of rows (each row is a list of string values).",
          "title": "Properties"
        }
      },
      "required": [
        "properties"
      ],
      "title": "DiagramElementPropertiesSchema",
      "type": "object"
    },
    "DiagramLayout": {
      "description": "Defines layout direction options for a PlantUML diagram.\n\nThis enum controls how diagram elements are arranged visually using\npredefined PlantUML layout macros.",
      "enum": [
        "LAYOUT_TOP_DOWN",
        "LAYOUT_LEFT_RIGHT",
        "LAYOUT_LANDSCAPE"
      ],
      "title": "DiagramLayout",
      "type": "string"
    },
    "ElementStyleSchema": {
      "properties": {
        "type": {
          "const": "ElementStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "element_name": {
          "description": "C4 element type to style (e.g. 'person', 'system', 'container'). This applies to all elements of the given type, not a specific instance.",
          "title": "Element Name",
          "type": "string"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font/text color.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line color.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shape macro used for rendering."
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon applied to the element.",
          "title": "Sprite"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend label for this styled element.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend sprite for this styled element.",
          "title": "Legend Sprite"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "element_name"
      ],
      "title": "ElementStyleSchema",
      "type": "object"
    },
    "ElementTagSchema": {
      "properties": {
        "type": {
          "const": "ElementTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used for labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the element border.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the element border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "ElementTagSchema",
      "type": "object"
    },
    "EnterpriseBoundaryStyleSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "EnterpriseBoundaryStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "element_name": {
          "description": "C4 element type to style (e.g. 'person', 'system', 'container'). This applies to all elements of the given type, not a specific instance.",
          "title": "Element Name",
          "type": "string"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font/text color.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line color.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shape macro used for rendering."
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon applied to the element.",
          "title": "Sprite"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend label for this styled element.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend sprite for this styled element.",
          "title": "Legend Sprite"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "element_name"
      ],
      "title": "EnterpriseBoundaryStyleSchema",
      "type": "object"
    },
    "ExternalComponentTagSchema": {
      "properties": {
        "type": {
          "const": "ExternalComponentTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used for labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the element border.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the element border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "ExternalComponentTagSchema",
      "type": "object"
    },
    "ExternalContainerTagSchema": {
      "properties": {
        "type": {
          "const": "ExternalContainerTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used for labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the element border.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the element border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "ExternalContainerTagSchema",
      "type": "object"
    },
    "ExternalPersonTagSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "ExternalPersonTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the person symbol.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used in the label.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border color of the person symbol.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the person border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "ExternalPersonTagSchema",
      "type": "object"
    },
    "ExternalSystemTagSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "ExternalSystemTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the system element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used in system labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border color of the system element.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the system border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "ExternalSystemTagSchema",
      "type": "object"
    },
    "LayoutSchema": {
      "properties": {
        "type": {
          "$ref": "#/$defs/LayoutType",
          "description": "Type of the layout."
        },
        "from": {
          "description": "The source element alias (or unique label).",
          "minLength": 1,
          "title": "From",
          "type": "string"
        },
        "to": {
          "description": "The destination element alias (or unique label).",
          "minLength": 1,
          "title": "To",
          "type": "string"
        }
      },
      "required": [
        "type",
        "from",
        "to"
      ],
      "title": "Layout",
      "type": "object"
    },
    "LayoutType": {
      "description": "Enum representing layout modifiers for diagram elements.",
      "enum": [
        "LAY_D",
        "LAY_DOWN",
        "LAY_U",
        "LAY_UP",
        "LAY_R",
        "LAY_RIGHT",
        "LAY_L",
        "LAY_LEFT"
      ],
      "title": "LayoutType",
      "type": "string"
    },
    "LineStyle": {
      "description": "Defines PlantUML line style.",
      "enum": [
        "DashedLine",
        "DottedLine",
        "BoldLine",
        "SolidLine"
      ],
      "title": "LineStyle",
      "type": "string"
    },
    "MermaidElementStyleSchema": {
      "properties": {
        "type": {
          "const": "ElementStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "element": {
          "description": "Alias of the element to style.",
          "title": "Element",
          "type": "string"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font/text color.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line color.",
          "title": "Border Color"
        }
      },
      "required": [
        "type",
        "element"
      ],
      "title": "MermaidElementStyleSchema",
      "type": "object"
    },
    "MermaidRelStyleSchema": {
      "properties": {
        "type": {
          "const": "RelStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "from_element": {
          "description": "Alias of the source element to style.",
          "title": "From Element",
          "type": "string"
        },
        "to_element": {
          "description": "Alias of the target element to style.",
          "title": "To Element",
          "type": "string"
        },
        "text_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the relationship label text.",
          "title": "Text Color"
        },
        "line_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the relationship line.",
          "title": "Line Color"
        },
        "offset_x": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional horizontal offset for the label position.",
          "title": "Offset X"
        },
        "offset_y": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional horizontal offset for the label position.",
          "title": "Offset Y"
        }
      },
      "required": [
        "type",
        "from_element",
        "to_element"
      ],
      "title": "MermaidRelStyleSchema",
      "type": "object"
    },
    "MermaidRenderOptionsSchema": {
      "properties": {
        "styles": {
          "description": "List of style update macro configurations.",
          "items": {
            "discriminator": {
              "mapping": {
                "ElementStyle": "#/$defs/MermaidElementStyleSchema",
                "RelStyle": "#/$defs/MermaidRelStyleSchema"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/$defs/MermaidElementStyleSchema"
              },
              {
                "$ref": "#/$defs/MermaidRelStyleSchema"
              }
            ]
          },
          "title": "Styles",
          "type": "array"
        },
        "update_layout_config": {
          "anyOf": [
            {
              "$ref": "#/$defs/UpdateLayoutConfigSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Configuration for updating default layout behavior."
        }
      },
      "title": "MermaidRenderOptionsSchema",
      "type": "object"
    },
    "NodeLeftSchema": {
      "examples": [
        {
          "alias": "public_network",
          "boundaries": [],
          "description": "Ingress-facing network segment for public endpoints.",
          "elements": [],
          "label": "Public Network",
          "properties": {
            "properties": [
              [
                "Exposure",
                "Internet-facing"
              ],
              [
                "Zone",
                "DMZ"
              ]
            ]
          },
          "relationships": [],
          "sprite": "network",
          "stereotype": "Network Segment",
          "tags": [
            "node",
            "network"
          ],
          "type": "NodeLeft"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "relationships": {
          "description": "Top-level relationships.",
          "items": {
            "$ref": "#/$defs/RelationshipSchema"
          },
          "title": "Relationships",
          "type": "array"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite name to visually represent the node.",
          "title": "Sprite"
        },
        "elements": {
          "description": "Top-level elements.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/PersonSchema"
              },
              {
                "$ref": "#/$defs/PersonExtSchema"
              },
              {
                "$ref": "#/$defs/SystemSchema"
              },
              {
                "$ref": "#/$defs/SystemExtSchema"
              },
              {
                "$ref": "#/$defs/SystemDbSchema"
              },
              {
                "$ref": "#/$defs/SystemDbExtSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerSchema"
              },
              {
                "$ref": "#/$defs/ContainerExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueExtSchema"
              }
            ]
          },
          "title": "Elements",
          "type": "array"
        },
        "boundaries": {
          "description": "Top-level boundaries.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/NodeSchema"
              },
              {
                "$ref": "#/$defs/NodeLeftSchema"
              },
              {
                "$ref": "#/$defs/NodeRightSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeLeftSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeRightSchema"
              }
            ]
          },
          "title": "Boundaries",
          "type": "array"
        },
        "type": {
          "const": "NodeLeft",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "NodeLeft",
      "type": "object"
    },
    "NodeRightSchema": {
      "examples": [
        {
          "alias": "private_network",
          "boundaries": [],
          "description": "Internal network segment for application and data services.",
          "elements": [],
          "label": "Private Network",
          "properties": {
            "properties": [
              [
                "Exposure",
                "Internal only"
              ],
              [
                "CIDR",
                "10.0.0.0/16"
              ]
            ]
          },
          "relationships": [],
          "sprite": "network",
          "stereotype": "Network Segment",
          "tags": [
            "node",
            "private"
          ],
          "type": "NodeRight"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "relationships": {
          "description": "Top-level relationships.",
          "items": {
            "$ref": "#/$defs/RelationshipSchema"
          },
          "title": "Relationships",
          "type": "array"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite name to visually represent the node.",
          "title": "Sprite"
        },
        "elements": {
          "description": "Top-level elements.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/PersonSchema"
              },
              {
                "$ref": "#/$defs/PersonExtSchema"
              },
              {
                "$ref": "#/$defs/SystemSchema"
              },
              {
                "$ref": "#/$defs/SystemExtSchema"
              },
              {
                "$ref": "#/$defs/SystemDbSchema"
              },
              {
                "$ref": "#/$defs/SystemDbExtSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerSchema"
              },
              {
                "$ref": "#/$defs/ContainerExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueExtSchema"
              }
            ]
          },
          "title": "Elements",
          "type": "array"
        },
        "boundaries": {
          "description": "Top-level boundaries.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/NodeSchema"
              },
              {
                "$ref": "#/$defs/NodeLeftSchema"
              },
              {
                "$ref": "#/$defs/NodeRightSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeLeftSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeRightSchema"
              }
            ]
          },
          "title": "Boundaries",
          "type": "array"
        },
        "type": {
          "const": "NodeRight",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "NodeRight",
      "type": "object"
    },
    "NodeSchema": {
      "examples": [
        {
          "alias": "aws_account",
          "boundaries": [],
          "description": "Top-level cloud account hosting the production platform.",
          "elements": [],
          "label": "AWS Account",
          "link": "https://console.aws.amazon.com/",
          "properties": {
            "properties": [
              [
                "Environment",
                "Production"
              ],
              [
                "Region Scope",
                "eu-central-1"
              ]
            ]
          },
          "relationships": [],
          "sprite": "cloud",
          "stereotype": "Cloud Account",
          "tags": [
            "node",
            "cloud"
          ],
          "type": "Node"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "relationships": {
          "description": "Top-level relationships.",
          "items": {
            "$ref": "#/$defs/RelationshipSchema"
          },
          "title": "Relationships",
          "type": "array"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite name to visually represent the node.",
          "title": "Sprite"
        },
        "elements": {
          "description": "Top-level elements.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/PersonSchema"
              },
              {
                "$ref": "#/$defs/PersonExtSchema"
              },
              {
                "$ref": "#/$defs/SystemSchema"
              },
              {
                "$ref": "#/$defs/SystemExtSchema"
              },
              {
                "$ref": "#/$defs/SystemDbSchema"
              },
              {
                "$ref": "#/$defs/SystemDbExtSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueSchema"
              },
              {
                "$ref": "#/$defs/SystemQueueExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerSchema"
              },
              {
                "$ref": "#/$defs/ContainerExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbSchema"
              },
              {
                "$ref": "#/$defs/ContainerDbExtSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueSchema"
              },
              {
                "$ref": "#/$defs/ContainerQueueExtSchema"
              }
            ]
          },
          "title": "Elements",
          "type": "array"
        },
        "boundaries": {
          "description": "Top-level boundaries.",
          "items": {
            "anyOf": [
              {
                "$ref": "#/$defs/NodeSchema"
              },
              {
                "$ref": "#/$defs/NodeLeftSchema"
              },
              {
                "$ref": "#/$defs/NodeRightSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeLeftSchema"
              },
              {
                "$ref": "#/$defs/DeploymentNodeRightSchema"
              }
            ]
          },
          "title": "Boundaries",
          "type": "array"
        },
        "type": {
          "const": "Node",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "Node",
      "type": "object"
    },
    "NodeTagSchema": {
      "properties": {
        "type": {
          "const": "NodeTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used for labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the element border.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the element border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "NodeTagSchema",
      "type": "object"
    },
    "PersonExtSchema": {
      "examples": [
        {
          "alias": "auditor",
          "description": "External compliance reviewer.",
          "label": "Auditor",
          "link": "https://partner.example.com",
          "properties": {
            "properties": [
              [
                "Organization",
                "Compliance Partner"
              ],
              [
                "Access",
                "Read-only"
              ]
            ]
          },
          "sprite": "user",
          "stereotype": "External User",
          "tags": [
            "person",
            "external"
          ],
          "type": "PersonExt"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "PersonExt",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "PersonExt",
      "type": "object"
    },
    "PersonSchema": {
      "examples": [
        {
          "alias": "store_manager",
          "description": "Manages product catalog and promotions.",
          "label": "Store Manager",
          "link": "https://intranet.example.com",
          "properties": {
            "properties": [
              [
                "Department",
                "Retail Ops"
              ],
              [
                "Role",
                "Manager"
              ]
            ]
          },
          "sprite": "user",
          "stereotype": "Business User",
          "tags": [
            "person",
            "internal"
          ],
          "type": "Person"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "Person",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "Person",
      "type": "object"
    },
    "PersonTagSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "PersonTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the person symbol.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used in the label.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border color of the person symbol.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the person border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "PersonTagSchema",
      "type": "object"
    },
    "PlantUMLRenderOptionsSchema": {
      "properties": {
        "includes": {
          "description": "A list of PlantUML `!include` directives to be injected at the beginning of the diagram.",
          "items": {
            "type": "string"
          },
          "title": "Includes",
          "type": "array"
        },
        "layout": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramLayout"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Layout direction."
        },
        "layout_with_legend": {
          "default": false,
          "description": "Whether to apply the LAYOUT_WITH_LEGEND macro.",
          "title": "Layout With Legend",
          "type": "boolean"
        },
        "layout_as_sketch": {
          "default": false,
          "description": "Whether to apply the LAYOUT_AS_SKETCH macro.",
          "title": "Layout As Sketch",
          "type": "boolean"
        },
        "set_sketch_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/SetSketchStyleSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sketch-style visual customization."
        },
        "show_legend": {
          "anyOf": [
            {
              "$ref": "#/$defs/ShowLegendSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Configuration for the SHOW_LEGEND macro."
        },
        "show_floating_legend": {
          "anyOf": [
            {
              "$ref": "#/$defs/ShowFloatingLegendSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Configuration for the SHOW_FLOATING_LEGEND macro."
        },
        "hide_stereotype": {
          "default": false,
          "description": "Whether to hide stereotype labels globally.",
          "title": "Hide Stereotype",
          "type": "boolean"
        },
        "hide_person_sprite": {
          "default": false,
          "description": "Whether to hide person sprites globally.",
          "title": "Hide Person Sprite",
          "type": "boolean"
        },
        "show_person_sprite": {
          "anyOf": [
            {
              "$ref": "#/$defs/ShowPersonSpriteSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Configuration for the SHOW_PERSON_SPRITE macro."
        },
        "show_person_portrait": {
          "default": false,
          "description": "Whether to enable person portraits.",
          "title": "Show Person Portrait",
          "type": "boolean"
        },
        "show_person_outline": {
          "default": false,
          "description": "Whether to enable person outlines.",
          "title": "Show Person Outline",
          "type": "boolean"
        },
        "without_property_header": {
          "default": false,
          "description": "If true, omit the header row and render the second column in bold.",
          "title": "Without Property Header",
          "type": "boolean"
        },
        "legend_title": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional title displayed above the legend.",
          "title": "Legend Title"
        },
        "tags": {
          "description": "List of tag macro configurations.",
          "items": {
            "discriminator": {
              "mapping": {
                "BoundaryTag": "#/$defs/BoundaryTagSchema",
                "ComponentTag": "#/$defs/ComponentTagSchema",
                "ContainerTag": "#/$defs/ContainerTagSchema",
                "ElementTag": "#/$defs/ElementTagSchema",
                "ExternalComponentTag": "#/$defs/ExternalComponentTagSchema",
                "ExternalContainerTag": "#/$defs/ExternalContainerTagSchema",
                "ExternalPersonTag": "#/$defs/ExternalPersonTagSchema",
                "ExternalSystemTag": "#/$defs/ExternalSystemTagSchema",
                "NodeTag": "#/$defs/NodeTagSchema",
                "PersonTag": "#/$defs/PersonTagSchema",
                "RelTag": "#/$defs/RelTagSchema",
                "SystemTag": "#/$defs/SystemTagSchema"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/$defs/ElementTagSchema"
              },
              {
                "$ref": "#/$defs/BoundaryTagSchema"
              },
              {
                "$ref": "#/$defs/ComponentTagSchema"
              },
              {
                "$ref": "#/$defs/ExternalComponentTagSchema"
              },
              {
                "$ref": "#/$defs/ContainerTagSchema"
              },
              {
                "$ref": "#/$defs/ExternalContainerTagSchema"
              },
              {
                "$ref": "#/$defs/NodeTagSchema"
              },
              {
                "$ref": "#/$defs/RelTagSchema"
              },
              {
                "$ref": "#/$defs/PersonTagSchema"
              },
              {
                "$ref": "#/$defs/ExternalPersonTagSchema"
              },
              {
                "$ref": "#/$defs/SystemTagSchema"
              },
              {
                "$ref": "#/$defs/ExternalSystemTagSchema"
              }
            ]
          },
          "title": "Tags",
          "type": "array"
        },
        "styles": {
          "description": "List of style update macro configurations.",
          "items": {
            "discriminator": {
              "mapping": {
                "BoundaryStyle": "#/$defs/BoundaryStyleSchema",
                "ContainerBoundaryStyle": "#/$defs/ContainerBoundaryStyleSchema",
                "ElementStyle": "#/$defs/ElementStyleSchema",
                "EnterpriseBoundaryStyle": "#/$defs/EnterpriseBoundaryStyleSchema",
                "RelStyle": "#/$defs/RelStyleSchema",
                "SystemBoundaryStyle": "#/$defs/SystemBoundaryStyleSchema"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/$defs/ElementStyleSchema"
              },
              {
                "$ref": "#/$defs/BoundaryStyleSchema"
              },
              {
                "$ref": "#/$defs/ContainerBoundaryStyleSchema"
              },
              {
                "$ref": "#/$defs/SystemBoundaryStyleSchema"
              },
              {
                "$ref": "#/$defs/EnterpriseBoundaryStyleSchema"
              },
              {
                "$ref": "#/$defs/RelStyleSchema"
              }
            ]
          },
          "title": "Styles",
          "type": "array"
        }
      },
      "title": "PlantUMLRenderOptionsSchema",
      "type": "object"
    },
    "RelStyleSchema": {
      "properties": {
        "type": {
          "const": "RelStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "text_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the relationship label text.",
          "title": "Text Color"
        },
        "line_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the relationship line.",
          "title": "Line Color"
        }
      },
      "required": [
        "type"
      ],
      "title": "RelStyleSchema",
      "type": "object"
    },
    "RelTagSchema": {
      "properties": {
        "type": {
          "const": "RelTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "text_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the relationship label text.",
          "title": "Text Color"
        },
        "line_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color of the relationship line.",
          "title": "Line Color"
        },
        "line_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Relationship line style macro."
        },
        "line_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the relationship line.",
          "title": "Line Thickness"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label associated with the relationship.",
          "title": "Technology"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "RelTagSchema",
      "type": "object"
    },
    "RelationshipSchema": {
      "properties": {
        "type": {
          "$ref": "#/$defs/RelationshipType",
          "description": "Type of the relationship."
        },
        "from": {
          "description": "The source element alias (or unique label).",
          "minLength": 1,
          "title": "From",
          "type": "string"
        },
        "to": {
          "description": "The destination element alias (or unique label).",
          "minLength": 1,
          "title": "To",
          "type": "string"
        },
        "label": {
          "description": "The label shown on the relationship edge.",
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Additional details about the relationship.",
          "title": "Description"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The technology used in the communication.",
          "title": "Technology"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon to represent the relationship.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL link associated with the relationship.",
          "title": "Link"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "from",
        "to",
        "label"
      ],
      "title": "Relationship",
      "type": "object"
    },
    "RelationshipType": {
      "description": "Enum representing different types of relationships between\ndiagram elements.",
      "enum": [
        "REL",
        "BI_REL",
        "REL_BACK",
        "REL_NEIGHBOR",
        "BI_REL_NEIGHBOR",
        "REL_BACK_NEIGHBOR",
        "REL_D",
        "REL_DOWN",
        "BI_REL_D",
        "BI_REL_DOWN",
        "REL_U",
        "REL_UP",
        "BI_REL_U",
        "BI_REL_UP",
        "REL_L",
        "REL_LEFT",
        "BI_REL_L",
        "BI_REL_LEFT",
        "REL_R",
        "REL_RIGHT",
        "BI_REL_R",
        "BI_REL_RIGHT"
      ],
      "title": "RelationshipType",
      "type": "string"
    },
    "RenderOptionsSchema": {
      "properties": {
        "plantuml": {
          "anyOf": [
            {
              "$ref": "#/$defs/PlantUMLRenderOptionsSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "PlantUML-specific render options."
        },
        "mermaid": {
          "anyOf": [
            {
              "$ref": "#/$defs/MermaidRenderOptionsSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Mermaid-specific render options."
        }
      },
      "title": "RenderOptionsSchema",
      "type": "object"
    },
    "SetSketchStyleSchema": {
      "properties": {
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the diagram.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color for all diagram text.",
          "title": "Font Color"
        },
        "warning_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Color used for warning messages in the footer.",
          "title": "Warning Color"
        },
        "font_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font family name to use.",
          "title": "Font Name"
        },
        "footer_warning": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional warning message shown in the footer.",
          "title": "Footer Warning"
        },
        "footer_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional footer text message.",
          "title": "Footer Text"
        }
      },
      "title": "SetSketchStyleSchema",
      "type": "object"
    },
    "ShowFloatingLegendSchema": {
      "properties": {
        "hide_stereotype": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Whether to hide stereotype labels in the legend.",
          "title": "Hide Stereotype"
        },
        "details": {
          "$ref": "#/$defs/Details",
          "default": "Small",
          "description": "Legend detail level."
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional alias for the floating legend box.",
          "title": "Alias"
        }
      },
      "title": "ShowFloatingLegendSchema",
      "type": "object"
    },
    "ShowLegendSchema": {
      "properties": {
        "hide_stereotype": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Whether to hide stereotype labels in the legend.",
          "title": "Hide Stereotype"
        },
        "details": {
          "$ref": "#/$defs/Details",
          "default": "Small",
          "description": "Legend detail level."
        }
      },
      "title": "ShowLegendSchema",
      "type": "object"
    },
    "ShowPersonSpriteSchema": {
      "properties": {
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite alias used for the person icon.",
          "title": "Alias"
        }
      },
      "title": "ShowPersonSpriteSchema",
      "type": "object"
    },
    "SystemBoundaryStyleSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "SystemBoundaryStyle",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "element_name": {
          "description": "C4 element type to style (e.g. 'person', 'system', 'container'). This applies to all elements of the given type, not a specific instance.",
          "title": "Element Name",
          "type": "string"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font/text color.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line color.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Shape macro used for rendering."
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon applied to the element.",
          "title": "Sprite"
        },
        "technology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Technology label shown on the element.",
          "title": "Technology"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend label for this styled element.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Legend sprite for this styled element.",
          "title": "Legend Sprite"
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "element_name"
      ],
      "title": "SystemBoundaryStyleSchema",
      "type": "object"
    },
    "SystemDbExtSchema": {
      "examples": [
        {
          "alias": "credit_bureau_db",
          "description": "External database with risk assessment data.",
          "label": "Credit Bureau DB",
          "link": "https://partner.example.com/risk",
          "properties": {
            "properties": [
              [
                "Provider",
                "RiskCo"
              ],
              [
                "Access",
                "Read-only"
              ]
            ]
          },
          "sprite": "database",
          "stereotype": "External Database",
          "tags": [
            "database",
            "external"
          ],
          "type": "SystemDbExt"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "SystemDbExt",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "SystemDbExt",
      "type": "object"
    },
    "SystemDbSchema": {
      "examples": [
        {
          "alias": "customer_profile_db",
          "description": "Stores customer preferences and account metadata.",
          "label": "Customer Profile DB",
          "link": "https://db.example.com/customer-profile",
          "properties": {
            "properties": [
              [
                "Engine",
                "PostgreSQL"
              ],
              [
                "Backup",
                "Daily"
              ]
            ]
          },
          "sprite": "database",
          "stereotype": "Database",
          "tags": [
            "database",
            "internal"
          ],
          "type": "SystemDb"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "SystemDb",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "SystemDb",
      "type": "object"
    },
    "SystemExtSchema": {
      "examples": [
        {
          "alias": "shipping_provider",
          "description": "External logistics platform for shipment booking and tracking.",
          "label": "Shipping Provider",
          "link": "https://shipping.example.com",
          "properties": {
            "properties": [
              [
                "Protocol",
                "REST"
              ],
              [
                "SLA",
                "99.9%"
              ]
            ]
          },
          "sprite": "truck",
          "stereotype": "External System",
          "tags": [
            "system",
            "external"
          ],
          "type": "SystemExt"
        }
      ],
      "properties": {
        "base_shape": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional base shape override (supported by some element classes).",
          "title": "Base Shape"
        },
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "SystemExt",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "SystemExt",
      "type": "object"
    },
    "SystemQueueExtSchema": {
      "examples": [
        {
          "alias": "partner_events_topic",
          "description": "External event topic carrying delivery status updates.",
          "label": "Partner Events Topic",
          "link": "https://partner.example.com/events",
          "properties": {
            "properties": [
              [
                "Broker",
                "Kafka"
              ],
              [
                "Format",
                "Avro"
              ]
            ]
          },
          "sprite": "queue",
          "stereotype": "External Queue",
          "tags": [
            "queue",
            "external"
          ],
          "type": "SystemQueueExt"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "SystemQueueExt",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "SystemQueueExt",
      "type": "object"
    },
    "SystemQueueSchema": {
      "examples": [
        {
          "alias": "order_events_stream",
          "description": "Internal stream of order lifecycle events.",
          "label": "Order Events Stream",
          "link": "https://kafka.example.com/topics/order-events",
          "properties": {
            "properties": [
              [
                "Retention",
                "7 days"
              ],
              [
                "Partitions",
                "12"
              ]
            ]
          },
          "sprite": "queue",
          "stereotype": "Queue",
          "tags": [
            "queue",
            "internal"
          ],
          "type": "SystemQueue"
        }
      ],
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "SystemQueue",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "SystemQueue",
      "type": "object"
    },
    "SystemSchema": {
      "examples": [
        {
          "alias": "inventory_service",
          "description": "Tracks stock levels and reservation state.",
          "label": "Inventory Service",
          "link": "https://inventory.example.com",
          "properties": {
            "properties": [
              [
                "Language",
                "Python"
              ],
              [
                "Team",
                "Supply Chain"
              ]
            ]
          },
          "sprite": "server",
          "stereotype": "Software System",
          "tags": [
            "system",
            "internal"
          ],
          "type": "System"
        }
      ],
      "properties": {
        "base_shape": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional base shape override (supported by some element classes).",
          "title": "Base Shape"
        },
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "System",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "label": {
          "description": "Display name for the element.",
          "minLength": 1,
          "title": "Label",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional description text.",
          "title": "Description"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional sprite/icon reference.",
          "title": "Sprite"
        },
        "tags": {
          "description": "Optional tags for grouping/styling. These tags can be referenced by `tag_stereo` in tag definitions.",
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "link": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional URL associated with the element.",
          "title": "Link"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unique identifier for the element. If not provided, it is autogenerated from the label.",
          "title": "Alias"
        },
        "properties": {
          "anyOf": [
            {
              "$ref": "#/$defs/DiagramElementPropertiesSchema"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional property table metadata."
        }
      },
      "required": [
        "type",
        "label"
      ],
      "title": "System",
      "type": "object"
    },
    "SystemTagSchema": {
      "properties": {
        "stereotype": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional custom type/stereotype label.",
          "title": "Stereotype"
        },
        "type": {
          "const": "SystemTag",
          "description": "Discriminator identifying the element type.",
          "title": "Type",
          "type": "string"
        },
        "tag_stereo": {
          "description": "Stereotype name of the tag. Must match one of the tags declared in the `tags` field of a diagram component.",
          "title": "Tag Stereo",
          "type": "string"
        },
        "legend_text": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Text shown in the diagram legend for this tag.",
          "title": "Legend Text"
        },
        "legend_sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite displayed in the legend for this tag.",
          "title": "Legend Sprite"
        },
        "sprite": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sprite icon associated with the element or relationship.",
          "title": "Sprite"
        },
        "bg_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Background color of the system element.",
          "title": "Bg Color"
        },
        "font_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Font color used in system labels.",
          "title": "Font Color"
        },
        "border_color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border color of the system element.",
          "title": "Border Color"
        },
        "shadowing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": false,
          "description": "Shadow style/toggle.",
          "title": "Shadowing"
        },
        "shape": {
          "anyOf": [
            {
              "$ref": "#/$defs/TagShape"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Optional shape macro used for rendering."
        },
        "border_style": {
          "anyOf": [
            {
              "$ref": "#/$defs/LineStyle"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Border line style macro."
        },
        "border_thickness": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Thickness of the system border line.",
          "title": "Border Thickness"
        }
      },
      "required": [
        "type",
        "tag_stereo"
      ],
      "title": "SystemTagSchema",
      "type": "object"
    },
    "TagShape": {
      "description": "Defines PlantUML tag shape.",
      "enum": [
        "EightSidedShape",
        "RoundedBoxShape"
      ],
      "title": "TagShape",
      "type": "string"
    },
    "UpdateLayoutConfigSchema": {
      "properties": {
        "c4_shape_in_row": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Maximum number of non-boundary elements (e.g. systems, containers, components) per row.",
          "title": "C4 Shape In Row"
        },
        "c4_boundary_in_row": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Maximum number of boundaries per row.",
          "title": "C4 Boundary In Row"
        }
      },
      "title": "UpdateLayoutConfigSchema",
      "type": "object"
    }
  }
}
