XML rules: - Skeleton: …. Unique ids. No XML comments. - Vertex: - Edge: . Never self-closing. No waypoints or exitX/entryX. - Labels: html=1 in every style; escape HTML in values (<b>Name</b><br>detail); line break <br>, never \n. - Shapes: rhombus (decision), ellipse, shape=cylinder3 (database), text. - Grid, no layout math: x=col*180+40, y=row*120+40, one node per cell; 140×60 boxes, 140×80 diamonds. - Containers: swimlane;startSize=24; (titled) or group; (invisible); children set parent="" with coordinates relative to it. An edge's parent is the innermost container holding both its ends, else "1". - Lanes: swimlane;horizontal=0;startSize=110; at x=0, y=lane*150, height 150; nodes inside at x=120+col*180, y=45. - Edges: orthogonal; entityRelationEdgeStyle for ER; labels 1-3 words; dashed=1 for one meaning, with a legend.