{"id":2117,"date":"2026-05-26T07:38:24","date_gmt":"2026-05-26T07:38:24","guid":{"rendered":"https:\/\/www.vpascode.com\/id\/docs\/uncategorized\/plantuml-erd-syntax-guide\/"},"modified":"2026-05-26T07:38:24","modified_gmt":"2026-05-26T07:38:24","slug":"plantuml-erd-syntax-guide","status":"publish","type":"ld_docs","link":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/","title":{"rendered":"Panduan Sintaks Diagram Hubungan Entitas PlantUML"},"content":{"rendered":"<h2>Apa itu Diagram Hubungan Entitas (ERD)?<\/h2>\n<p>Sebuah <strong>Diagram Hubungan Entitas (ERD)<\/strong> adalah kerangka struktural yang digunakan untuk merancang, mendokumentasikan, dan menganalisis basis data relasional. Ini memvisualisasikan tabel (entitas) dalam suatu sistem, kolom-kolom tertentu (atribut) yang dimilikinya, dan bagaimana tabel-tabel tersebut saling terhubung. Dalam PlantUML, ERD dibuat menggunakan <strong>notasi Teknik Informasi (IE)<\/strong>, yang menerapkan standar <strong>notasi kaki burung<\/strong> untuk mewakili batasan relasional.<\/p>\n<p>Apakah Anda sedang merancang penyimpanan data mikroservis, mengoptimalkan jalur join SQL, atau memetakan arsitektur gudang data skala perusahaan, ERD UML berbasis teks memastikan skema basis data Anda sangat jelas. Dengan <strong>VPasCode<\/strong>, Anda dapat mendefinisikan tabel basis data, kunci indeks, dan hubungan logis menggunakan sintaks yang bersih dan deklaratif. Mesin secara otomatis menangani ukuran kotak tabel dan mengarahkan string koneksi kunci asing Anda tanpa garis tata letak yang tumpang tindih.<\/p>\n<h2>Panduan Sintaks Inti: Elemen dan Konstruksi<\/h2>\n<p>Membangun ERD gaya IE yang kuat di PlantUML bergantung pada blok entitas yang terstruktur, penunjukan kunci yang eksplisit, dan modifikasi kardinalitas kaki burung.<\/p>\n<h3>1. Deklarasi Entitas (Tabel Basis Data)<\/h3>\n<p>Anda mendeklarasikan tabel basis data menggunakan <code>entity<\/code>kata kunci, diikuti oleh nama tabel dan sepasang kurung kurawal. Di dalam kurung kurawal, Anda daftarkan kolom tabel Anda. Untuk membuat skema Anda bersih dan mudah dibaca, gunakan pemisah garis horizontal (<code>--<\/code>) untuk memisahkan kunci primer\/kunci asing dari atribut data standar:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIofL50gBKujAbPII2nM0BFYInAJSb8Lgdcv580WCqN1Ii7JBqGXEi0x5YAagmkXKtCJCtE0ic6EGSuUZa4QHgQccX2PvABKn9BKbFZ44g1qYAUlQt28esy0BrSj0000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIofL50gBKujAbPII2nM0BFYInAJSb8Lgdcv580WCqN1Ii7JBqGXEi0x5YAagmkXKtCJCtE0ic6EGSuUZa4QHgQccX2PvABKn9BKbFZ44g1qYAUlQt28esy0BrSj0000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">entity \"users\" as users_table {\r\n    id : INT [PK]\r\n    --\r\n    email : VARCHAR(255)\r\n    created_at : TIMESTAMP\r\n}<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIofL50gBKujAbPII2nM0BFYInAJSb8Lgdcv580WCqN1Ii7JBqGXEi0x5YAagmkXKtCJCtE0ic6EGSuUZa4QHgQccX2PvABKn9BKbFZ44g1qYAUlQt28esy0BrSj0000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIofL50gBKujAbPII2nM0BFYInAJSb8Lgdcv580WCqN1Ii7JBqGXEi0x5YAagmkXKtCJCtE0ic6EGSuUZa4QHgQccX2PvABKn9BKbFZ44g1qYAUlQt28esy0BrSj0000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"jsXYoEv\"><img alt=\"\" class=\"alignnone size-full wp-image-598\" decoding=\"async\" height=\"98\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901022bcfe.png\" width=\"183\"\/><\/p>\n<h3>2. Menetapkan Kunci Primer dan Kunci Asing<\/h3>\n<p>Meskipun indikator teks seperti `[PK]` atau `[FK]` berfungsi dengan baik, mesin IE PlantUML juga mendukung ikon kunci visual. Menempatkan tanda bintang (<code>*<\/code>) sebelum suatu atribut menandakan bahwa kolom tersebut adalah **wajib (tidak boleh kosong)**, sementara string teks bersih atau tag menambahkan konteks indeks yang eksplisit:<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIofL53ABqf9BIfMKgZcvL800Ys5p1G5AmLFln056vi0RpixYB2kBaowj3YrA1v9ZHjSJKfcSN9-QLv9V79-IYfGFimnoDd3CKZ3r42JbwiM0000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIn9B5PGoYzAIIqgLbAevkLI008jXSmK1Ii5JxyG1HkR06yxEuYmhYvCkhGujIWUIOqRN4rsVafgV4fcSNP-7b0sp378sSCnICFKG9ENgnO0\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">entitas \"orders\" {\r\n    * id : INT &lt;&lt;PK&gt;&gt;\r\n    --\r\n    * user_id : INT &lt;&lt;FK&gt;&gt;\r\n    kode_diskon : VARCHAR(50)\r\n}<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIn9B5PGoYzAIIqgLbAevkLI008jXSmK1Ii5JxyG1HkR06yxEuYmhYvCkhGujIWUIOqRN4rsVafgV4fcSNP-7b0sp378sSCnICFKG9ENgnO0\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:IyqhoIofL53ABqf9BIfMKgZcvL800Ys5p1G5AmLFln056vi0RpixYB2kBaowj3YrA1v9ZHjSJKfcSN9-QLv9V79-IYfGFimnoDd3CKZ3r42JbwiM0000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"aivVLsO\"><img alt=\"\" class=\"alignnone size-full wp-image-599\" decoding=\"async\" height=\"98\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19010e1b143.png\" width=\"239\"\/><\/p>\n<h3>3. Pemetaan Kardinalitas dan Hubungan Crow\u2019s Foot<\/h3>\n<p>Untuk menghubungkan tabel dan menerapkan batasan integritas referensial, gunakan kombinasi tanda hubung, kurung, dan karakter pipa. Dalam notasi IE, simbol-simbol ini membentuk kepala **crow\u2019s foot** yang berbeda yang mewakili hubungan basis data:<\/p>\n<ul>\n<li><code>||--||<\/code> **Tepat Satu ke Tepat Satu:** Pemetaan satu-ke-satu yang ketat dan wajib.<\/li>\n<li><code>||--o|<\/code> **Tepat Satu ke Nol atau Satu:** Pemetaan satu-ke-satu opsional.<\/li>\n<li><code>||--|{<\/code> **Tepat Satu ke Satu atau Banyak:** Ketergantungan satu-ke-banyak yang wajib.<\/li>\n<li><code>||--o{<\/code> **Tepat Satu ke Nol, Satu, atau Banyak:** Hubungan satu-ke-banyak standar yang opsional.<\/li>\n<\/ul>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AorEBIgEBqbCoabLgAdHrSslLiWlIW6AALWfA1Na92Qd5Yi10000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AqbCIis9BorEBIfMgAdHrSslLiWlIW7nh1IKSbFpKdCB4ako4_EK0000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">tabel_users ||--o{ orders : \"menempatkan\"<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AqbCIis9BorEBIfMgAdHrSslLiWlIW7nh1IKSbFpKdCB4ako4_EK0000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:AorEBIgEBqbCoabLgAdHrSslLiWlIW6AALWfA1Na92Qd5Yi10000\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"BYtNcjJ\"><img alt=\"\" class=\"alignnone size-full wp-image-600\" decoding=\"async\" height=\"174\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a190119b741e.png\" width=\"114\"\/><\/p>\n<h2>Praktik Terbaik untuk Skema Basis Data yang Bersih<\/h2>\n<ul>\n<li><strong>Jaga Konvensi Penulisan Huruf Besar\/Kecil:<\/strong> Pertahankan deklarasi entitas Anda agar dapat diprediksi. Gunakan snake_case huruf kecil (misalnya, <code>order_items<\/code>) untuk tabel yang dipetakan secara SQL, atau gunakan CamelCase huruf besar untuk model domain konseptual.<\/li>\n<li><strong>Selalu Dokumentasikan Kunci Asing:<\/strong> Saat menghubungkan dua tabel, selalu tentukan kolom kunci asing di dalam blok tabel anak. Ini memberikan konteks referensi yang jelas bagi tim rekayasa selama migrasi data.<\/li>\n<li><strong>Atur Jarak Crow\u2019s Foot:<\/strong> Skema basis data yang kompleks dengan puluhan tabel dapat dengan cepat menjadi padat. Jika garis hubungan Anda mulai saling bersilangan secara tidak wajar, ganti penghubung tanda hubung ganda (<code>--<\/code>) dengan tiga atau empat tanda hubung (<code>---<\/code>) untuk menjauhkan tabel-tabel dan memberi mesin tata letak ruang lebih banyak untuk mengatur grid.<\/li>\n<\/ul>\n<h2>Contoh ERD PlantUML Dunia Nyata<\/h2>\n<h3>Contoh 1: Model Relasional E-Commerce Inti (Kunci &amp; Pemetaan)<\/h3>\n<p>Rancangan fungsional ini memodelkan putaran transaksi basis data e-commerce inti, menunjukkan bagaimana pengguna, pesanan, dan catatan pembayaran terhubung satu sama lain menggunakan hubungan crow\u2019s foot yang ketat.<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:ZP9DQy9048RlWVo7mOkjD605BoAY-46bLaIaq5COap5PckocknkirVxtJZGfWLfmJyEyx-u-yp4q5hNDqyHrcZ3JH5y49Asm1zYgJz0aGz92HY2aLM1Yr1caYdCIp4UEcephn28a28GE4d8TyovaXXfJMCoNqytRQWfAsrYvZkkK3pToGzeq00qK4HnT1_YqG8JGW_bo0_t-wdamkAGzhv8fHP6mutMq7Z-DrdUFxVPzfMLep5xfq8_Hn3LFfzijFLci9DMLul9t7OklLrpdy6QmeWg_vfdzUbfWbSN4nrJbqh9XCXtFNqOBPd_eb60y0PkR6bdt3rc6XvHZFw4mgX0lySsCvuh-XTGe3GPMAEbhsX6FFQ2hdOxGqXuFLscRCA6Tu2PhIh1u2nCmGSnZWwsG8MyHByjvugUJvwbZsUKUrvTWGARXEfTC8PzELOMiHoH9yy-5PSWhoVlw0m00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:bP91Qy9048NlWVo7mKjRgM05BoAYM4kbAY9Iw4ccPfgiczqDknj4JFzx9uaMI-sXEOMTjxFVp7j3vz7wNALXS0DpKkyaSuaQBEc8hD0nIEDH0calF3fGf7SO2SZ8Eee5ACCo3GTafSSTgZ18H4Im5NQRKXWuANI65XNCfel9-cqv0MDzOi8W3AgU1sXafECurzW0VY1tPE4O1i1V4qG4FPWkrj3lBry6W_gurJgNIQ58MV4wMesVHwlRXtRxxbpBqBcziT4cGPTSQ3hTxacJ9KRJPQMy_FcJpA56NO5ngt-GbMDiBZHFtvecUDveka5bSkrPy3WPJ-UZ6SFVTqvaR8hFtGLQznVQ5bd3HcNi6HvumpLbIb7y3ynggByuBNqGvy09yDpUeUI_QxkEqTCU3rTnor1fPgv29MI5x2JxnjrJTC9evEXLfXT5gsMEfptteC5H8vMXvvkDCAYFIqrHdAUiHJ4RBD9QDUJOSfY_0000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\n' Membekukan rendering kotak entitas menjadi persegi modern yang tajam\r\nhide circle\r\nskinparam LINETYPE ortho\r\n\r\nentity \"pengguna\" as user {\r\n    * id : INT &lt;&lt;PK&gt;&gt;\r\n    --\r\n    * email : VARCHAR(100)\r\n    * password_hash : VARCHAR(255)\r\n    phone : VARCHAR(20)\r\n}\r\n\r\nentity \"pesanan\" as order {\r\n    * id : INT &lt;&lt;PK&gt;&gt;\r\n    --\r\n    * user_id : INT &lt;&lt;FK&gt;&gt;\r\n    * total_amount : DECIMAL(10,2)\r\n    status : VARCHAR(50)\r\n}\r\n\r\nentity \"catatan pembayaran\" as ledger {\r\n    * id : INT &lt;&lt;PK&gt;&gt;\r\n    --\r\n    * order_id : INT &lt;&lt;FK&gt;&gt;\r\n    * referensi transaksi : VARCHAR(100)\r\n    gateway : VARCHAR(50)\r\n}\r\n\r\n' Menentukan ikatan skema relasional\r\nuser ||--o{ order : \"menempatkan\"\r\norder ||--|| ledger : \"menghasilkan\"\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:bP91Qy9048NlWVo7mKjRgM05BoAYM4kbAY9Iw4ccPfgiczqDknj4JFzx9uaMI-sXEOMTjxFVp7j3vz7wNALXS0DpKkyaSuaQBEc8hD0nIEDH0calF3fGf7SO2SZ8Eee5ACCo3GTafSSTgZ18H4Im5NQRKXWuANI65XNCfel9-cqv0MDzOi8W3AgU1sXafECurzW0VY1tPE4O1i1V4qG4FPWkrj3lBry6W_gurJgNIQ58MV4wMesVHwlRXtRxxbpBqBcziT4cGPTSQ3hTxacJ9KRJPQMy_FcJpA56NO5ngt-GbMDiBZHFtvecUDveka5bSkrPy3WPJ-UZ6SFVTqvaR8hFtGLQznVQ5bd3HcNi6HvumpLbIb7y3ynggByuBNqGvy09yDpUeUI_QxkEqTCU3rTnor1fPgv29MI5x2JxnjrJTC9evEXLfXT5gsMEfptteC5H8vMXvvkDCAYFIqrHdAUiHJ4RBD9QDUJOSfY_0000\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:ZP9DQy9048RlWVo7mOkjD605BoAY-46bLaIaq5COap5PckocknkirVxtJZGfWLfmJyEyx-u-yp4q5hNDqyHrcZ3JH5y49Asm1zYgJz0aGz92HY2aLM1Yr1caYdCIp4UEcephn28a28GE4d8TyovaXXfJMCoNqytRQWfAsrYvZkkK3pToGzeq00qK4HnT1_YqG8JGW_bo0_t-wdamkAGzhv8fHP6mutMq7Z-DrdUFxVPzfMLep5xfq8_Hn3LFfzijFLci9DMLul9t7OklLrpdy6QmeWg_vfdzUbfWbSN4nrJbqh9XCXtFNqOBPd_eb60y0PkR6bdt3rc6XvHZFw4mgX0lySsCvuh-XTGe3GPMAEbhsX6FFQ2hdOxGqXuFLscRCA6Tu2PhIh1u2nCmGSnZWwsG8MyHByjvugUJvwbZsUKUrvTWGARXEfTC8PzELOMiHoH9yy-5PSWhoVlw0m00\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"UBJPtUm\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-601\" decoding=\"async\" height=\"444\" loading=\"lazy\" sizes=\"auto, (max-width: 301px) 100vw, 301px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19012676e1c.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19012676e1c.png 301w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19012676e1c-203x300.png 203w\" width=\"301\"\/><\/p>\n<p><strong>Analisis Sintaks:<\/strong> Petunjuk <code>hide circle<\/code> menonaktifkan gelembung token kelas UML bawaan, sementara <code>skinparam LINETYPE ortho<\/code> memaksa jalur hubungan menjadi sudut siku-siku 90 derajat yang bersih. Skema ini dengan jelas menunjukkan bahwa seorang pengguna dapat menempatkan nol atau banyak pesanan (<code>||--o{<\/code>), sementara pesanan harus memiliki tepat satu catatan pembayaran yang terkait (<code>||--||<\/code>).<\/p>\n<h3>Contoh 2: Skema Sistem Manajemen Konten Lanjutan (Interseksi Banyak-ke-Banyak)<\/h3>\n<p>Rancangan perusahaan lanjutan ini memetakan topologi sistem manajemen konten (CMS) secara lengkap. Ini menunjukkan cara menangani arsitektur banyak-ke-banyak secara bersih dengan memanfaatkan tabel pemetaan antara.<\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">Plantuml<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:ZPFVQy8m4CVV0_aV3b-s2GKty4L4bD4nsHHnPMnF9Mj36soJabmVdFg_BxK_h9qRzYcN-tBtkU-bKuDCOvucbCGYv1087IIS4hCHCcEQfV0wNxhUvye5fJ5Mb5329GhSGYzJ1aqFc87Y13jAm7vz426COBxqO3nUlKmcvRNZr6cMsphQRwcU6bKVREc4sypxRFtuF5lVFWo7TsNE97bqCV6bmgrDUEw7HycXJHWmv97IWfUOLRYz6bMojCroFnXKBKDk0Yqo54h-GZfqFVBhldxAiap8gAIfWXFCKTiXEZUdAVIFggPdneX8yj1dM9WpNxXltconwZgaqjIUAt_Au6fxki0dY6h7V_fdHr4IYrvdUxk1DKzOuIfB815o0mPr7c2kkQ7a-ChsUyTHkyQyKJ62H2QawL7IBFY2gdeAtxmGjalLKriHGsH1V5HCkGpjR_43\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">Plantuml<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:ZPDHQy8m4CVV0_qEHr-s2GKty4L4bD4nsHJHChQdShQXXZP9IT87qNttfQsjLhTXdfBSdxlV_I-PQ8FA53npo9R552AceemwHATCvAYGm_jiuGTVIn-aCblf48TGOPZPWPjBRPX8N40DvHxs3W6xUi1Y6C9i4S1ej7mRZ-jhpsl2MDXCAZnJlRIg7jZa6RMHZ-dg-NMwkdyQ31xgcCwAvDV0HiOx6mZypy0Xt-UCAHgQICKgoAW-x6u65SZFIHxx_MF1cEf8iTmmAQw0ElLpogb1565fKDYXuPZdrhuJJ2Mv8EfQqpJmdwgXHwrP8cWSeYcjcStzTJ2TBo_zaTnkKTN-I5wURhRd4lW4SPpmd_xPLgGmPQtErEvWRLIHcaA1iIbGWA8PQkiosWTQlR73mVFalZLl2Ew6AgQPwv1slDSQsrRIc9-YSBl9chuhOOOyPweMJQY8xT_u0G00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nhide circle\r\nskinparam LINETYPE ortho\r\n\r\nentity \"posting\" as post {\r\n    * id : INT &lt;&lt;PK&gt;&gt;\r\n    --\r\n    * author_id : INT &lt;&lt;FK&gt;&gt;\r\n    * title : VARCHAR(255)\r\n    slug : VARCHAR(255)\r\n    body : TEXT\r\n}\r\n\r\nentity \"kategori\" as category {\r\n    * id : INT &lt;&lt;PK&gt;&gt;\r\n    --\r\n    * name : VARCHAR(100)\r\n    description : VARCHAR(255)\r\n}\r\n\r\nentity \"pemetaan_post_kategori\" as mapping {\r\n    * post_id : INT &lt;&lt;PK&gt;&gt;&lt;&lt;FK&gt;&gt;\r\n    * category_id : INT &lt;&lt;PK&gt;&gt;&lt;&lt;FK&gt;&gt;\r\n    --\r\n    assigned_at : TIMESTAMP\r\n}\r\n\r\nentity \"komentar\" as comment {\r\n    * id : INT &lt;&lt;PK&gt;&gt;\r\n    --\r\n    * post_id : INT &lt;&lt;FK&gt;&gt;\r\n    author_name : VARCHAR(100)\r\n    * content : TEXT\r\n}\r\n\r\n' Struktur tautan relasional\r\npost ||--o{ mapping : \"berisi\"\r\ncategory ||--o{ mapping : \"mengkategorikan\"\r\npost ||--o{ comment : \"melampirkan\"\r\n@enduml<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:ZPDHQy8m4CVV0_qEHr-s2GKty4L4bD4nsHJHChQdShQXXZP9IT87qNttfQsjLhTXdfBSdxlV_I-PQ8FA53npo9R552AceemwHATCvAYGm_jiuGTVIn-aCblf48TGOPZPWPjBRPX8N40DvHxs3W6xUi1Y6C9i4S1ej7mRZ-jhpsl2MDXCAZnJlRIg7jZa6RMHZ-dg-NMwkdyQ31xgcCwAvDV0HiOx6mZypy0Xt-UCAHgQICKgoAW-x6u65SZFIHxx_MF1cEf8iTmmAQw0ElLpogb1565fKDYXuPZdrhuJJ2Mv8EfQqpJmdwgXHwrP8cWSeYcjcStzTJ2TBo_zaTnkKTN-I5wURhRd4lW4SPpmd_xPLgGmPQtErEvWRLIHcaA1iIbGWA8PQkiosWTQlR73mVFalZLl2Ew6AgQPwv1slDSQsrRIc9-YSBl9chuhOOOyPweMJQY8xT_u0G00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit Plantuml in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:ZPFVQy8m4CVV0_aV3b-s2GKty4L4bD4nsHHnPMnF9Mj36soJabmVdFg_BxK_h9qRzYcN-tBtkU-bKuDCOvucbCGYv1087IIS4hCHCcEQfV0wNxhUvye5fJ5Mb5329GhSGYzJ1aqFc87Y13jAm7vz426COBxqO3nUlKmcvRNZr6cMsphQRwcU6bKVREc4sypxRFtuF5lVFWo7TsNE97bqCV6bmgrDUEw7HycXJHWmv97IWfUOLRYz6bMojCroFnXKBKDk0Yqo54h-GZfqFVBhldxAiap8gAIfWXFCKTiXEZUdAVIFggPdneX8yj1dM9WpNxXltconwZgaqjIUAt_Au6fxki0dY6h7V_fdHr4IYrvdUxk1DKzOuIfB815o0mPr7c2kkQ7a-ChsUyTHkyQyKJ62H2QawL7IBFY2gdeAtxmGjalLKriHGsH1V5HCkGpjR_43\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>Edit Plantuml di VPasCode<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p id=\"uRrOAMH\"><img loading=\"lazy\" alt=\"\" class=\"alignnone size-full wp-image-602\" decoding=\"async\" height=\"293\" loading=\"lazy\" sizes=\"auto, (max-width: 495px) 100vw, 495px\" src=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19013a7b57a.png\" srcset=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19013a7b57a.png 495w, https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a19013a7b57a-300x178.png 300w\" width=\"495\"\/><\/p>\n<p><strong>Analisis Sintaks:<\/strong> Templat ini memodelkan hubungan banyak-ke-banyak klasik antara posting dan kategori. Alih-alih menghubungkannya secara langsung, ia memperkenalkan tabel antara (<code>pemetaan_post_kategori<\/code>) di mana kedua kolom berfungsi sebagai kunci utama komposit. Indikator crow\u2019s foot secara eksplisit memetakan hubungan yang menyebar hingga ke lapisan komentar.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apa itu Diagram Hubungan Entitas (ERD)? Sebuah Diagram Hubungan Entitas (ERD) adalah kerangka struktural yang digunakan untuk merancang, mendokumentasikan, dan menganalisis basis data relasional. Ini memvisualisasikan tabel (entitas) dalam suatu sistem, kolom-kolom tertentu (atribut) yang dimilikinya, dan bagaimana tabel-tabel tersebut&#8230;<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":10,"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-2117","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 ERD Diagram Syntax | VPasCode Text to Diagram Guide<\/title>\n<meta name=\"description\" content=\"Design relational database schemas with PlantUML entity relationship diagrams in VPasCode, a free diagram-as-code tool.\" \/>\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\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PlantUML ERD Diagram Syntax | VPasCode Text to Diagram Guide\" \/>\n<meta property=\"og:description\" content=\"Design relational database schemas with PlantUML entity relationship diagrams in VPasCode, a free diagram-as-code tool.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/\" \/>\n<meta property=\"og:site_name\" content=\"VPasCode\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901022bcfe.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/\",\"name\":\"PlantUML ERD Diagram Syntax | VPasCode Text to Diagram Guide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1901022bcfe.png\",\"datePublished\":\"2026-05-26T07:38:24+00:00\",\"description\":\"Design relational database schemas with PlantUML entity relationship diagrams in VPasCode, a free diagram-as-code tool.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1901022bcfe.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/img_6a1901022bcfe.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/vpascode-docs\\\/plantuml-erd-syntax-guide\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lean Docs\",\"item\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/docs\\\/%ld_collection%\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Panduan Sintaks Diagram Hubungan Entitas PlantUML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#website\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/\",\"name\":\"VPasCode\",\"description\":\"by Visual Paradigm\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#organization\",\"name\":\"VPasCode\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/wp-content\\\/uploads\\\/sites\\\/7\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"contentUrl\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/wp-content\\\/uploads\\\/sites\\\/7\\\/2026\\\/06\\\/cropped-vp-online-logo-v1.png\",\"width\":128,\"height\":138,\"caption\":\"VPasCode\"},\"image\":{\"@id\":\"https:\\\/\\\/www.vpascode.com\\\/id\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PlantUML ERD Diagram Syntax | VPasCode Text to Diagram Guide","description":"Design relational database schemas with PlantUML entity relationship diagrams in VPasCode, a free diagram-as-code tool.","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\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/","og_locale":"id_ID","og_type":"article","og_title":"PlantUML ERD Diagram Syntax | VPasCode Text to Diagram Guide","og_description":"Design relational database schemas with PlantUML entity relationship diagrams in VPasCode, a free diagram-as-code tool.","og_url":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/","og_site_name":"VPasCode","og_image":[{"url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901022bcfe.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Estimasi waktu membaca":"4 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/","url":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/","name":"PlantUML ERD Diagram Syntax | VPasCode Text to Diagram Guide","isPartOf":{"@id":"https:\/\/www.vpascode.com\/id\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901022bcfe.png","datePublished":"2026-05-26T07:38:24+00:00","description":"Design relational database schemas with PlantUML entity relationship diagrams in VPasCode, a free diagram-as-code tool.","breadcrumb":{"@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/#primaryimage","url":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901022bcfe.png","contentUrl":"https:\/\/www.vpascode.com\/wp-content\/uploads\/2026\/05\/img_6a1901022bcfe.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.vpascode.com\/id\/docs\/vpascode-docs\/plantuml-erd-syntax-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vpascode.com\/id\/"},{"@type":"ListItem","position":2,"name":"Lean Docs","item":"https:\/\/www.vpascode.com\/id\/docs\/%ld_collection%\/"},{"@type":"ListItem","position":3,"name":"Panduan Sintaks Diagram Hubungan Entitas PlantUML"}]},{"@type":"WebSite","@id":"https:\/\/www.vpascode.com\/id\/#website","url":"https:\/\/www.vpascode.com\/id\/","name":"VPasCode","description":"by Visual Paradigm","publisher":{"@id":"https:\/\/www.vpascode.com\/id\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vpascode.com\/id\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Organization","@id":"https:\/\/www.vpascode.com\/id\/#organization","name":"VPasCode","url":"https:\/\/www.vpascode.com\/id\/","logo":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.vpascode.com\/id\/#\/schema\/logo\/image\/","url":"https:\/\/www.vpascode.com\/id\/wp-content\/uploads\/sites\/7\/2026\/06\/cropped-vp-online-logo-v1.png","contentUrl":"https:\/\/www.vpascode.com\/id\/wp-content\/uploads\/sites\/7\/2026\/06\/cropped-vp-online-logo-v1.png","width":128,"height":138,"caption":"VPasCode"},"image":{"@id":"https:\/\/www.vpascode.com\/id\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/ld_docs\/2117","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/ld_docs"}],"about":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/types\/ld_docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/users\/4"}],"wp:attachment":[{"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/media?parent=2117"}],"wp:term":[{"taxonomy":"ld_collection","embeddable":true,"href":"https:\/\/www.vpascode.com\/id\/wp-json\/wp\/v2\/ld_collection?post=2117"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}