Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Frame and Border Attribute Reference

Border Attributes

TargetAttributeDescription
page <frame>width, heightCanvas size in layout pixels
page <frame>margin, margin-*Inset diagram content without shrinking the paper frame
identified child <frame>title, versionEnable the page metadata band and supply visible built-in values; child version is a content revision, not the DSL version
frame <metadata>positiontop (default) or bottom
frame <metadata>alignleft (default), center, or right; applied to each wrapped row independently
frame <metadata>font-family, font-sizeTag typography; defaults are virgil and 12, and height follows ceil(font-size × 1.2) + 4
frame <metadata>color, key-color, background-color, key-background-color, border-color#RRGGBB or transparent; defaults are #64748b, inherited color, transparent, #f8fafc, and #cbd5e1 respectively
frame <metadata>, <entry>width, key-widthPositive manual total/key-cell width; omission means auto, and entry values override metadata defaults
frame <metadata>gap, row-gapNon-negative horizontal and wrapped-row spacing; defaults are 8 and 4. The resolved row-gap also insets the selected vertical edge and both row ends
frame <metadata><entry key="..." value="..." />Arbitrary non-empty key/value tag, retained in source order
frame <metadata> <entry>break-beforefalse (default) or true; starts that entry on a new row when a preceding tag exists
generic leaf boxborder="none"Hide the visible border
generic leaf boxvisible="false"Hide component while preserving layout space
generic leaf box, rectangle, portfont-sizeLabel font size
rectangle, portidRequired unique connection reference
portsidetop, right, bottom, or left

Metadata tags pack greedily in input order against the usable width, producing the minimum row count unless break-before introduces an earlier boundary. The usable width is frame width - 2 * row-gap: the selected top/bottom band edge and left/right row alignment sit one resolved row-gap inside the page edge. Padding, margins, and the content box do not replace or add to that inset. A full-width reservation strip still extends from the outer logical frame edge to the final content-box boundary and is at least row-gap + complete band height + 8 pixels deep. Normal items, text, connector paths and labels, and page links stay outside it, even when the frame or a nested container uses overflow="visible". Metadata cell borders use a fixed 0.75-pixel stroke. An automatic or legacy page terminal is remapped/clamped around this strip; an explicit cross-frame src/dst-frame-side or src/dst-frame-anchor that selects it is a validation error. For a safe page-link side, this resolved row-gap also supplies the terminal’s inward normal inset on all four sides; zero retains the outer logical frame edge. Frames without metadata use a 4-pixel terminal inset instead.

AWS Group Border Styles

TagBorder colorStrokeWidthIcon
<aws-cloud>#000000solid2AWS-Cloud-logo_32.svg
<aws-cloud-alt>#000000solid2AWS-Cloud_32.svg
<region>#00A1C9dashed2Region_32.svg
<availability-zone>#00A1C9dashed2none
<security-group>#CC0000dashed2none
<auto-scaling-group>#E7601Bsolid2Auto-Scaling-group_32.svg
<vpc>#8C4FFFsolid2Virtual-private-cloud-VPC_32.svg
<private-subnet>#00A1C9solid2Private-subnet_32.svg
<public-subnet>#3F8624solid2Public-subnet_32.svg
<server-contents>#7A7C7Fsolid2Server-contents_32.svg
<corporate-data-center>#7A7C7Fsolid2Corporate-data-center_32.svg
<ec2-instance-contents>#E7601Bsolid2EC2-instance-contents_32.svg
<spot-fleet>#E7601Bsolid2Spot-Fleet_32.svg
<aws-account>#E7008Asolid2AWS-Account_32.svg
<aws-iot-greengrass-deployment>#3F8624solid2AWS-IoT-Greengrass-Deployment_32.svg
<aws-iot-greengrass>#3F8624solid2none
<elastic-beanstalk-container>#E7601Bsolid2none
<aws-step-functions-workflow>#E7008Asolid2none
<generic-group>#AAB7B8dashed1configured by positive decimal int32 icon-id (1..2147483647)

See Layout: Frame metadata for activation, defaults, wrapping, output projection, and a complete example.