Specification Format
The YAML specification is the canonical representation for Draw.io Skill 2.2.0.
Mermaid, CSV, and imported .drawio files are convenience inputs. They should all normalize into this structure before rendering.
Minimal Example
yaml
meta:
theme: tech-blue
layout: horizontal
nodes:
- id: api
label: API Gateway
type: service
- id: db
label: PostgreSQL
type: database
edges:
- from: api
to: db
type: data
label: QueryTop-Level Sections
meta
Diagram-wide settings.
yaml
meta:
theme: tech-blue
layout: horizontal
routing: orthogonal
profile: default
figureType: architecture
title: Example Diagram
source: generatedCommon fields:
theme:tech-blue,academic,academic-color,nature,dark,high-contrastlayout:horizontal,vertical,hierarchicalrouting:orthogonal,roundedprofile:default,academic-paper,engineering-reviewfigureType:architecture,roadmap,workflowwhenprofile=academic-papersource:generated,replicated, oredited
modules
Logical containers for related nodes.
yaml
modules:
- id: backend
label: Backendnodes
Required. Each node needs a stable id and label.
yaml
nodes:
- id: api
label: API Gateway
type: service
module: backend
position:
x: 160
y: 96
icon: aws.api-gatewayedges
Optional, but most diagrams use them.
yaml
edges:
- from: api
to: db
type: data
label: Query
labelPosition: centerReplication Metadata
Replicated diagrams usually include:
yaml
meta:
source: replicated
replication:
colorMode: preserve-original
background: "#FFF7ED"
palette:
- hex: "#FDBA74"
role: service fill
appliesTo: nodes
confidence: highcolorMode can be:
preserve-originaltheme-first
Type Auto-Detection
When type is omitted, labels can still map to:
databasedecisionterminalqueueuserdocumentformula- default fallback:
service
Formula detection should only rely on:
$$...$$\(...\)`...`
Validation Expectations
The compiler validates:
- schema and ID correctness
- theme, profile, and layout values
- academic
figureTypewhen paper mode is enabled - layout consistency
- edge quality
- academic-paper requirements when enabled
Use strict mode when warnings should fail the build.
Migration from A-H Format
The old A-H format is legacy guidance. The canonical mapping is now:
| Legacy idea | YAML location |
|---|---|
| layout | meta.layout |
| modules | modules[] |
| nodes | nodes[] |
| edges | edges[] |
| visual style | meta.theme and style overrides |
| export intent | local CLI or Desktop export path |