{"id":2122,"date":"2026-05-26T06:46:41","date_gmt":"2026-05-26T06:46:41","guid":{"rendered":"https:\/\/www.vpascode.com\/vn\/docs\/uncategorized\/plantuml-syntax-basics\/"},"modified":"2026-05-26T06:46:41","modified_gmt":"2026-05-26T06:46:41","slug":"plantuml-syntax-basics","status":"publish","type":"ld_docs","link":"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/","title":{"rendered":"C\u01a1 b\u1ea3n v\u1ec1 c\u00fa ph\u00e1p PlantUML"},"content":{"rendered":"<p>Tr\u01b0\u1edbc khi \u0111i s\u00e2u v\u00e0o c\u00e1c b\u1ed1 c\u1ee5c ki\u1ebfn tr\u00fac c\u1ee5 th\u1ec3 nh\u01b0 m\u00f4 h\u00ecnh C4 hay d\u00f2ng th\u1eddi gian tu\u1ea7n t\u1ef1, \u0111i\u1ec1u quan tr\u1ecdng l\u00e0 ph\u1ea3i hi\u1ec3u c\u00e1c quy t\u1eafc n\u1ec1n t\u1ea3ng \u0111i\u1ec1u khi\u1ec3n<strong>S\u1ed5 tay PlantUML<\/strong>. PlantUML d\u1ef1a v\u00e0o h\u1ec7 th\u1ed1ng k\u00fd hi\u1ec7u v\u0103n b\u1ea3n s\u1ea1ch s\u1ebd, r\u1ea5t tr\u1ef1c quan. M\u1ed9t khi b\u1ea1n hi\u1ec3u c\u00e1ch \u0111\u1ed9ng c\u01a1 m\u1edf t\u00e0i li\u1ec7u, \u0111\u1eb7t t\u00ean cho c\u00e1c th\u00e0nh ph\u1ea7n c\u1ea5u tr\u00fac v\u00e0 \u0111\u1ecbnh tuy\u1ebfn c\u00e1c \u0111\u01b0\u1eddng n\u1ed1i, vi\u1ec7c vi\u1ebft b\u1ea5t k\u1ef3 b\u1ed1 c\u1ee5c h\u1ec7 th\u1ed1ng ph\u1ee9c t\u1ea1p n\u00e0o s\u1ebd tr\u1edf n\u00ean ho\u00e0n to\u00e0n t\u1ef1 nhi\u00ean.<\/p>\n<p>B\u00e0i gi\u1edbi thi\u1ec7u nhanh n\u00e0y bao qu\u00e1t c\u00e1c c\u01a1 ch\u1ebf c\u00fa ph\u00e1p c\u1ea5u tr\u00fac to\u00e0n c\u1ee5c \u00e1p d\u1ee5ng cho h\u1ea7u h\u1ebft m\u1ecdi lo\u1ea1i s\u01a1 \u0111\u1ed3 PlantUML b\u00ean trong m\u00f4i tr\u01b0\u1eddng l\u00e0m vi\u1ec7c VPasCode.<\/p>\n<h2>1. C\u00e1c bao b\u1ecdc t\u00e0i li\u1ec7u b\u1eaft bu\u1ed9c<\/h2>\n<p>M\u1ed7i kh\u1ed1i m\u00e3 PlantUML ph\u1ea3i b\u1eaft \u0111\u1ea7u v\u00e0 k\u1ebft th\u00fac b\u1eb1ng c\u00e1c th\u1ebb khung r\u00f5 r\u00e0ng. Nh\u1eefng th\u1ebb n\u00e0y th\u00f4ng b\u00e1o cho tr\u00ecnh ph\u00e2n t\u00edch VPasCode kh\u1edfi ch\u1ea1y b\u1ed9 \u0111\u1ed9ng c\u01a1 hi\u1ec3n th\u1ecb \u0111\u00fang trong khung xem tr\u01b0\u1edbc c\u1ee7a b\u1ea1n:<\/p>\n<ul>\n<li><code>@startuml<\/code> \u2014 D\u00f2ng ch\u00ednh x\u00e1c n\u00e0y ph\u1ea3i \u0111\u01b0\u1ee3c \u0111\u1eb7t \u1edf \u0111\u1ea7u tuy\u1ec7t \u0111\u1ed1i c\u1ee7a t\u1eadp l\u1ec7nh c\u1ee7a b\u1ea1n. Kh\u00f4ng c\u00f3 g\u00ec kh\u00e1c \u0111\u01b0\u1ee3c \u0111\u1eb7t tr\u01b0\u1edbc n\u00f3.<\/li>\n<li><code>@enduml<\/code> \u2014 D\u00f2ng ch\u00ednh x\u00e1c n\u00e0y ph\u1ea3i \u0111\u01b0\u1ee3c \u0111\u1eb7t \u1edf cu\u1ed1i tuy\u1ec7t \u0111\u1ed1i c\u1ee7a t\u1eadp l\u1ec7nh c\u1ee7a b\u1ea1n, \u0111\u00e1nh d\u1ea5u k\u1ebft th\u00fac c\u1ee7a kh\u1ed1i d\u1eef li\u1ec7u s\u01a1 \u0111\u1ed3 c\u1ee7a b\u1ea1n.<\/li>\n<\/ul>\n<p>M\u1ecdi m\u00e3 \u0111\u01b0\u1ee3c vi\u1ebft b\u00ean ngo\u00e0i hai d\u1ea5u hi\u1ec7u n\u00e0y s\u1ebd b\u1ecb tr\u00ecnh bi\u00ean d\u1ecbch b\u1ecf qua an to\u00e0n, ho\u1eb7c c\u00f3 th\u1ec3 g\u00e2y ra c\u1ea3nh b\u00e1o x\u00e1c th\u1ef1c c\u00fa ph\u00e1p trong b\u1ea3ng ch\u1ea9n \u0111o\u00e1n m\u00f4i tr\u01b0\u1eddng l\u00e0m vi\u1ec7c c\u1ee7a b\u1ea1n.<\/p>\n<h2>2. Khai b\u00e1o c\u00e1c th\u00e0nh ph\u1ea7n: ID so v\u1edbi nh\u00e3n hi\u1ec3n th\u1ecb<\/h2>\n<p>Khi m\u00f4 h\u00ecnh h\u00f3a m\u1ed9t h\u1ec7 th\u1ed1ng ph\u1ea7n m\u1ec1m, b\u1ea1n s\u1ebd t\u1ea1o ra nhi\u1ec1u th\u00e0nh ph\u1ea7n c\u1ea5u tr\u00fac kh\u00e1c nhau nh\u01b0 th\u00e0nh ph\u1ea7n, c\u01a1 s\u1edf d\u1eef li\u1ec7u, t\u00e1c nh\u00e2n ho\u1eb7c d\u1ecbch v\u1ee5 vi m\u00f4. Trong PlantUML, b\u1ea1n c\u00f3 th\u1ec3 khai b\u00e1o m\u1ed9t th\u00e0nh ph\u1ea7n r\u00f5 r\u00e0ng b\u1eb1ng c\u00e1ch x\u00e1c \u0111\u1ecbnh lo\u1ea1i c\u1ee7a n\u00f3, m\u1ed9t ID ng\u1eafn g\u1ecdn n\u1ed9i b\u1ed9 v\u00e0 m\u1ed9t t\u00ean hi\u1ec3n th\u1ecb th\u00e2n thi\u1ec7n v\u1edbi ng\u01b0\u1eddi d\u00f9ng \u0111\u01b0\u1ee3c bao quanh b\u1eb1ng d\u1ea5u ngo\u1eb7c k\u00e9p:<\/p>\n<pre><code>component microservice_id as \"API X\u1eed l\u00fd thanh to\u00e1n\"\r\ndatabase db_id as \"SQL Giao d\u1ecbch Ng\u01b0\u1eddi d\u00f9ng\"<\/code><\/pre>\n<p><strong>T\u1ea1i sao \u0111\u00e2y l\u00e0 m\u1ed9t th\u1ef1c h\u00e0nh t\u1ed1t nh\u1ea5t:<\/strong> S\u1eed d\u1ee5ng m\u1ed9t ID n\u1ed9i b\u1ed9 ng\u1eafn g\u1ecdn, s\u1ea1ch s\u1ebd (nh\u01b0<code>microservice_id<\/code>) gi\u00fap v\u1ebd c\u00e1c \u0111\u01b0\u1eddng quan h\u1ec7 nhanh h\u01a1n r\u1ea5t nhi\u1ec1u v\u1ec1 sau. N\u1ebfu b\u1ea1n c\u1ea7n thay \u0111\u1ed5i nh\u00e3n d\u00e0nh cho kh\u00e1ch h\u00e0ng t\u1eeb \u201cAPI X\u1eed l\u00fd thanh to\u00e1n\u201d th\u00e0nh \u201cD\u1ecbch v\u1ee5 Thanh to\u00e1n To\u00e0n c\u1ea7u\u201d, b\u1ea1n ch\u1ec9 c\u1ea7n ch\u1ec9nh s\u1eeda \u1edf m\u1ed9t d\u00f2ng m\u00e3 duy nh\u1ea5t, thay v\u00ec c\u1eadp nh\u1eadt h\u00e0ng ch\u1ee5c d\u00f2ng tr\u00ean to\u00e0n b\u1ed9 t\u1eadp l\u1ec7nh c\u1ee7a m\u00ecnh.<\/p>\n<h2>3. Th\u00e0nh th\u1ea1o c\u00e1c m\u0169i t\u00ean quan h\u1ec7 v\u00e0 \u0111\u1ecbnh tuy\u1ebfn theo h\u01b0\u1edbng<\/h2>\n<p>C\u00e1c k\u1ebft n\u1ed1i gi\u1eefa c\u00e1c n\u00fat h\u1ec7 th\u1ed1ng \u0111\u01b0\u1ee3c v\u1ebd b\u1eb1ng c\u00e1ch k\u1ebft h\u1ee3p c\u00e1c g\u1ea1ch ngang (<code>-<\/code>) v\u00e0 c\u00e1c d\u1ea5u ngo\u1eb7c m\u0169i t\u00ean (<code>&gt;<\/code>). \u0110\u1ed9 d\u00e0i c\u1ee7a c\u00e1c g\u1ea1ch ngang v\u00e0 vi\u1ec7c bao g\u1ed3m c\u00e1c t\u1eeb kh\u00f3a h\u01b0\u1edbng gi\u00fap b\u1ea1n ki\u1ec3m so\u00e1t ng\u1ea7m c\u00e1ch b\u1ed9 \u0111\u1ed9ng c\u01a1 b\u1ed1 tr\u00ed t\u1ef1 \u0111\u1ed9ng thu ph\u00f3ng s\u01a1 \u0111\u1ed3 c\u1ee7a b\u1ea1n:<\/p>\n<ul>\n<li><strong>K\u1ebft n\u1ed1i c\u01a1 b\u1ea3n:<\/strong> <code>A --&gt; B<\/code>v\u1ebd m\u1ed9t m\u0169i t\u00ean h\u01b0\u1edbng chu\u1ea9n, ch\u1ec9 t\u1eeb th\u00e0nh ph\u1ea7n A th\u1eb3ng \u0111\u1ebfn th\u00e0nh ph\u1ea7n B.<\/li>\n<li><strong>\u0110\u01b0\u1eddng n\u1ed1i ph\u1ee5 thu\u1ed9c \u0111i\u1ec3m ch\u1ea5m:<\/strong> Thay th\u1ebf c\u00e1c g\u1ea1ch ngang b\u1eb1ng d\u1ea5u ch\u1ea5m s\u1ebd t\u1ea1o th\u00e0nh \u0111\u01b0\u1eddng n\u00e9t \u0111\u1ee9t, \u0111\u00e2y l\u00e0 ti\u00eau chu\u1ea9n ng\u00e0nh \u0111\u1ec3 ch\u1ec9 c\u00e1c ph\u1ee5 thu\u1ed9c b\u1ea5t \u0111\u1ed3ng b\u1ed9 ho\u1eb7c l\u1eddi g\u1ecdi m\u1ea1ng:<code>A ..&gt; B<\/code>.<\/li>\n<li><strong>C\u01b0\u1ee1ng ch\u1ebf \u0111\u1ecbnh h\u01b0\u1edbng b\u1ed1 c\u1ee5c:<\/strong> M\u1eb7c d\u00f9 b\u1ed9 \u0111\u1ed9ng l\u1ef1c b\u1ed1 c\u1ee5c t\u1ef1 \u0111\u1ed9ng c\u00e1ch \u0111\u1ec1u c\u00e1c h\u1ed9p, b\u1ea1n c\u00f3 th\u1ec3 tr\u1ef1c ti\u1ebfp \u0111i\u1ec1u ch\u1ec9nh \u0111\u1ecbnh h\u01b0\u1edbng b\u1eb1ng c\u00e1ch ch\u00e8n t\u1eeb kh\u00f3a h\u01b0\u1edbng ngay trong chu\u1ed7i m\u0169i t\u00ean:\n<ul>\n<li><code>A -up-&gt; B<\/code> (C\u01b0\u1ee1ng ch\u1ebf B \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb ph\u00eda tr\u00ean A)<\/li>\n<li><code>A -down-&gt; B<\/code> (C\u01b0\u1ee1ng ch\u1ebf B \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb ph\u00eda d\u01b0\u1edbi A)<\/li>\n<li><code>A -left-&gt; B<\/code> (C\u01b0\u1ee1ng ch\u1ebf B \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb b\u00ean tr\u00e1i A)<\/li>\n<li><code>A -right-&gt; B<\/code> (C\u01b0\u1ee1ng ch\u1ebf B \u0111\u01b0\u1ee3c hi\u1ec3n th\u1ecb b\u00ean ph\u1ea3i A)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>4. Th\u00eam ng\u1eef c\u1ea3nh tr\u1ef1c ti\u1ebfp: Nh\u00e3n v\u00e0 ch\u00fa th\u00edch m\u00e3<\/h2>\n<p>T\u00e0i li\u1ec7u r\u00f5 r\u00e0ng ph\u1ee5 thu\u1ed9c r\u1ea5t nhi\u1ec1u v\u00e0o vi\u1ec7c \u0111\u1eb7t ng\u1eef c\u1ea3nh ph\u00f9 h\u1ee3p xung quanh c\u00e1c d\u00f2ng h\u00ecnh \u1ea3nh v\u00e0 \u0111o\u1ea1n m\u00e3 v\u0103n b\u1ea3n c\u1ee7a b\u1ea1n:<\/p>\n<h3>\u0110\u00e1nh nh\u00e3n c\u00e1c \u0111\u01b0\u1eddng k\u1ebft n\u1ed1i<\/h3>\n<p>B\u1ea1n c\u00f3 th\u1ec3 th\u00eam v\u0103n b\u1ea3n gi\u1ea3i th\u00edch tr\u1ef1c ti\u1ebfp v\u00e0o b\u1ea5t k\u1ef3 \u0111\u01b0\u1eddng k\u1ebft n\u1ed1i n\u00e0o b\u1eb1ng c\u00e1ch th\u00eam d\u1ea5u hai ch\u1ea5m (&#8220;<code>:<\/code>) ngay sau khi \u00e1nh x\u1ea1 m\u1ed1i quan h\u1ec7 c\u1ee7a b\u1ea1n:<\/p>\n<pre><code>client_id --&gt; api_id : \"HTTPS POST \/v1\/checkout\"<\/code><\/pre>\n<h3>Vi\u1ebft ch\u00fa th\u00edch m\u00e3<\/h3>\n<p>N\u1ebfu b\u1ea1n mu\u1ed1n \u0111\u1ec3 l\u1ea1i m\u1ed9t ghi ch\u00fa h\u00e0nh ch\u00ednh, ghi nh\u1eadn thi\u1ebft k\u1ebf ho\u1eb7c gi\u1ea3i th\u00edch ki\u1ebfn tr\u00fac b\u00ean trong t\u1ec7p k\u1ecbch b\u1ea3n c\u1ee7a b\u1ea1n m\u00e0 kh\u00f4ng hi\u1ec3n th\u1ecb h\u1ed9p h\u00ecnh \u1ea3nh n\u00e0o tr\u00ean b\u1ea3ng v\u1ebd, h\u00e3y s\u1eed d\u1ee5ng k\u00fd t\u1ef1 d\u1ea5u ngo\u1eb7c \u0111\u01a1n (&#8220;<code>'<\/code>). \u0110i\u1ec1u n\u00e0y th\u00f4ng b\u00e1o cho b\u1ed9 x\u1eed l\u00fd b\u1ecf qua vi\u1ec7c ph\u00e2n t\u00edch to\u00e0n b\u1ed9 d\u00f2ng \u0111\u00f3:<\/p>\n<pre><code>' TODO: Ch\u00fang ta c\u1ea7n c\u1eadp nh\u1eadt h\u1ed9p bi\u00ean n\u00e0y m\u1ed9t khi qu\u00e1 tr\u00ecnh di d\u1eddi DevOps ho\u00e0n t\u1ea5t\r\n[Monolith c\u0169] --&gt; [Microservice m\u1edbi]<\/code><\/pre>\n<p>B\u00e2y gi\u1edd b\u1ea1n \u0111\u00e3 quen thu\u1ed9c v\u1edbi c\u00e1c bao b\u1ecdc c\u00fa ph\u00e1p to\u00e0n c\u1ee5c, khai b\u00e1o th\u00e0nh ph\u1ea7n v\u00e0 c\u00e1c tham s\u1ed1 m\u0169i t\u00ean \u0111\u1ecbnh h\u01b0\u1edbng c\u1ee7a PlantUML, b\u1ea1n ho\u00e0n to\u00e0n s\u1eb5n s\u00e0ng \u0111\u1ec3 b\u1eaft \u0111\u1ea7u x\u00e2y d\u1ef1ng c\u00e1c h\u00ecnh d\u1ea1ng h\u1ec7 th\u1ed1ng n\u00e2ng cao. Ti\u1ebfn t\u1edbi trang ti\u1ebfp theo \u0111\u1ec3 m\u1edf kh\u00f3a b\u1ed9 s\u01b0u t\u1eadp c\u1ee7a ch\u00fang t\u00f4i v\u1ec1<strong>S\u01a1 \u0111\u1ed3 ki\u1ebfn tr\u00fac &amp; Thi\u1ebft k\u1ebf c\u1ea5p cao<\/strong>!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tr\u01b0\u1edbc khi \u0111i s\u00e2u v\u00e0o c\u00e1c b\u1ed1 c\u1ee5c ki\u1ebfn tr\u00fac c\u1ee5 th\u1ec3 nh\u01b0 m\u00f4 h\u00ecnh C4 hay d\u00f2ng th\u1eddi gian tu\u1ea7n t\u1ef1, \u0111i\u1ec1u quan tr\u1ecdng l\u00e0 ph\u1ea3i hi\u1ec3u c\u00e1c quy t\u1eafc n\u1ec1n t\u1ea3ng \u0111i\u1ec1u khi\u1ec3nS\u1ed5 tay PlantUML. PlantUML d\u1ef1a v\u00e0o&#8230;<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":0,"template":"","meta":{"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}}},"ld_collection":[14],"class_list":["post-2122","ld_docs","type-ld_docs","status-publish","hentry","ld_collection-vpascode-docs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PlantUML Syntax Basics | VPasCode Text to Diagram Guide<\/title>\n<meta name=\"description\" content=\"Master PlantUML syntax fundamentals in VPasCode, a versatile diagram-as-code tool to convert text to diagram architecture maps.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PlantUML Syntax Basics | VPasCode Text to Diagram Guide\" \/>\n<meta property=\"og:description\" content=\"Master PlantUML syntax fundamentals in VPasCode, a versatile diagram-as-code tool to convert text to diagram architecture maps.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/\" \/>\n<meta property=\"og:site_name\" content=\"VPasCode\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 ph\u00fat\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/docs\\\/vpascode-docs\\\/plantuml-syntax-basics\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/docs\\\/vpascode-docs\\\/plantuml-syntax-basics\\\/\",\"name\":\"PlantUML Syntax Basics | VPasCode Text to Diagram Guide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/#website\"},\"datePublished\":\"2026-05-26T06:46:41+00:00\",\"description\":\"Master PlantUML syntax fundamentals in VPasCode, a versatile diagram-as-code tool to convert text to diagram architecture maps.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/docs\\\/vpascode-docs\\\/plantuml-syntax-basics\\\/#breadcrumb\"},\"inLanguage\":\"vi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/docs\\\/vpascode-docs\\\/plantuml-syntax-basics\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/docs\\\/vpascode-docs\\\/plantuml-syntax-basics\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lean Docs\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/docs\\\/%ld_collection%\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"C\u01a1 b\u1ea3n v\u1ec1 c\u00fa ph\u00e1p PlantUML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/#website\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/\",\"name\":\"VPasCode\",\"description\":\"by Visual Paradigm\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"vi\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/#organization\",\"name\":\"VPasCode\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/wp-content\\\/uploads\\\/sites\\\/12\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/wp-content\\\/uploads\\\/sites\\\/12\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"width\":128,\"height\":138,\"caption\":\"VPasCode\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/vn\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PlantUML Syntax Basics | VPasCode Text to Diagram Guide","description":"Master PlantUML syntax fundamentals in VPasCode, a versatile diagram-as-code tool to convert text to diagram architecture maps.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/","og_locale":"vi_VN","og_type":"article","og_title":"PlantUML Syntax Basics | VPasCode Text to Diagram Guide","og_description":"Master PlantUML syntax fundamentals in VPasCode, a versatile diagram-as-code tool to convert text to diagram architecture maps.","og_url":"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/","og_site_name":"VPasCode","twitter_card":"summary_large_image","twitter_misc":{"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"3 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/","url":"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/","name":"PlantUML Syntax Basics | VPasCode Text to Diagram Guide","isPartOf":{"@id":"https:\/\/www.vpascode.com\/vn\/#website"},"datePublished":"2026-05-26T06:46:41+00:00","description":"Master PlantUML syntax fundamentals in VPasCode, a versatile diagram-as-code tool to convert text to diagram architecture maps.","breadcrumb":{"@id":"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.vpascode.com\/vn\/docs\/vpascode-docs\/plantuml-syntax-basics\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vpascode.com\/vn\/"},{"@type":"ListItem","position":2,"name":"Lean Docs","item":"https:\/\/www.vpascode.com\/vn\/docs\/%ld_collection%\/"},{"@type":"ListItem","position":3,"name":"C\u01a1 b\u1ea3n v\u1ec1 c\u00fa ph\u00e1p PlantUML"}]},{"@type":"WebSite","@id":"https:\/\/www.vpascode.com\/vn\/#website","url":"https:\/\/www.vpascode.com\/vn\/","name":"VPasCode","description":"by Visual Paradigm","publisher":{"@id":"https:\/\/www.vpascode.com\/vn\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vpascode.com\/vn\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi"},{"@type":"Organization","@id":"https:\/\/www.vpascode.com\/vn\/#organization","name":"VPasCode","url":"https:\/\/www.vpascode.com\/vn\/","logo":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/www.vpascode.com\/vn\/#\/schema\/logo\/image\/","url":"https:\/\/www.vpascode.com\/vn\/wp-content\/uploads\/sites\/12\/2026\/06\/cropped-vp-online-logo-v1.png","contentUrl":"https:\/\/www.vpascode.com\/vn\/wp-content\/uploads\/sites\/12\/2026\/06\/cropped-vp-online-logo-v1.png","width":128,"height":138,"caption":"VPasCode"},"image":{"@id":"https:\/\/www.vpascode.com\/vn\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.vpascode.com\/vn\/wp-json\/wp\/v2\/ld_docs\/2122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vpascode.com\/vn\/wp-json\/wp\/v2\/ld_docs"}],"about":[{"href":"https:\/\/www.vpascode.com\/vn\/wp-json\/wp\/v2\/types\/ld_docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.vpascode.com\/vn\/wp-json\/wp\/v2\/users\/4"}],"wp:attachment":[{"href":"https:\/\/www.vpascode.com\/vn\/wp-json\/wp\/v2\/media?parent=2122"}],"wp:term":[{"taxonomy":"ld_collection","embeddable":true,"href":"https:\/\/www.vpascode.com\/vn\/wp-json\/wp\/v2\/ld_collection?post=2122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}