{"id":12122,"date":"2026-10-13T13:27:33","date_gmt":"2026-10-13T05:27:33","guid":{"rendered":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/"},"modified":"2026-10-14T13:09:00","modified_gmt":"2026-10-14T05:09:00","slug":"uml-class-diagrams-for-data-modeling-with-plantuml","status":"publish","type":"post","link":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/","title":{"rendered":"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML"},"content":{"rendered":"<p data-nodeid=\"15366\">Ein <a href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/uml-class-diagram-tutorial\/\">UML-Klassendiagramm<\/a> beschreibt die <strong data-nodeid=\"15522\">Struktur<\/strong> eines Systems: die Dinge, die es modelliert, deren Eigenschaften und wie sie miteinander in Beziehung stehen. F\u00fcr die Datenmodellierung kann es Dom\u00e4nenkonzepte und Einschr\u00e4nkungen erfassen, bevor Sie sich f\u00fcr Tabellen oder Anwendungscode entscheiden.<\/p>\n<p><img alt=\"UML-Klassendiagramm zur Modellierung der Entit\u00e4ten Kunde, Bestellung und Produkt neben der PlantUML-Syntax und einem vierstufigen Arbeitsablauf f\u00fcr versionierte Datenmodellierung.\" class=\"alignnone size-full wp-image-21887\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbee446b47.jpeg\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbee446b47.jpeg 1402w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbee446b47-300x240.jpeg 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbee446b47-1024x819.jpeg 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbee446b47-768x615.jpeg 768w\" width=\"1402\"\/><\/p>\n<p data-nodeid=\"15367\"><a href=\"https:\/\/www.visual-paradigm.com\/features\/plantuml-editor\/\">PlantUML<\/a> macht das Diagramm reproduzierbar: Sie schreiben Text, rendern ihn, pr\u00fcfen \u00c4nderungen in der Versionskontrolle und aktualisieren ihn, w\u00e4hrend sich das Modell weiterentwickelt. Es erg\u00e4nzt \u2013 ersetzt nicht \u2013 Datenbankschemata, Migrationsvorg\u00e4nge und detaillierte Gesch\u00e4ftsregeln.<\/p>\n<h2 data-nodeid=\"15368\">1. W\u00e4hlen Sie die Modellierungsebene<\/h2>\n<p data-nodeid=\"15369\">Ein n\u00fctzliches Datenmodellierungsdiagramm konzentriert sich in der Regel auf eine Ebene nach der anderen:<\/p>\n<p><img alt=\"Diagramm, das drei Datenmodellierungsebenen veranschaulicht: konzeptionell, logisch und physisch, mit zunehmender Detailtiefe von Gesch\u00e4ftskonzepten bis zur SQL-Implementierung.\" class=\"alignnone size-full wp-image-21890\" decoding=\"async\" height=\"941\" loading=\"lazy\" sizes=\"auto, (max-width: 1672px) 100vw, 1672px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf51130bc.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf51130bc.png 1672w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf51130bc-300x169.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf51130bc-1024x576.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf51130bc-768x432.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf51130bc-1536x864.png 1536w\" width=\"1672\"\/><\/p>\n<ul data-nodeid=\"15370\">\n<li data-nodeid=\"15371\">\n<p data-nodeid=\"15372\"><strong data-nodeid=\"15534\">Konzeptionell:<\/strong> Gesch\u00e4ftskonzepte und Beziehungen mit minimalem technischem Detail. Beispiel: <code data-backticks=\"1\" data-nodeid=\"15530\">Kunde<\/code> legt <code data-backticks=\"1\" data-nodeid=\"15532\">Bestellung<\/code>.<\/p>\n<\/li>\n<li data-nodeid=\"15373\">\n<p data-nodeid=\"15374\"><strong data-nodeid=\"15539\">Logisch:<\/strong> Attribute, Bezeichner, Multiplizit\u00e4ten und Regeln, ohne das Modell an eine spezifische Datenbank zu binden.<\/p>\n<\/li>\n<li data-nodeid=\"15375\">\n<p data-nodeid=\"15376\"><strong data-nodeid=\"15544\">Physisch:<\/strong> Implementierungsdetails wie SQL-Spaltentypen, Indizes und datenbankspezifische Einschr\u00e4nkungen.<\/p>\n<\/li>\n<\/ul>\n<p data-nodeid=\"15377\">Das Beispiel unten ist ein <strong data-nodeid=\"15556\">logisches Dom\u00e4nenmodell<\/strong>. Typen wie <code data-backticks=\"1\" data-nodeid=\"15550\">UUID<\/code>, <code data-backticks=\"1\" data-nodeid=\"15552\">Money<\/code>, und <code data-backticks=\"1\" data-nodeid=\"15554\">DateTime<\/code> sind illustrativ; entscheiden Sie sich f\u00fcr ihre konkreten Darstellungen, wenn Sie eine Technologie ausw\u00e4hlen.<\/p>\n<h2 data-nodeid=\"15378\">2. Grundlagen von PlantUML<\/h2>\n<p data-nodeid=\"15379\">Eine Klasse hat einen Namen und kann Attribute und Operationen auflisten:<\/p>\n<p id=\"pCSWdAu\"><img alt=\"VPasCode-Schnittstelle, die die PlantUML-Syntax f\u00fcr eine Kundenklasse neben dem gerenderten Diagramm mit Attributen und Operationen anzeigt.\" class=\"alignnone size-full wp-image-21891\" decoding=\"async\" height=\"871\" loading=\"lazy\" sizes=\"auto, (max-width: 1916px) 100vw, 1916px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf7ebe781.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf7ebe781.png 1916w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf7ebe781-300x136.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf7ebe781-1024x466.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf7ebe781-768x349.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbf7ebe781-1536x698.png 1536w\" width=\"1916\"\/><\/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:SoWkIImgAStDuULApaaiBbPmBYqkoSzDBLAevkLIKD3DJB5I20trT05njFCISrEj589BYZBpqi42gRc9cJae8iaPYNdfgQuWSOsyr79NP0MQLWfb-Pafl5orl5mEgNafG5i1\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\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:SoWkIImgAStDuULApaaiBbPmBYqkoSzDBLAevkLIKD3DJB5I20trT05njFCISrEj589BYZBpqi42gRc9cJae8iaPYNdfgQuWSOsyr79NP0MQLWfb-Pafl5orl5mEgNafG5i1\" 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>PlantUML in VPasCode bearbeiten<\/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:SoWkIImgAStDuULApaaiBbPmBYqkoSzDBLAevkLIKD3DJB5I20trT05njFCISrEj589BYZBpqi42gRc9cJae8iaPYNdfgQuWSOsyr79NP0MQLWfb-Pafl5orl5mEgNafG5i1\" \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\" data-nodeid=\"15380\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nclass Customer {\r\n  -id: UUID\r\n  +name: String\r\n  +email: String\r\n  +changeEmail(newEmail: String): void\r\n}\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:SoWkIImgAStDuULApaaiBbPmBYqkoSzDBLAevkLIKD3DJB5I20trT05njFCISrEj589BYZBpqi42gRc9cJae8iaPYNdfgQuWSOsyr79NP0MQLWfb-Pafl5orl5mEgNafG5i1\" \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:SoWkIImgAStDuULApaaiBbPmBYqkoSzDBLAevkLIKD3DJB5I20trT05njFCISrEj589BYZBpqi42gRc9cJae8iaPYNdfgQuWSOsyr79NP0MQLWfb-Pafl5orl5mEgNafG5i1\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:SoWkIImgAStDuULApaaiBbPmBYqkoSzDBLAevkLIKD3DJB5I20trT05njFCISrEj589BYZBpqi42gRc9cJae8iaPYNdfgQuWSOsyr79NP0MQLWfb-Pafl5orl5mEgNafG5i1\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"15381\">Sichtbarkeitsmarker sind optionale Modellierungshinweise:<\/p>\n<p><img alt=\"Infografik zu UML-Sichtbarkeitsmarkern, die Plus-, Minus-, Raute- und Tilden-Symbole f\u00fcr die Zugriffsstufen \u00f6ffentlich, privat, gesch\u00fctzt und Paket zeigt.\" class=\"alignnone size-full wp-image-21893\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbfd2a37c7.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbfd2a37c7.png 1402w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbfd2a37c7-300x240.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbfd2a37c7-1024x819.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdbfd2a37c7-768x615.png 768w\" width=\"1402\"\/><\/p>\n<ul data-nodeid=\"15382\">\n<li data-nodeid=\"15383\">\n<p data-nodeid=\"15384\"><code data-backticks=\"1\" data-nodeid=\"15560\">+<\/code> public<\/p>\n<\/li>\n<li data-nodeid=\"15385\">\n<p data-nodeid=\"15386\"><code data-backticks=\"1\" data-nodeid=\"15562\">-<\/code> private<\/p>\n<\/li>\n<li data-nodeid=\"15387\">\n<p data-nodeid=\"15388\"><code data-backticks=\"1\" data-nodeid=\"15564\">#<\/code> protected<\/p>\n<\/li>\n<li data-nodeid=\"15389\">\n<p data-nodeid=\"15390\"><code data-backticks=\"1\" data-nodeid=\"15566\">~<\/code> Paket-Sichtbarkeit<\/p>\n<\/li>\n<\/ul>\n<p data-nodeid=\"15391\">F\u00fcr ein Dom\u00e4nen- oder Daten-Diagramm sind Attribute am wichtigsten. F\u00fcgen Sie Operationen nur hinzu, wenn sie wichtiges Verhalten verdeutlichen; vermeiden Sie es, das Diagramm in eine vollst\u00e4ndige Code-Auflistung zu verwandeln.<\/p>\n<h2 data-nodeid=\"15392\">3. Beziehungen und Multiplizit\u00e4t<\/h2>\n<p data-nodeid=\"15393\">Die n\u00fctzlichsten Beziehungsnotationen f\u00fcr die Datenmodellierung sind:<\/p>\n<p><img alt=\"UML-Diagramm, das Beziehungstypen wie Assoziation und Aggregation veranschaulicht, zusammen mit Multiplizit\u00e4tsnotationen wie 0..1 und 0..* anhand eines Kunden-Bestellungs-Beispiels.\" class=\"alignnone size-full wp-image-21894\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc017126a5.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc017126a5.png 1402w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc017126a5-300x240.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc017126a5-1024x819.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc017126a5-768x615.png 768w\" width=\"1402\"\/><\/p>\n<table data-nodeid=\"15395\">\n<thead data-nodeid=\"15396\">\n<tr data-nodeid=\"15397\">\n<th data-nodeid=\"15399\">Beziehung<\/th>\n<th data-nodeid=\"15400\">PlantUML<\/th>\n<th data-nodeid=\"15401\">Bedeutung<\/th>\n<\/tr>\n<\/thead>\n<tbody data-nodeid=\"15405\">\n<tr data-nodeid=\"15406\">\n<td data-nodeid=\"15407\">Assoziation<\/td>\n<td data-nodeid=\"15408\"><code data-backticks=\"1\" data-nodeid=\"15575\">A -- B<\/code><\/td>\n<td data-nodeid=\"15409\">Zwischen A und B besteht eine Beziehung<\/td>\n<\/tr>\n<tr data-nodeid=\"15410\">\n<td data-nodeid=\"15411\">Gerichtete Assoziation<\/td>\n<td data-nodeid=\"15412\"><code data-backticks=\"1\" data-nodeid=\"15578\">A --&gt; B<\/code><\/td>\n<td data-nodeid=\"15413\">Eine navigierbare oder gerichtete Beziehung<\/td>\n<\/tr>\n<tr data-nodeid=\"15414\">\n<td data-nodeid=\"15415\">Aggregation<\/td>\n<td data-nodeid=\"15416\"><code data-backticks=\"1\" data-nodeid=\"15581\">A o-- B<\/code><\/td>\n<td data-nodeid=\"15417\">A hat einen Teil, aber der Teil kann unabh\u00e4ngig existieren<\/td>\n<\/tr>\n<tr data-nodeid=\"15418\">\n<td data-nodeid=\"15419\">Komposition<\/td>\n<td data-nodeid=\"15420\"><code data-backticks=\"1\" data-nodeid=\"15584\">A *-- B<\/code><\/td>\n<td data-nodeid=\"15421\">A besitzt einen Teil, dessen Lebenszyklus davon abh\u00e4ngt<\/td>\n<\/tr>\n<tr data-nodeid=\"15422\">\n<td data-nodeid=\"15423\">Verallgemeinerung<\/td>\n<td data-nodeid=\"15424\">`Child \u2014<\/td>\n<td data-nodeid=\"15425\">&gt; Parent`<\/td>\n<\/tr>\n<tr data-nodeid=\"15427\">\n<td data-nodeid=\"15428\">Schnittstellenrealisierung<\/td>\n<td data-nodeid=\"15429\">`Class ..<\/td>\n<td data-nodeid=\"15430\">&gt; Interface`<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p data-nodeid=\"15432\">Multiplizit\u00e4tsbeschriftungen befinden sich in der N\u00e4he der Assoziationsenden:<\/p>\n<ul data-nodeid=\"15433\">\n<li data-nodeid=\"15434\">\n<p data-nodeid=\"15435\"><code data-backticks=\"1\" data-nodeid=\"15597\">1<\/code> \u2014 genau eines<\/p>\n<\/li>\n<li data-nodeid=\"15436\">\n<p data-nodeid=\"15437\"><code data-backticks=\"1\" data-nodeid=\"15599\">0..1<\/code> \u2014 optional, h\u00f6chstens eines<\/p>\n<\/li>\n<li data-nodeid=\"15438\">\n<p data-nodeid=\"15439\"><code data-backticks=\"1\" data-nodeid=\"15601\">*<\/code> oder <code data-backticks=\"1\" data-nodeid=\"15603\">0..*<\/code> \u2014 null oder mehr<\/p>\n<\/li>\n<li data-nodeid=\"15440\">\n<p data-nodeid=\"15441\"><code data-backticks=\"1\" data-nodeid=\"15605\">1..*<\/code> \u2014 eines oder mehr<\/p>\n<\/li>\n<li data-nodeid=\"15442\">\n<p data-nodeid=\"15443\"><code data-backticks=\"1\" data-nodeid=\"15607\">2..5<\/code> \u2014 ein begrenzter Bereich<\/p>\n<\/li>\n<\/ul>\n<p data-nodeid=\"15444\">Zum Beispiel:<\/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:SoujBidFJIrIK39KKj3LLL0oqDFJKbBmBqe1Ybaf5EGa9gSM0m00\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\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:SoujBidFJIrIK39KKj3LLL0oqDFJKbBmBqe1Ybaf5EGa9gSM0m00\" 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>PlantUML in VPasCode bearbeiten<\/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:yoxDIqbLK39KKj3LLL0oqDFJKb9mIYqkISt9ASrBLx1Io4bDBr58p0C0\" \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\" data-nodeid=\"15445\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">Kunde \"1\" -- \"0..*\" Bestellung : legt an\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:yoxDIqbLK39KKj3LLL0oqDFJKb9mIYqkISt9ASrBLx1Io4bDBr58p0C0\" \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:SoujBidFJIrIK39KKj3LLL0oqDFJKbBmBqe1Ybaf5EGa9gSM0m00\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:SoujBidFJIrIK39KKj3LLL0oqDFJKbBmBqe1Ybaf5EGa9gSM0m00\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"15446\">Lesen Sie die Beschriftungen an beiden Enden sorgf\u00e4ltig: Ein Kunde kann null oder mehr Bestellungen aufgeben; jede Bestellung ist genau einem Kunden zugeordnet. Die Beschriftungen beschreiben die Beziehung, nicht notwendigerweise die Fremdschl\u00fcssel-Implementierung einer bestimmten Datenbank.<\/p>\n<h2 data-nodeid=\"15447\">4. Durchgerechnetes Beispiel: Online-Shop<\/h2>\n<p data-nodeid=\"15448\">Dieses Modell umfasst Kunden, Bestellungen, Positionszeilen, Produkte und Zahlungsaufzeichnungen. Es veranschaulicht Bezeichner, wert\u00e4hnliche Typen, ein Enum, Komposition und Multiplizit\u00e4ten.<\/p>\n<p id=\"uuxvPiM\"><img alt=\"PlantUML-Code und das daraus resultierende UML-Klassendiagramm, das ein Online-Shop-Modell mit den Entit\u00e4ten Kunde, Bestellung, Bestellposition, Produkt und Zahlung zeigt.\" class=\"alignnone size-full wp-image-21896\" decoding=\"async\" height=\"867\" loading=\"lazy\" sizes=\"auto, (max-width: 1913px) 100vw, 1913px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc05b51931.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc05b51931.png 1913w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc05b51931-300x136.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc05b51931-1024x464.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc05b51931-768x348.png 768w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc05b51931-1536x696.png 1536w\" width=\"1913\"\/><\/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:VLHBRzim3Bu7o7yWSkoGeBqQHL4ZZyrObWP9VDcmWs8piLPByYIwHJhilqyFExRNOIVp-P7yIFdH4DDKYnBsXQeMIZ0knoFpp6N5D1EGbSoOc4ZpOqsOP4hk-Hl2RJ_652nNhroUuSHAW-FHU5Jm744W5IetJlSmCAyDAO4QVer701-oHato2D8qMNWZsWxA29Rk4-UvHcEyFUUcAjbbmmH6iBVzoFDuzBl3VjBv5LWvUO1gKpFCOufWmGWFNA0ts-6fDb58tdl5sqaHiqryKH8lxwkikSIcKcd5JIsEg2D89E4PjRV_h9aaJfS8jifmuY_OzzQIqrRp3FzLOgjLNcVK5AY2DXZ6FDUMWi-fL-I04C-grYZ_WyykmlfR_A0Dy9bGjQHhRe-d9hV7LCNuW5RuTZkRtNqVLFGuS7__mieQGHr_O4OF3qq3RR45PbomiZT2PjcRDz9SvTXWegn5Vs41Px6BLmSdRDVnVEddsCPXdbMwNYNhTJ3Euyry6PGERJ1MmDikDujayz69SNhuzBHBlhO0sqEw2_8gJXhOtNALRXPNrEkXJ-ucC9t2n99oCsbkD09_ZPQ_eBkO6nTqrmNv4ul0FZUo3x8DzTO6Qpfzy9djkKIWyOJQ0Aa-S5UytRijtqYC24L5rqOSvE0bj2dEyTVgktwSCsmu0dVOKBdB6oQt_h1inv1KXA3vkI1GfsvcnsNxTa1O5k68SDPehqi35Kp26shbegvl2BYTkS1G5Z9MKQqnTo6l1Khlyly35nT-0sxhERWEtdVIqEbF88Yp_eC2mIwGsJxEE7Cn2K6kq3Wmox-7xuQPNNkSzKi-Mj7-SFy0\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\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:VLHBRzim3Bu7o7yWSkoGeBqQHL4ZZyrObWP9VDcmWs8piLPByYIwHJhilqyFExRNOIVp-P7yIFdH4DDKYnBsXQeMIZ0knoFpp6N5D1EGbSoOc4ZpOqsOP4hk-Hl2RJ_652nNhroUuSHAW-FHU5Jm744W5IetJlSmCAyDAO4QVer701-oHato2D8qMNWZsWxA29Rk4-UvHcEyFUUcAjbbmmH6iBVzoFDuzBl3VjBv5LWvUO1gKpFCOufWmGWFNA0ts-6fDb58tdl5sqaHiqryKH8lxwkikSIcKcd5JIsEg2D89E4PjRV_h9aaJfS8jifmuY_OzzQIqrRp3FzLOgjLNcVK5AY2DXZ6FDUMWi-fL-I04C-grYZ_WyykmlfR_A0Dy9bGjQHhRe-d9hV7LCNuW5RuTZkRtNqVLFGuS7__mieQGHr_O4OF3qq3RR45PbomiZT2PjcRDz9SvTXWegn5Vs41Px6BLmSdRDVnVEddsCPXdbMwNYNhTJ3Euyry6PGERJ1MmDikDujayz69SNhuzBHBlhO0sqEw2_8gJXhOtNALRXPNrEkXJ-ucC9t2n99oCsbkD09_ZPQ_eBkO6nTqrmNv4ul0FZUo3x8DzTO6Qpfzy9djkKIWyOJQ0Aa-S5UytRijtqYC24L5rqOSvE0bj2dEyTVgktwSCsmu0dVOKBdB6oQt_h1inv1KXA3vkI1GfsvcnsNxTa1O5k68SDPehqi35Kp26shbegvl2BYTkS1G5Z9MKQqnTo6l1Khlyly35nT-0sxhERWEtdVIqEbF88Yp_eC2mIwGsJxEE7Cn2K6kq3Wmox-7xuQPNNkSzKi-Mj7-SFy0\" 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>PlantUML in VPasCode bearbeiten<\/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:VLHBRzim3Bu7o7yWSkoGeBqQHL4ZZyrObWP9VDcmWs8piLPByYIwHJhilqyFExRNOIVp-P7yIFdH4DDKYnBsXQeMIZ0knoFpp6N5D1EGbSoOc4ZpOqsOP4hk-Hl2RJ_652nNhroUuSHAW-FHU5Jm744W5IetJlSmCAyDAO4QVer701-oHato2D8qMNWZsWxA29Rk4-UvHcEyFUUcAjbbmmH6iBVzoFDuzBl3VjBv5LWvUO1gKpFCOufWmGWFNA0ts-6fDb58tdl5sqaHiqryKH8lxwkikSIcKcd5JIsEg2D89E4PjRV_h9aaJfS8jifmuY_OzzQIqrRp3FzLOgjLNcVK5AY2DXZ6FDUMWi-fL-I04C-grYZ_WyykmlfR_A0Dy9bGjQHhRe-d9hV7LCNuW5RuTZkRtNqVLFGuS7__mieQGHr_O4OF3qq3RR45PbomiZT2PjcRDz9SvTXWegn5Vs41Px6BLmSdRDVnVEddsCPXdbMwNYNhTJ3Euyry6PGERJ1MmDikDujayz69SNhuzBHBlhO0sqEw2_8gJXhOtNALRXPNrEkXJ-ucC9t2n99oCsbkD09_ZPQ_eBkO6nTqrmNv4ul0FZUo3x8DzTO6Qpfzy9djkKIWyOJQ0Aa-S5UytRijtqYC24L5rqOSvE0bj2dEyTVgktwSCsmu0dVOKBdB6oQt_h1inv1KXA3vkI1GfsvcnsNxTa1O5k68SDPehqi35Kp26shbegvl2BYTkS1G5Z9MKQqnTo6l1Khlyly35nT-0sxhERWEtdVIqEbF88Yp_eC2mIwGsJxEE7Cn2K6kq3Wmox-7xuQPNNkSzKi-Mj7-SFy0\" \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\" data-nodeid=\"15449\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml ShopDomain\r\nskinparam classAttributeIconSize 0\r\nskinparam shadowing false\r\n\r\nhide methods\r\n\r\nclass Customer {\r\n  +customerId: UUID\r\n  +email: EmailAddress\r\n  +displayName: String\r\n}\r\n\r\nclass Order {\r\n  +orderId: UUID\r\n  +placedAt: DateTime\r\n  +status: OrderStatus\r\n  +total: Money\r\n}\r\n\r\nclass OrderLine {\r\n  +lineNumber: Integer\r\n  +quantity: PositiveInteger\r\n  +unitPrice: Money\r\n}\r\n\r\nclass Product {\r\n  +productId: UUID\r\n  +sku: SKU\r\n  +name: String\r\n  +currentPrice: Money\r\n}\r\n\r\nclass Payment {\r\n  +paymentId: UUID\r\n  +amount: Money\r\n  +status: PaymentStatus\r\n  +paidAt: DateTime [0..1]\r\n}\r\n\r\nclass Money &lt;&lt;value object&gt;&gt; {\r\n  +amount: Decimal\r\n  +currency: CurrencyCode\r\n}\r\n\r\nenum OrderStatus {\r\n  DRAFT\r\n  PLACED\r\n  PAID\r\n  FULFILLED\r\n  CANCELLED\r\n}\r\n\r\nenum PaymentStatus {\r\n  PENDING\r\n  AUTHORIZED\r\n  CAPTURED\r\n  FAILED\r\n  REFUNDED\r\n}\r\n\r\nCustomer \"1\" -- \"0..*\" Order : places\r\nOrder \"1\" *-- \"1..*\" OrderLine : contains\r\nOrderLine \"0..*\" --&gt; \"1\" Product : refers to\r\nOrder \"1\" -- \"0..*\" Payment : payment attempts\r\nOrder --&gt; OrderStatus\r\nPayment --&gt; PaymentStatus\r\nOrderLine --&gt; Money : unit price\r\nPayment --&gt; Money : amount\r\n\r\nnote right of OrderLine\r\n  quantity must be greater than zero\r\n  unitPrice is the price captured\r\n  when the order is placed\r\nend note\r\n\r\nnote right of Product\r\n  Product.currentPrice may change.\r\n  It does not replace OrderLine.unitPrice.\r\nend note\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:VLHBRzim3Bu7o7yWSkoGeBqQHL4ZZyrObWP9VDcmWs8piLPByYIwHJhilqyFExRNOIVp-P7yIFdH4DDKYnBsXQeMIZ0knoFpp6N5D1EGbSoOc4ZpOqsOP4hk-Hl2RJ_652nNhroUuSHAW-FHU5Jm744W5IetJlSmCAyDAO4QVer701-oHato2D8qMNWZsWxA29Rk4-UvHcEyFUUcAjbbmmH6iBVzoFDuzBl3VjBv5LWvUO1gKpFCOufWmGWFNA0ts-6fDb58tdl5sqaHiqryKH8lxwkikSIcKcd5JIsEg2D89E4PjRV_h9aaJfS8jifmuY_OzzQIqrRp3FzLOgjLNcVK5AY2DXZ6FDUMWi-fL-I04C-grYZ_WyykmlfR_A0Dy9bGjQHhRe-d9hV7LCNuW5RuTZkRtNqVLFGuS7__mieQGHr_O4OF3qq3RR45PbomiZT2PjcRDz9SvTXWegn5Vs41Px6BLmSdRDVnVEddsCPXdbMwNYNhTJ3Euyry6PGERJ1MmDikDujayz69SNhuzBHBlhO0sqEw2_8gJXhOtNALRXPNrEkXJ-ucC9t2n99oCsbkD09_ZPQ_eBkO6nTqrmNv4ul0FZUo3x8DzTO6Qpfzy9djkKIWyOJQ0Aa-S5UytRijtqYC24L5rqOSvE0bj2dEyTVgktwSCsmu0dVOKBdB6oQt_h1inv1KXA3vkI1GfsvcnsNxTa1O5k68SDPehqi35Kp26shbegvl2BYTkS1G5Z9MKQqnTo6l1Khlyly35nT-0sxhERWEtdVIqEbF88Yp_eC2mIwGsJxEE7Cn2K6kq3Wmox-7xuQPNNkSzKi-Mj7-SFy0\" \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:VLHBRzim3Bu7o7yWSkoGeBqQHL4ZZyrObWP9VDcmWs8piLPByYIwHJhilqyFExRNOIVp-P7yIFdH4DDKYnBsXQeMIZ0knoFpp6N5D1EGbSoOc4ZpOqsOP4hk-Hl2RJ_652nNhroUuSHAW-FHU5Jm744W5IetJlSmCAyDAO4QVer701-oHato2D8qMNWZsWxA29Rk4-UvHcEyFUUcAjbbmmH6iBVzoFDuzBl3VjBv5LWvUO1gKpFCOufWmGWFNA0ts-6fDb58tdl5sqaHiqryKH8lxwkikSIcKcd5JIsEg2D89E4PjRV_h9aaJfS8jifmuY_OzzQIqrRp3FzLOgjLNcVK5AY2DXZ6FDUMWi-fL-I04C-grYZ_WyykmlfR_A0Dy9bGjQHhRe-d9hV7LCNuW5RuTZkRtNqVLFGuS7__mieQGHr_O4OF3qq3RR45PbomiZT2PjcRDz9SvTXWegn5Vs41Px6BLmSdRDVnVEddsCPXdbMwNYNhTJ3Euyry6PGERJ1MmDikDujayz69SNhuzBHBlhO0sqEw2_8gJXhOtNALRXPNrEkXJ-ucC9t2n99oCsbkD09_ZPQ_eBkO6nTqrmNv4ul0FZUo3x8DzTO6Qpfzy9djkKIWyOJQ0Aa-S5UytRijtqYC24L5rqOSvE0bj2dEyTVgktwSCsmu0dVOKBdB6oQt_h1inv1KXA3vkI1GfsvcnsNxTa1O5k68SDPehqi35Kp26shbegvl2BYTkS1G5Z9MKQqnTo6l1Khlyly35nT-0sxhERWEtdVIqEbF88Yp_eC2mIwGsJxEE7Cn2K6kq3Wmox-7xuQPNNkSzKi-Mj7-SFy0\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:VLHBRzim3Bu7o7yWSkoGeBqQHL4ZZyrObWP9VDcmWs8piLPByYIwHJhilqyFExRNOIVp-P7yIFdH4DDKYnBsXQeMIZ0knoFpp6N5D1EGbSoOc4ZpOqsOP4hk-Hl2RJ_652nNhroUuSHAW-FHU5Jm744W5IetJlSmCAyDAO4QVer701-oHato2D8qMNWZsWxA29Rk4-UvHcEyFUUcAjbbmmH6iBVzoFDuzBl3VjBv5LWvUO1gKpFCOufWmGWFNA0ts-6fDb58tdl5sqaHiqryKH8lxwkikSIcKcd5JIsEg2D89E4PjRV_h9aaJfS8jifmuY_OzzQIqrRp3FzLOgjLNcVK5AY2DXZ6FDUMWi-fL-I04C-grYZ_WyykmlfR_A0Dy9bGjQHhRe-d9hV7LCNuW5RuTZkRtNqVLFGuS7__mieQGHr_O4OF3qq3RR45PbomiZT2PjcRDz9SvTXWegn5Vs41Px6BLmSdRDVnVEddsCPXdbMwNYNhTJ3Euyry6PGERJ1MmDikDujayz69SNhuzBHBlhO0sqEw2_8gJXhOtNALRXPNrEkXJ-ucC9t2n99oCsbkD09_ZPQ_eBkO6nTqrmNv4ul0FZUo3x8DzTO6Qpfzy9djkKIWyOJQ0Aa-S5UytRijtqYC24L5rqOSvE0bj2dEyTVgktwSCsmu0dVOKBdB6oQt_h1inv1KXA3vkI1GfsvcnsNxTa1O5k68SDPehqi35Kp26shbegvl2BYTkS1G5Z9MKQqnTo6l1Khlyly35nT-0sxhERWEtdVIqEbF88Yp_eC2mIwGsJxEE7Cn2K6kq3Wmox-7xuQPNNkSzKi-Mj7-SFy0\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"15450\"><strong data-nodeid=\"15619\">Warum modellieren <code data-backticks=\"1\" data-nodeid=\"15615\">OrderLine<\/code> explizit?<\/strong> Die Beziehung zwischen einer Bestellung und einem Produkt verf\u00fcgt \u00fcber eigene Daten \u2013 Menge und Preis zum Zeitpunkt des Kaufs. Dies macht sie zu einem Dom\u00e4nenkonzept und nicht nur zu einer einfachen Verbindung.<\/p>\n<p data-nodeid=\"15451\"><strong data-nodeid=\"15628\">Warum Komposition von <code data-backticks=\"1\" data-nodeid=\"15622\">Order<\/code> zu <code data-backticks=\"1\" data-nodeid=\"15624\">OrderLine<\/code>?<\/strong> Das Beispiel geht davon aus, dass eine Positionszeile zu einer Bestellung geh\u00f6rt und nicht eigenst\u00e4ndig sinnvoll ist. Verwenden Sie Komposition nur, wenn diese Eigentums- und Lebenszyklusregel in Ihrer Dom\u00e4ne zutrifft; die UML-Notation erzwingt dies nicht in der Datenbank.<\/p>\n<p data-nodeid=\"15452\"><strong data-nodeid=\"15633\">Warum zwischen aktuellen und historischen Preisen unterscheiden?<\/strong> Der Preis eines Produkts kann sich nach Aufgeben einer Bestellung \u00e4ndern. Die Beibehaltung eines Preises zum Kaufzeitpunkt auf der Positionszeile bewahrt den historischen Betrag.<\/p>\n<h2 data-nodeid=\"15453\">5. Modellierungsentscheidungen, die wichtig sind<\/h2>\n<p><img alt=\"Infografik zur UML-Datenmodellierung, die sechs Schl\u00fcsselentscheidungen veranschaulicht: Bezeichner, optionale Werte, Wertobjekte, Enums, Modell versus Implementierung und Lesbarkeit.\" class=\"alignnone size-full wp-image-21897\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc0b054731.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc0b054731.png 1402w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc0b054731-300x240.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc0b054731-1024x819.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc0b054731-768x615.png 768w\" width=\"1402\"\/><\/p>\n<p data-nodeid=\"15454\"><strong data-nodeid=\"15643\">Bezeichner:<\/strong> Markieren Sie Bezeichner konsistent, z. B. <code data-backticks=\"1\" data-nodeid=\"15639\">customerId<\/code> oder <code data-backticks=\"1\" data-nodeid=\"15641\">orderId<\/code>. UML definiert keine einzelne universelle Notation f\u00fcr Prim\u00e4rschl\u00fcssel, w\u00e4hlen Sie also eine Konvention und dokumentieren Sie diese. Ein Stereotyp oder eine Notiz kann dies explizit machen:<\/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:Iyv9B2vMS2ujBidFJIrIgERbKb3GJePoFLEi5493FLqKR6m2lEtim7AfkOcPELOAhY3ACIMbABMuc9Uh5W00\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\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:Iyv9B2vMS2ujBidFJIrIgERbKb3GJePoFLEi5493FLqKR6m2lEtim7AfkOcPELOAhY3ACIMbABMuc9Uh5W00\" 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>PlantUML in VPasCode bearbeiten<\/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:Iyv9B2vMS2ujBidFJIrIgERbKb3GJePoFLEi5493FLqKR6m2lEtim7AfkOcPELOAhY3ACIMbABMuc9Uh5W00\" \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\" data-nodeid=\"15455\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">class Customer {\r\n  +customerId: UUID &lt;&lt;PK&gt;&gt;\r\n  +email: EmailAddress\r\n}\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:Iyv9B2vMS2ujBidFJIrIgERbKb3GJePoFLEi5493FLqKR6m2lEtim7AfkOcPELOAhY3ACIMbABMuc9Uh5W00\" \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:Iyv9B2vMS2ujBidFJIrIgERbKb3GJePoFLEi5493FLqKR6m2lEtim7AfkOcPELOAhY3ACIMbABMuc9Uh5W00\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com\/editor\/#plantuml:Iyv9B2vMS2ujBidFJIrIgERbKb3GJePoFLEi5493FLqKR6m2lEtim7AfkOcPELOAhY3ACIMbABMuc9Uh5W00\" 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>PlantUML in VPasCode bearbeiten<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<p data-nodeid=\"15456\"><strong data-nodeid=\"15652\">Optionale Werte:<\/strong> Verwenden Sie <code data-backticks=\"1\" data-nodeid=\"15648\">[0..1]<\/code> f\u00fcr ein optionales Attribut, wenn dies f\u00fcr Ihre Leser klar ist, oder notieren Sie die Regel. Ein Beispiel: Eine Zahlung hat m\u00f6glicherweise keinen <code data-backticks=\"1\" data-nodeid=\"15650\">paidAt<\/code> Zeitstempel, bis sie erfolgreich ist.<\/p>\n<p data-nodeid=\"15457\"><strong data-nodeid=\"15661\">Wertobjekte:<\/strong> Ein Typ wie <code data-backticks=\"1\" data-nodeid=\"15657\">Money<\/code> oder <code data-backticks=\"1\" data-nodeid=\"15659\">EmailAddress<\/code> kann ein Konzept mit eigener Validierung oder Semantik darstellen. Entscheiden Sie je nach Zielgruppe und Detaillierungsgrad, ob es als separate Klasse, als Attributtyp oder als Datenbankstruktur erscheinen soll.<\/p>\n<p data-nodeid=\"15458\"><strong data-nodeid=\"15666\">Enums und kontrollierte Werte:<\/strong> Verwenden Sie ein Enum, wenn die zul\u00e4ssige Menge klein und relativ stabil ist. Wenn Werte unabh\u00e4ngige Beschreibungen, Lebenszyklen oder eine Verwaltung ben\u00f6tigen, modellieren Sie sie stattdessen als Klasse.<\/p>\n<p data-nodeid=\"15459\"><strong data-nodeid=\"15673\">Normalisierung und Implementierung:<\/strong> Ein Klassendiagramm vermittelt Konzepte und Regeln; es regelt nicht jedes relationalen Detail. Ob beispielsweise <code data-backticks=\"1\" data-nodeid=\"15671\">Money<\/code> zu zwei Spalten, einer separaten Tabelle oder einem datenbankspezifischen Typ wird, ist eine Implementierungsentscheidung.<\/p>\n<p data-nodeid=\"15460\"><strong data-nodeid=\"15678\">Halten Sie Diagramme lesbar:<\/strong> Teilen Sie ein gro\u00dfes Dom\u00e4nenmodell in fokussierte Diagramme auf \u2013 z. B. Bestellung, Lagerbestand und Identit\u00e4t \u2013 und verwenden Sie Pakete, um verwandte Klassen zu gruppieren. Zeigen Sie nur Attribute, die f\u00fcr die Frage relevant sind, die das Diagramm beantworten soll.<\/p>\n<h2 data-nodeid=\"15461\">6. Erstellen Sie ein Modell aus Anforderungen<\/h2>\n<p><img alt=\"Sechsstufige Infografik, die zeigt, wie man ein UML-Modell aus Anforderungen erstellt, einschlie\u00dflich Konzeptextraktion, Regelkl\u00e4rung und \u00dcberpr\u00fcfung von Randf\u00e4llen.\" class=\"alignnone size-full wp-image-21900\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc15b38d4a.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc15b38d4a.png 1402w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc15b38d4a-300x240.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc15b38d4a-1024x819.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc15b38d4a-768x615.png 768w\" width=\"1402\"\/><\/p>\n<ol data-nodeid=\"15462\">\n<li data-nodeid=\"15463\">\n<p data-nodeid=\"15464\"><strong data-nodeid=\"15684\">Extrahieren Sie Kandidatenkonzepte<\/strong> aus der Dom\u00e4nensprache: Substantive deuten oft auf Klassen hin; Verben deuten oft auf Beziehungen oder Verhalten hin.<\/p>\n<\/li>\n<li data-nodeid=\"15465\">\n<p data-nodeid=\"15466\"><strong data-nodeid=\"15689\">Regeln kl\u00e4ren<\/strong> mit konkreten Fragen: Kann eine Bestellung ohne einen Kunden existieren? Kann sie null Positionen haben? Kann eine Zahlung wiederholt werden?<\/p>\n<\/li>\n<li data-nodeid=\"15467\">\n<p data-nodeid=\"15468\"><strong data-nodeid=\"15694\">Modellierungsebene w\u00e4hlen<\/strong> und halten Sie technische Datenbankentscheidungen von einem konzeptionellen Diagramm fern.<\/p>\n<\/li>\n<li data-nodeid=\"15469\">\n<p data-nodeid=\"15470\"><strong data-nodeid=\"15699\">Attribute und Bezeichner hinzuf\u00fcgen<\/strong> nur wenn sie dazu beitragen, das Modell zu erkl\u00e4ren.<\/p>\n<\/li>\n<li data-nodeid=\"15471\">\n<p data-nodeid=\"15472\"><strong data-nodeid=\"15704\">Multiplizit\u00e4ten festlegen<\/strong> aus den Gesch\u00e4ftsregeln, wobei beide Enden jeder Beziehung zu pr\u00fcfen sind.<\/p>\n<\/li>\n<li data-nodeid=\"15473\">\n<p data-nodeid=\"15474\"><strong data-nodeid=\"15709\">Randf\u00e4lle \u00fcberpr\u00fcfen<\/strong>: L\u00f6schung, historische Datens\u00e4tze, optionale Felder, wiederholte Versuche und sich \u00e4ndernde Werte.<\/p>\n<\/li>\n<li data-nodeid=\"15475\">\n<p data-nodeid=\"15476\"><strong data-nodeid=\"15714\">Darstellen und \u00fcberpr\u00fcfen<\/strong> das Diagramm mit Dom\u00e4nenexperten und Umsetzern. Betrachten Sie es als ein zu validierendes Modell, nicht blo\u00df als ein zu genehmigendes Bild.<\/p>\n<\/li>\n<\/ol>\n<h2 data-nodeid=\"15477\">7. Verwenden Sie VPasCode und Visual Paradigm<\/h2>\n<p data-nodeid=\"15478\"><a href=\"https:\/\/www.visual-paradigm.com\/features\/vpascode\/\"><strong data-nodeid=\"15720\">VPasCode<\/strong><\/a> ist ein browserbasierter<a href=\"https:\/\/www.visual-paradigm.com\/features\/diagram-as-code-tool\/\"> Text-zu-Diagramm-Editor mit PlantUML-Unterst\u00fctzung<\/a> und eine Live-Vorschau. Die Funktionsbeschreibung listet zudem die KI-Generierung und -Modifikation von Diagrammcode sowie Syntax-Hilfe auf. Ein praktischer Arbeitsablauf ist:<\/p>\n<p><img alt=\"F\u00fcnfstufiger Arbeitsablauf-Diagramm, das zeigt, wie man UML-Klassendiagramme mit VPasCode und Visual Paradigm schreibt, vorschaut, verfeinert, generiert und validiert.\" class=\"alignnone size-full wp-image-21906\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1b31fa5f.png\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1b31fa5f.png 1402w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1b31fa5f-300x240.png 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1b31fa5f-1024x819.png 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1b31fa5f-768x615.png 768w\" width=\"1402\"\/><\/p>\n<ol data-nodeid=\"15479\">\n<li data-nodeid=\"15480\">\n<p data-nodeid=\"15481\">\u00d6ffnen Sie VPasCode und w\u00e4hlen Sie oder geben Sie PlantUML ein.<\/p>\n<\/li>\n<li data-nodeid=\"15482\">\n<p data-nodeid=\"15483\">F\u00fcgen Sie das obige Beispiel ein und pr\u00fcfen Sie das gerenderte Diagramm.<\/p>\n<\/li>\n<li data-nodeid=\"15484\">\n<p data-nodeid=\"15485\">Iterieren Sie an der PlantUML-Quelle; behalten Sie den Text als versionierbares Artefakt bei.<\/p>\n<\/li>\n<li data-nodeid=\"15486\">\n<p data-nodeid=\"15487\">Verwenden Sie den KI-Assistenten, falls in Ihrem Arbeitsbereich verf\u00fcgbar, um einen ersten Entwurf zu verfassen oder zu \u00fcberarbeiten.<\/p>\n<\/li>\n<li data-nodeid=\"15488\">\n<p data-nodeid=\"15489\">\u00dcberpr\u00fcfen Sie jede generierte Klasse, jede Beziehung, jede Multiplizit\u00e4t und jede Gesch\u00e4ftsregel selbst.<\/p>\n<\/li>\n<\/ol>\n<p data-nodeid=\"15490\">Die KI-gest\u00fctzten Diagrammwerkzeuge von Visual Paradigm k\u00f6nnen bearbeitbare Diagramme aus nat\u00fcrlichen Sprachbeschreibungen generieren. Der ver\u00f6ffentlichte Arbeitsablauf beschreibt die Generierung eines Klassendiagramms aus einer Eingabeaufforderung und anschlie\u00dfendes Verfeinern seiner Elemente und Beziehungen. Betrachten Sie KI-Ausgaben als<strong data-nodeid=\"15735\">Entwurf<\/strong>: Es k\u00f6nnen falsche Zuordnungen, fehlende Einschr\u00e4nkungen oder nicht gerechtfertigte Klassen abgeleitet werden. Die Korrektheit des Modells h\u00e4ngt weiterhin von der Validierung gegen die Anforderungen ab.<\/p>\n<p data-nodeid=\"15491\">Beispielsweise geben Sie dem KI-Assistenten folgende Eingabeaufforderung:<\/p>\n<blockquote data-nodeid=\"15492\">\n<p data-nodeid=\"15493\">Erstellen Sie ein logisches UML-Klassendiagramm f\u00fcr einen Online-Shop. Kunden geben Bestellungen auf. Jede Bestellung enth\u00e4lt eine oder mehrere Bestellpositionen. Jede Bestellposition verweist auf ein Produkt und speichert die Menge sowie den Einheitspreis zum Kaufzeitpunkt. Bestellungen k\u00f6nnen mehrere Zahlungsversuche haben. F\u00fcgen Sie Bezeichner, Multiplizit\u00e4ten und Enums f\u00fcr Bestell- und Zahlungsstatus hinzu. Geben Sie ausschlie\u00dflich PlantUML aus.<\/p>\n<\/blockquote>\n<p data-nodeid=\"15494\">\u00dcberpr\u00fcfen Sie dann die Ausgabe gegen die Anforderungen, bevor Sie sie akzeptieren. F\u00fcr bessere Ergebnisse geben Sie Annahmen explizit an \u2013 beispielsweise, ob Bestellungen als Entw\u00fcrfe ohne Positionen existieren k\u00f6nnen und ob Zahlungen erstattet werden k\u00f6nnen.<\/p>\n<p data-nodeid=\"15495\">Visual Paradigm beschreibt<a href=\"https:\/\/blog.visual-paradigm.com\/comprehensive-guide-to-the-benefits-of-vpascode-editor-in-visual-paradigms-ecosystem\/\">VPasCode<\/a> als <a href=\"https:\/\/guides.visual-paradigm.com\/vpascode-ai-assisted-diagram-as-code-with-plantuml\/\">Editor mit PlantUML-Funktionalit\u00e4t<\/a> mit Live-Vorschau und <a href=\"https:\/\/www.visual-paradigm.com\/guide\/mastering-vpascode-the-ultimate-guide-to-ai-powered-diagram-as-code-with-multi-engine-support\/\">KI-gest\u00fctzte Erstellung oder Modifikation<\/a>. Die verf\u00fcgbaren Tools und Funktionen k\u00f6nnen je nach Produktversion oder Arbeitsbereich variieren.<\/p>\n<h2 data-nodeid=\"15496\">8. Eine kompakte \u00dcberpr\u00fcfungsliste<\/h2>\n<p data-nodeid=\"15497\">Bevor Sie ein Klassendiagramm freigeben oder implementieren, pr\u00fcfen Sie Folgendes:<\/p>\n<p><img alt=\"Infografik zur \u00dcberpr\u00fcfung von UML-Klassendiagrammen mit einer Checkliste, die acht Validierungskriterien f\u00fcr PlantUML-Modelle auflistet, einschlie\u00dflich Dom\u00e4nenkonzepte, Attribute und Lebenszyklusabh\u00e4ngigkeiten.\" class=\"alignnone size-full wp-image-21907\" decoding=\"async\" height=\"1122\" loading=\"lazy\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1e4ca700.jpeg\" srcset=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1e4ca700.jpeg 1402w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1e4ca700-300x240.jpeg 300w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1e4ca700-1024x819.jpeg 1024w, https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/10\/img_6acdc1e4ca700-768x615.jpeg 768w\" width=\"1402\"\/><\/p>\n<ul data-nodeid=\"15498\">\n<li data-nodeid=\"15499\">\n<p data-nodeid=\"15500\">Stellt jede Klasse ein sinnvolles Dom\u00e4nenkonzept dar?<\/p>\n<\/li>\n<li data-nodeid=\"15501\">\n<p data-nodeid=\"15502\">Sind Bezeichner und wichtige Attribute klar definiert?<\/p>\n<\/li>\n<li data-nodeid=\"15503\">\n<p data-nodeid=\"15504\">Sind Bezeichnungen und Multiplizit\u00e4ten der Beziehungen an <strong data-nodeid=\"15751\">beiden<\/strong> Enden korrekt?<\/p>\n<\/li>\n<li data-nodeid=\"15505\">\n<p data-nodeid=\"15506\">Spiegelt die Komposition eine echte Lebenszyklusabh\u00e4ngigkeit wider?<\/p>\n<\/li>\n<li data-nodeid=\"15507\">\n<p data-nodeid=\"15508\">Sind historische Fakten dort erhalten, wo aktuelle Werte sich \u00e4ndern k\u00f6nnen?<\/p>\n<\/li>\n<li data-nodeid=\"15509\">\n<p data-nodeid=\"15510\">Sind optionale Werte und Gesch\u00e4ftsbeschr\u00e4nkungen sichtbar?<\/p>\n<\/li>\n<li data-nodeid=\"15511\">\n<p data-nodeid=\"15512\">Ist das Diagramm f\u00fcr seine Zielgruppe ausreichend fokussiert?<\/p>\n<\/li>\n<li data-nodeid=\"15513\">\n<p data-nodeid=\"15514\">Wurde der generierte Inhalt gegen die tats\u00e4chlichen Anforderungen gepr\u00fcft?<\/p>\n<\/li>\n<\/ul>\n<p class=\"\" data-nodeid=\"15515\">Der beste Diagramm-as-Code-Arbeitsablauf ist <strong data-nodeid=\"15762\">KI f\u00fcr einen ersten Entwurf, PlantUML f\u00fcr pr\u00e4zise Bearbeitungen und Versionshistorie sowie menschliche Pr\u00fcfung f\u00fcr die fachliche Korrektheit<\/strong>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein UML-Klassendiagramm beschreibt die Struktur eines Systems: die Dinge, die es modelliert, deren Eigenschaften und wie sie miteinander in Beziehung<\/p>\n","protected":false},"author":11,"featured_media":12123,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","source_url":"","source_h1_title":"","fifu_image_url":"","fifu_image_alt":"","_fifu_image_alt":"","fifu_alt":"","_fifu_alt":"","fifu_image_title":"","_fifu_image_title":"","fifu_input_alt":"","vp_image_hash":"","footnotes":""},"categories":[3,85,120],"tags":[],"asset-category":[],"class_list":["post-12122","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-unified-modeling-language","category-visual-paradigm","category-vpascode-editor"],"source_url":"","source_h1_title":"","fifu_image_url":"","fifu_image_alt":"","vp_image_hash":"","yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML - Cybermedian<\/title>\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.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML - Cybermedian\" \/>\n<meta property=\"og:description\" content=\"Ein UML-Klassendiagramm beschreibt die Struktur eines Systems: die Dinge, die es modelliert, deren Eigenschaften und wie sie miteinander in Beziehung\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/\" \/>\n<meta property=\"og:site_name\" content=\"Cybermedian\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-13T05:27:33+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-14T05:09:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"1402\" \/>\n\t<meta property=\"og:image:height\" content=\"1122\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"curtis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"curtis\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"7\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/\"},\"author\":{\"name\":\"curtis\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d\"},\"headline\":\"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML\",\"datePublished\":\"2026-10-13T05:27:33+00:00\",\"dateModified\":\"2026-10-14T05:09:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/\"},\"wordCount\":1351,\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg\",\"articleSection\":[\"Unified Modeling Language\",\"Visual Paradigm\",\"VPasCode Editor\"],\"inLanguage\":\"de\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/\",\"url\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/\",\"name\":\"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML - Cybermedian\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg\",\"datePublished\":\"2026-10-13T05:27:33+00:00\",\"dateModified\":\"2026-10-14T05:09:00+00:00\",\"author\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage\",\"url\":\"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg\",\"contentUrl\":\"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg\",\"width\":1402,\"height\":1122},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.cybermedian.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/#website\",\"url\":\"https:\/\/www.cybermedian.com\/de\/\",\"name\":\"Cybermedian\",\"description\":\"Jeden Tag eine neue Sache lernen\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.cybermedian.com\/de\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d\",\"name\":\"curtis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g\",\"caption\":\"curtis\"},\"url\":\"https:\/\/www.cybermedian.com\/de\/author\/curtis\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML - Cybermedian","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.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/","og_locale":"de_DE","og_type":"article","og_title":"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML - Cybermedian","og_description":"Ein UML-Klassendiagramm beschreibt die Struktur eines Systems: die Dinge, die es modelliert, deren Eigenschaften und wie sie miteinander in Beziehung","og_url":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/","og_site_name":"Cybermedian","article_published_time":"2026-10-13T05:27:33+00:00","article_modified_time":"2026-10-14T05:09:00+00:00","og_image":[{"width":1402,"height":1122,"url":"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg","type":"image\/jpeg"}],"author":"curtis","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"curtis","Gesch\u00e4tzte Lesezeit":"7\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#article","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/"},"author":{"name":"curtis","@id":"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d"},"headline":"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML","datePublished":"2026-10-13T05:27:33+00:00","dateModified":"2026-10-14T05:09:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/"},"wordCount":1351,"image":{"@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg","articleSection":["Unified Modeling Language","Visual Paradigm","VPasCode Editor"],"inLanguage":"de"},{"@type":"WebPage","@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/","url":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/","name":"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML - Cybermedian","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage"},"image":{"@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg","datePublished":"2026-10-13T05:27:33+00:00","dateModified":"2026-10-14T05:09:00+00:00","author":{"@id":"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d"},"breadcrumb":{"@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#primaryimage","url":"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg","contentUrl":"https:\/\/www.cybermedian.com\/de\/wp-content\/uploads\/sites\/12\/2026\/10\/img_6acdbee446b47.jpeg","width":1402,"height":1122},{"@type":"BreadcrumbList","@id":"https:\/\/www.cybermedian.com\/de\/uml-class-diagrams-for-data-modeling-with-plantuml\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cybermedian.com\/de\/"},{"@type":"ListItem","position":2,"name":"UML-Klassendiagramme f\u00fcr die Datenmodellierung mit PlantUML"}]},{"@type":"WebSite","@id":"https:\/\/www.cybermedian.com\/de\/#website","url":"https:\/\/www.cybermedian.com\/de\/","name":"Cybermedian","description":"Jeden Tag eine neue Sache lernen","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cybermedian.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Person","@id":"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/016578d8c88d35825fd3fbafc4f76b4d","name":"curtis","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.cybermedian.com\/de\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6910084565fcc601ec03c6693bb8ea480c1e52ccaa0efb299eb038bb6a1edc87?s=96&d=mm&r=g","caption":"curtis"},"url":"https:\/\/www.cybermedian.com\/de\/author\/curtis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/posts\/12122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/comments?post=12122"}],"version-history":[{"count":0,"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/posts\/12122\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/media\/12123"}],"wp:attachment":[{"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/media?parent=12122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/categories?post=12122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/tags?post=12122"},{"taxonomy":"asset-category","embeddable":true,"href":"https:\/\/www.cybermedian.com\/de\/wp-json\/wp\/v2\/asset-category?post=12122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}