Multilingual Wiki Documentation

You are currently using syntax.
In an attempt to improve PlantUML documentation...
Please do not use this website for your own diagrams.
You can click here and use the online server here for your own documentation.

Recent changes    Wiki Toc    View page history    Add new chapter    Reorder page    Raw

Objektdiagramm

Object Diagram

Definition von Objekten

Eine Instanz eines Objekts wird mit dem Schlüsselwort object definiert.

@startuml
object firstObject
object "My Second Object" as o2
@enduml

Definition of objects

You define instance of objects using the object keywords.

@startuml
object firstObject
object "My Second Object" as o2
@enduml

Beziehungen zwischen Objekten

Beziehungen zwischen Objekten werden mit den folgenden Symbolen definiert:

Type Symbol Image
Extension <|--
Composition *--
Aggregation o--

Um eine gestrichelte Linie zu zeichnen, kann -- durch .. ersetzt werden.

Auf diese Weise können die folgenden Diagramme gezeichnet werden:

Mit : gefolgt von dem Beschriftungstext kann an die Beziehung eine Beschriftung hinzugefügt werden.

Um die Kardinalität anzugeben, können doppelte Anführungszeichen auf jeder Seite der Beziehung verwendet werden.

@startuml
object Object01
object Object02
object Object03
object Object04
object Object05
object Object06
object Object07
object Object08

Object01 <|-- Object02
Object03 *-- Object04
Object05 o-- "4" Object06
Object07 .. Object08 : some labels
@enduml

Relations between objects

Relations between objects are defined using the following symbols :

Type Symbol Image
Extension <|--
Composition *--
Aggregation o--

It is possible to replace -- by .. to have a dotted line.

Knowing those rules, it is possible to draw the following drawings.

It is possible a add a label on the relation, using : followed by the text of the label.

For cardinality, you can use double-quotes "" on each side of the relation.

@startuml
object Object01
object Object02
object Object03
object Object04
object Object05
object Object06
object Object07
object Object08

Object01 <|-- Object02
Object03 *-- Object04
Object05 o-- "4" Object06
Object07 .. Object08 : some labels
@enduml

Hinzufügen von Attributen

Um Attribute zu deklarieren, wird das Symbol :, gefolgt vom Feldnamen, verwendet:

@startuml

object user

user : name = "Dummy"
user : id = 123

@enduml

Es ist auch möglich, alle Attribute eines Objekts zwischen geschweiften Klammern {} aufzuführen:

@startuml

object user {
  name = "Dummy"
  id = 123
}

@enduml

Adding fields

To declare fields, you can use the symbol : followed by the field's name.

@startuml

object user

user : name = "Dummy"
user : id = 123

@enduml

It is also possible to group all fields between brackets {}.

@startuml

object user {
  name = "Dummy"
  id = 123
}

@enduml

Gemeinsam mit klassendiagrammen verwendete Funktionen

Common features with class diagrams

Map table or associative array

You can define a map table or associative array, with map keyword and => separator.

@startuml
map CapitalCity {
 UK => London
 USA => Washington
 Germany => Berlin
}
@enduml

@startuml
map "Map **Contry => CapitalCity**" as CC {
 UK => London
 USA => Washington
 Germany => Berlin
}
@enduml

@startuml
map "map: Map<Integer, String>" as users {
 1 => Alice
 2 => Bob
 3 => Charlie
}
@enduml

And add link with object.

@startuml
object London

map CapitalCity {
 UK *-> London
 USA => Washington
 Germany => Berlin
}
@enduml

@startuml
object London
object Washington
object Berlin
object NewYork

map CapitalCity {
 UK *-> London
 USA *--> Washington
 Germany *---> Berlin
}

NewYork --> CapitalCity::USA
@enduml

[Ref. #307]


Please report any bugs to plantuml@gmail.com or here.
This website is still in beta testing.