配置図
要素の宣言
Edit online @startuml
actor アクター
actor/ "アクター/"
agent エージェント
artifact アーティファクト
boundary 境界
card カード
circle 円
cloud クラウド
collections コレクション
component コンポーネント
control コントロール
database データベース
entity エンティティ
file ファイル
folder フォルダ
frame フレーム
hexagon 六角形
interface インターフェイス
label ラベル
node ノード
package パッケージ
queue キュー
rectangle 四角形
stack スタック
storage ストレージ
usecase ユースケース
usecase/ "ユースケース/"
@enduml
説明文が長くなる場合は、オプションでテキストを []
の中に書くこともできます。
Edit online @startuml
folder フォルダ [
これは<b>フォルダ</b>です
----
境界線として
====
いろいろな種類の
....
スタイルが使えます
]
node ノード [
これは<b>ノード</b>です
----
境界線として
====
いろいろな種類の
....
スタイルが使えます
]
database データベース [
これは<b>データベース</b>です
----
境界線として
====
いろいろな種類の
....
スタイルが使えます
]
usecase ユースケース [
これは<b>ユースケース</b>です
----
境界線として
====
いろいろな種類の
....
スタイルが使えます
]
card カード [
これは<b>カード</b>です
----
境界線として
====
いろいろな種類の
....
スタイルが使えます
<i><color:blue>(add from V1.2020.7)</color></i>
]
@enduml
要素の宣言 (省略記法)
いくつかの省略記法を使って要素を宣言することができます。 通常記法のキーワード 省略記法のキーワード 通常記法の例 省略記法の例 参照 actor
:
a :
actor actor1
:actor2:
Actors component
[
c ]
component component1
[component2]
Components interface
()
i interface interface1
() "interface2"
Interfaces usecase
(
u )
usecase usecase1
(usecase2)
Usecases
アクター
Edit online @startuml
actor アクター1
:アクター2:
@enduml
注意 : 二重山括弧(guillemet)を使用したアクターの古い記法がありますが、現在は非推奨であり、削除される予定です。今後は使用しないでください。
コンポーネント
Edit online @startuml
component コンポーネント1
[コンポーネント2]
@enduml
インターフェース
Edit online @startuml
interface インターフェース1
() "インターフェース2"
label "//interface example//"
@enduml
ユースケース
Edit online @startuml
usecase ユースケース1
(ユースケース2)
@enduml
リンク、矢印
要素の間をシンプルなリンクで結ぶことができます。リンクにラベルを付けることもできます。
Edit online @startuml
node ノード1
node ノード2
node ノード3
node ノード4
node ノード5
ノード1 -- ノード2 : ラベル1
ノード1 .. ノード3 : ラベル2
ノード1 ~~ ノード4 : ラベル3
ノード1 == ノード5
@enduml
複数の種類のリンクを使うこともできます。
Edit online @startuml
artifact アーティファクト1
artifact アーティファクト2
artifact アーティファクト3
artifact アーティファクト4
artifact アーティファクト5
artifact アーティファクト6
artifact アーティファクト7
artifact アーティファクト8
artifact アーティファクト9
artifact アーティファクト10
アーティファクト1 --> アーティファクト2
アーティファクト1 --* アーティファクト3
アーティファクト1 --o アーティファクト4
アーティファクト1 --+ アーティファクト5
アーティファクト1 --# アーティファクト6
アーティファクト1 -->> アーティファクト7
アーティファクト1 --0 アーティファクト8
アーティファクト1 --^ アーティファクト9
アーティファクト1 --(0 アーティファクト10
@enduml
次のような種類のリンクも使用できます。
Edit online @startuml
cloud クラウド1
cloud クラウド2
cloud クラウド3
cloud クラウド4
cloud クラウド5
クラウド1 -0- クラウド2
クラウド1 -0)- クラウド3
クラウド1 -(0- クラウド4
クラウド1 -(0)- クラウド5
@enduml
別の例:
Edit online @startuml
actor foo1
actor foo2
foo1 <-0-> foo2
foo1 <-(0)-> foo2
(ac1) -le(0)-> left1
ac1 -ri(0)-> right1
ac1 .up(0).> up1
ac1 ~up(0)~> up2
ac1 -do(0)-> down1
ac1 -do(0)-> down2
actor1 -0)- actor2
component comp1
component comp2
comp1 *-0)-+ comp2
[comp3] <-->> [comp4]
@enduml
[Ref. QA-1736 ]
⎘ See all type on Appendix .
各括弧を使用した矢印のスタイル
(角括弧を使用したクラスの 関係(リンク、矢印)のスタイル と同様)
線のスタイル 矢印にbold
、dashed
、dotted
、hidden
、plain
のスタイルを指定することができます:
Edit online @startuml
node foo
title Bracketed line style without label
foo --> bar
foo -[bold]-> bar1
foo -[dashed]-> bar2
foo -[dotted]-> bar3
foo -[hidden]-> bar4
foo -[plain]-> bar5
@enduml
Edit online @startuml
title Bracketed line style with label
node foo
foo --> bar : ∅
foo -[bold]-> bar1 : [bold]
foo -[dashed]-> bar2 : [dashed]
foo -[dotted]-> bar3 : [dotted]
foo -[hidden]-> bar4 : [hidden]
foo -[plain]-> bar5 : [plain]
@enduml
[Adapted from QA-4181 ]
線の色
Edit online @startuml
title Bracketed line color
node foo
foo --> bar
foo -[#red]-> bar1 : [#red]
foo -[#green]-> bar2 : [#green]
foo -[#blue]-> bar3 : [#blue]
foo -[#blue;#yellow;#green]-> bar4
@enduml
線の太さ
Edit online @startuml
title Bracketed line thickness
node foo
foo --> bar : ∅
foo -[thickness=1]-> bar1 : [1]
foo -[thickness=2]-> bar2 : [2]
foo -[thickness=4]-> bar3 : [4]
foo -[thickness=8]-> bar4 : [8]
foo -[thickness=16]-> bar5 : [16]
@enduml
[Adapted from QA-4949 ]
混合
Edit online @startuml
title Bracketed line style mix
node foo
foo --> bar : ∅
foo -[#red,thickness=1]-> bar1 : [#red,1]
foo -[#red,dashed,thickness=2]-> bar2 : [#red,dashed,2]
foo -[#green,dashed,thickness=4]-> bar3 : [#green,dashed,4]
foo -[#blue,dotted,thickness=8]-> bar4 : [blue,dotted,8]
foo -[#blue,plain,thickness=16]-> bar5 : [blue,plain,16]
foo -[#blue;#green,dashed,thickness=4]-> bar6 : [blue;green,dashed,4]
@enduml
矢印の色とスタイルを変更する(インラインスタイル)
個別の矢印ごとに色 とスタイルを変更するには、次の記法を使用します:
#color;line.[bold|dashed|dotted];text:color
Edit online @startuml
node foo
foo --> bar : normal
foo --> bar1 #line:red;line.bold;text:red : red bold
foo --> bar2 #green;line.dashed;text:green : green dashed
foo --> bar3 #blue;line.dotted;text:blue : blue dotted
@enduml
[Ref. QA-3770 and QA-3816 ] [See similar feature on class diagram ]
要素の色とスタイルを変更する(インラインスタイル)
それぞれ個別の要素について、色 とスタイルを変更するには、次の記法を使用します: #color;line:color;line.[bold|dashed|dotted];text:color
Edit online @startuml
agent a
cloud c #pink;line:red;line.bold;text:red
file f #palegreen;line:green;line.dashed;text:green
node n #aliceblue;line:blue;line.dotted;text:blue
@enduml
Edit online @startuml
agent a
cloud c #pink;line:red;line.bold;text:red [
c
cloud description
]
file f #palegreen;line:green;line.dashed;text:green {
[c1]
[c2]
}
frame frame {
node n #aliceblue;line:blue;line.dotted;text:blue
}
@enduml
[Ref. QA-6852 ] 入れ子にできる要素
次の要素は入れ子にできます:
Edit online @startuml
artifact アーティファクト {
}
card カード {
}
cloud クラウド {
}
component コンポーネント {
}
database データベース {
}
file ファイル {
}
folder フォルダ {
}
frame フレーム {
}
hexagon 六角形 {
}
node ノード {
}
package パッケージ {
}
queue キュー {
}
rectangle 四角形 {
}
stack スタック {
}
storage ストレージ {
}
@enduml
パッケージと入れ子要素
一階層の例
Edit online @startuml
artifact artifactVeryLOOOOOOOOOOOOOOOOOOOg as "アーティファクト" {
file f1
}
card cardVeryLOOOOOOOOOOOOOOOOOOOg as "カード" {
file f2
}
cloud cloudVeryLOOOOOOOOOOOOOOOOOOOg as "クラウド" {
file f3
}
component componentVeryLOOOOOOOOOOOOOOOOOOOg as "コンポーネント" {
file f4
}
database databaseVeryLOOOOOOOOOOOOOOOOOOOg as "データベース" {
file f5
}
file fileVeryLOOOOOOOOOOOOOOOOOOOg as "ファイル" {
file f6
}
folder folderVeryLOOOOOOOOOOOOOOOOOOOg as "フォルダ" {
file f7
}
frame frameVeryLOOOOOOOOOOOOOOOOOOOg as "フレーム" {
file f8
}
hexagon hexagonVeryLOOOOOOOOOOOOOOOOOOOg as "六角形" {
file f9
}
node nodeVeryLOOOOOOOOOOOOOOOOOOOg as "ノード" {
file f10
}
package packageVeryLOOOOOOOOOOOOOOOOOOOg as "パッケージ" {
file f11
}
queue queueVeryLOOOOOOOOOOOOOOOOOOOg as "キュー" {
file f12
}
rectangle rectangleVeryLOOOOOOOOOOOOOOOOOOOg as "四角形" {
file f13
}
stack stackVeryLOOOOOOOOOOOOOOOOOOOg as "スタック" {
file f14
}
storage storageVeryLOOOOOOOOOOOOOOOOOOOg as "ストレージ" {
file f15
}
@enduml
他の例
Edit online @startuml
artifact Foo1 {
folder Foo2
}
folder Foo3 {
artifact Foo4
}
frame Foo5 {
database Foo6
}
cloud vpc {
node ec2 {
stack stack
}
}
@enduml
Edit online @startuml
node Foo1 {
cloud Foo2
}
cloud Foo3 {
frame Foo4
}
database Foo5 {
storage Foo6
}
storage Foo7 {
storage Foo8
}
@enduml
すべて入れ子にした例
すべての入れ子要素の例です:
Edit online @startuml
artifact アーティファクト {
card カード {
cloud クラウド {
component コンポーネント {
database データベース {
file ファイル {
folder フォルダ {
frame フレーム {
hexagon 六角形 {
node ノード {
package パッケージ {
queue キュー {
rectangle 四角形 {
stack スタック {
storage ストレージ {
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
@enduml
Edit online @startuml
storage ストレージ {
stack スタック {
rectangle 四角形 {
queue キュー {
package パッケージ {
node ノード {
hexagon 六角形 {
frame フレーム {
folder フォルダ {
file ファイル {
database データベース {
component コンポーネント {
cloud クラウド {
card カード {
artifact アーティファクト {
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
@enduml
別名
as
による単純な別名
Edit online @startuml
node ノード1 as n1
node "ノード 2" as n2
file f1 as "ファイル 1"
cloud c1 as "これ
は
クラウド
です"
cloud c2 [これ
も
クラウド
です]
n1 -> n2
n1 --> f1
f1 -> c1
c1 -> c2
@enduml
長い別名の例
Edit online @startuml
actor "アクター" as actorVeryLOOOOOOOOOOOOOOOOOOOg
agent "エージェント" as agentVeryLOOOOOOOOOOOOOOOOOOOg
artifact "アーティファクト" as artifactVeryLOOOOOOOOOOOOOOOOOOOg
boundary "境界" as boundaryVeryLOOOOOOOOOOOOOOOOOOOg
card "カード" as cardVeryLOOOOOOOOOOOOOOOOOOOg
cloud "クラウド" as cloudVeryLOOOOOOOOOOOOOOOOOOOg
collections "コレクション" as collectionsVeryLOOOOOOOOOOOOOOOOOOOg
component "コンポーネント" as componentVeryLOOOOOOOOOOOOOOOOOOOg
control "コントロール" as controlVeryLOOOOOOOOOOOOOOOOOOOg
database "データベース" as databaseVeryLOOOOOOOOOOOOOOOOOOOg
entity "エンティティ" as entityVeryLOOOOOOOOOOOOOOOOOOOg
file "ファイル" as fileVeryLOOOOOOOOOOOOOOOOOOOg
folder "フォルダ" as folderVeryLOOOOOOOOOOOOOOOOOOOg
frame "フレーム" as frameVeryLOOOOOOOOOOOOOOOOOOOg
hexagon "六角形" as hexagonVeryLOOOOOOOOOOOOOOOOOOOg
interface "インターフェース" as interfaceVeryLOOOOOOOOOOOOOOOOOOOg
label "ラベル" as labelVeryLOOOOOOOOOOOOOOOOOOOg
node "ノード" as nodeVeryLOOOOOOOOOOOOOOOOOOOg
package "パッケージ" as packageVeryLOOOOOOOOOOOOOOOOOOOg
queue "キュー" as queueVeryLOOOOOOOOOOOOOOOOOOOg
stack "スタック" as stackVeryLOOOOOOOOOOOOOOOOOOOg
rectangle "四角形" as rectangleVeryLOOOOOOOOOOOOOOOOOOOg
storage "ストレージ" as storageVeryLOOOOOOOOOOOOOOOOOOOg
usecase "ユースケース" as usecaseVeryLOOOOOOOOOOOOOOOOOOOg
@enduml
Edit online @startuml
actor actorVeryLOOOOOOOOOOOOOOOOOOOg as "アクター"
agent agentVeryLOOOOOOOOOOOOOOOOOOOg as "エージェント"
artifact artifactVeryLOOOOOOOOOOOOOOOOOOOg as "アーティファクト"
boundary boundaryVeryLOOOOOOOOOOOOOOOOOOOg as "境界"
card cardVeryLOOOOOOOOOOOOOOOOOOOg as "カード"
cloud cloudVeryLOOOOOOOOOOOOOOOOOOOg as "クラウド"
collections collectionsVeryLOOOOOOOOOOOOOOOOOOOg as "コレクション"
component componentVeryLOOOOOOOOOOOOOOOOOOOg as "コンポーネント"
control controlVeryLOOOOOOOOOOOOOOOOOOOg as "コントロール"
database databaseVeryLOOOOOOOOOOOOOOOOOOOg as "データベース"
entity entityVeryLOOOOOOOOOOOOOOOOOOOg as "エンティティ"
file fileVeryLOOOOOOOOOOOOOOOOOOOg as "ファイル"
folder folderVeryLOOOOOOOOOOOOOOOOOOOg as "フォルダ"
frame frameVeryLOOOOOOOOOOOOOOOOOOOg as "フレーム"
hexagon hexagonVeryLOOOOOOOOOOOOOOOOOOOg as "六角形"
interface interfaceVeryLOOOOOOOOOOOOOOOOOOOg as "インターフェース"
label labelVeryLOOOOOOOOOOOOOOOOOOOg as "ラベル"
node nodeVeryLOOOOOOOOOOOOOOOOOOOg as "ノード"
package packageVeryLOOOOOOOOOOOOOOOOOOOg as "パッケージ"
queue queueVeryLOOOOOOOOOOOOOOOOOOOg as "キュー"
stack stackVeryLOOOOOOOOOOOOOOOOOOOg as "スタック"
rectangle rectangleVeryLOOOOOOOOOOOOOOOOOOOg as "四角形"
storage storageVeryLOOOOOOOOOOOOOOOOOOOg as "ストレージ"
usecase usecaseVeryLOOOOOOOOOOOOOOOOOOOg as "ユースケース"
@enduml
[Ref. QA-12082 ]
角に丸みをつける
Edit online @startuml
skinparam rectangle {
roundCorner<<コンセプト>> 25
}
rectangle "コンセプト・モデル" <<コンセプト>> {
rectangle "例 1" <<コンセプト>> as ex1
rectangle "別の四角形"
}
@enduml
特有のskinparam
roundCorner
Edit online @startuml
skinparam roundCorner 15
actor アクター
agent エージェント
artifact アーティファクト
boundary 境界
card カード
circle 円
cloud クラウド
collections コレクション
component コンポーネント
control コントロール
database データベース
entity エンティティ
file ファイル
folder フォルダ
frame フレーム
hexagon 六角形
interface インターフェース
label ラベル
node ノード
package パッケージ
queue キュー
rectangle 四角形
stack スタック
storage ストレージ
usecase ユースケース
@enduml
[Ref. QA-5299 , QA-6915 , QA-11943 ]
付録:線の種類の一覧
Edit online @startuml
left to right direction
skinparam nodesep 5
f3 ~~ b3 : ""~~""\n//dotted//
f2 .. b2 : ""..""\n//dashed//
f1 == b1 : ""==""\n//bold//
f0 -- b0 : ""--""\n//plain//
@enduml
付録:矢印の先端と'0'矢印の一覧
矢印の先端
Edit online @startuml
left to right direction
skinparam nodesep 5
f13 --0 b13 : ""--0""
f12 --@ b12 : ""--@""
f11 --:|> b11 : ""--:|>""
f10 --||> b10 : ""--||>""
f9 --|> b9 : ""--|>""
f8 --^ b8 : ""--^ ""
f7 --\\ b7 : ""--\\\\""
f6 --# b6 : ""--# ""
f5 --+ b5 : ""--+ ""
f4 --o b4 : ""--o ""
f3 --* b3 : ""--* ""
f2 -->> b2 : ""-->>""
f1 --> b1 : ""--> ""
f0 -- b0 : ""-- ""
@enduml
丸形の矢印('0'矢印)
Edit online @startuml
left to right direction
skinparam nodesep 5
f10 0--0 b10 : "" 0--0 ""
f9 )--( b9 : "" )--(""
f8 0)--(0 b8 : "" 0)--(0""
f7 0)-- b7 : "" 0)-- ""
f6 -0)- b6 : "" -0)-\n ""
f5 -(0)- b5 : "" -(0)-\n""
f4 -(0- b4 : "" -(0-\n ""
f3 --(0 b3 : "" --(0 ""
f2 --( b2 : "" --( ""
f1 --0 b1 : "" --0 ""
@enduml
付録:すべての要素に対するインラインスタイルのテスト
シンプルな要素
Edit online @startuml
actor アクター #aliceblue;line:blue;line.dotted;text:blue
actor/ "アクター/" #aliceblue;line:blue;line.dotted;text:blue
agent エージェント #aliceblue;line:blue;line.dotted;text:blue
artifact アーティファクト #aliceblue;line:blue;line.dotted;text:blue
boundary 境界 #aliceblue;line:blue;line.dotted;text:blue
card カード #aliceblue;line:blue;line.dotted;text:blue
circle 円 #aliceblue;line:blue;line.dotted;text:blue
cloud クラウド #aliceblue;line:blue;line.dotted;text:blue
collections コレクション #aliceblue;line:blue;line.dotted;text:blue
component コンポーネント #aliceblue;line:blue;line.dotted;text:blue
control コントロール #aliceblue;line:blue;line.dotted;text:blue
database データベース #aliceblue;line:blue;line.dotted;text:blue
entity エンティティ #aliceblue;line:blue;line.dotted;text:blue
file ファイル #aliceblue;line:blue;line.dotted;text:blue
folder フォルダ #aliceblue;line:blue;line.dotted;text:blue
frame フレーム #aliceblue;line:blue;line.dotted;text:blue
hexagon 六角形 #aliceblue;line:blue;line.dotted;text:blue
interface インターフェース #aliceblue;line:blue;line.dotted;text:blue
label ラベル #aliceblue;line:blue;line.dotted;text:blue
node ノード #aliceblue;line:blue;line.dotted;text:blue
package パッケージ #aliceblue;line:blue;line.dotted;text:blue
queue キュー #aliceblue;line:blue;line.dotted;text:blue
rectangle 四角形 #aliceblue;line:blue;line.dotted;text:blue
stack スタック #aliceblue;line:blue;line.dotted;text:blue
storage ストレージ #aliceblue;line:blue;line.dotted;text:blue
usecase ユースケース #aliceblue;line:blue;line.dotted;text:blue
usecase/ "ユースケース/" #aliceblue;line:blue;line.dotted;text:blue
@enduml
入れ子の要素
サブ要素無し
Edit online @startuml
artifact アーティファクト #aliceblue;line:blue;line.dotted;text:blue {
}
card カード #aliceblue;line:blue;line.dotted;text:blue {
}
cloud クラウド #aliceblue;line:blue;line.dotted;text:blue {
}
component コンポーネント #aliceblue;line:blue;line.dotted;text:blue {
}
database データベース #aliceblue;line:blue;line.dotted;text:blue {
}
file ファイル #aliceblue;line:blue;line.dotted;text:blue {
}
folder フォルダ #aliceblue;line:blue;line.dotted;text:blue {
}
frame フレーム #aliceblue;line:blue;line.dotted;text:blue {
}
hexagon 六角形 #aliceblue;line:blue;line.dotted;text:blue {
}
node ノード #aliceblue;line:blue;line.dotted;text:blue {
}
package パッケージ #aliceblue;line:blue;line.dotted;text:blue {
}
queue キュー #aliceblue;line:blue;line.dotted;text:blue {
}
rectangle 四角形 #aliceblue;line:blue;line.dotted;text:blue {
}
stack スタック #aliceblue;line:blue;line.dotted;text:blue {
}
storage ストレージ #aliceblue;line:blue;line.dotted;text:blue {
}
@enduml
サブ要素有り
Edit online @startuml
artifact artifactVeryLOOOOOOOOOOOOOOOOOOOg as "アーティファクト" #aliceblue;line:blue;line.dotted;text:blue {
file f1
}
card cardVeryLOOOOOOOOOOOOOOOOOOOg as "カード" #aliceblue;line:blue;line.dotted;text:blue {
file f2
}
cloud cloudVeryLOOOOOOOOOOOOOOOOOOOg as "クラウド" #aliceblue;line:blue;line.dotted;text:blue {
file f3
}
component componentVeryLOOOOOOOOOOOOOOOOOOOg as "コンポーネント" #aliceblue;line:blue;line.dotted;text:blue {
file f4
}
database databaseVeryLOOOOOOOOOOOOOOOOOOOg as "データベース" #aliceblue;line:blue;line.dotted;text:blue {
file f5
}
file fileVeryLOOOOOOOOOOOOOOOOOOOg as "ファイル" #aliceblue;line:blue;line.dotted;text:blue {
file f6
}
folder folderVeryLOOOOOOOOOOOOOOOOOOOg as "フォルダ" #aliceblue;line:blue;line.dotted;text:blue {
file f7
}
frame frameVeryLOOOOOOOOOOOOOOOOOOOg as "フレーム" #aliceblue;line:blue;line.dotted;text:blue {
file f8
}
hexagon hexagonVeryLOOOOOOOOOOOOOOOOOOOg as "六角形" #aliceblue;line:blue;line.dotted;text:blue {
file f9
}
node nodeVeryLOOOOOOOOOOOOOOOOOOOg as "ノード" #aliceblue;line:blue;line.dotted;text:blue {
file f10
}
package packageVeryLOOOOOOOOOOOOOOOOOOOg as "パッケージ" #aliceblue;line:blue;line.dotted;text:blue {
file f11
}
queue queueVeryLOOOOOOOOOOOOOOOOOOOg as "キュー" #aliceblue;line:blue;line.dotted;text:blue {
file f12
}
rectangle rectangleVeryLOOOOOOOOOOOOOOOOOOOg as "四角形" #aliceblue;line:blue;line.dotted;text:blue {
file f13
}
stack stackVeryLOOOOOOOOOOOOOOOOOOOg as "スタック" #aliceblue;line:blue;line.dotted;text:blue {
file f14
}
storage storageVeryLOOOOOOOOOOOOOOOOOOOg as "ストレージ" #aliceblue;line:blue;line.dotted;text:blue {
file f15
}
@enduml
付録:すべての要素に対するスタイルのテスト
シンプルな要素 グローバルスタイル(componentDiagram)
Edit online @startuml
<style>
componentDiagram {
BackGroundColor palegreen
LineThickness 1
LineColor red
}
</style>
actor アクター
actor/ "アクター/"
agent エージェント
artifact アーティファクト
boundary 境界
card カード
circle 円
cloud クラウド
collections コレクション
component コンポーネント
control コントロール
database データベース
entity エンティティ
file ファイル
folder フォルダ
frame フレーム
hexagon 六角形
interface インターフェース
label ラベル
node ノード
package パッケージ
queue キュー
rectangle 四角形
stack スタック
storage ストレージ
usecase ユースケース
usecase/ "ユースケース/"
@enduml
エレメント毎のスタイル
Edit online @startuml
<style>
actor {
BackGroundColor #f80c12
LineThickness 1
LineColor black
}
agent {
BackGroundColor #f80c12
LineThickness 1
LineColor black
}
artifact {
BackGroundColor #ee1100
LineThickness 1
LineColor black
}
boundary {
BackGroundColor #ee1100
LineThickness 1
LineColor black
}
card {
BackGroundColor #ff3311
LineThickness 1
LineColor black
}
circle {
BackGroundColor #ff3311
LineThickness 1
LineColor black
}
cloud {
BackGroundColor #ff4422
LineThickness 1
LineColor black
}
collections {
BackGroundColor #ff4422
LineThickness 1
LineColor black
}
component {
BackGroundColor #ff6644
LineThickness 1
LineColor black
}
control {
BackGroundColor #ff6644
LineThickness 1
LineColor black
}
database {
BackGroundColor #ff9933
LineThickness 1
LineColor black
}
entity {
BackGroundColor #feae2d
LineThickness 1
LineColor black
}
file {
BackGroundColor #feae2d
LineThickness 1
LineColor black
}
folder {
BackGroundColor #ccbb33
LineThickness 1
LineColor black
}
frame {
BackGroundColor #d0c310
LineThickness 1
LineColor black
}
hexagon {
BackGroundColor #aacc22
LineThickness 1
LineColor black
}
interface {
BackGroundColor #69d025
LineThickness 1
LineColor black
}
label {
BackGroundColor black
LineThickness 1
LineColor black
}
node {
BackGroundColor #22ccaa
LineThickness 1
LineColor black
}
package {
BackGroundColor #12bdb9
LineThickness 1
LineColor black
}
queue {
BackGroundColor #11aabb
LineThickness 1
LineColor black
}
rectangle {
BackGroundColor #4444dd
LineThickness 1
LineColor black
}
stack {
BackGroundColor #3311bb
LineThickness 1
LineColor black
}
storage {
BackGroundColor #3b0cbd
LineThickness 1
LineColor black
}
usecase {
BackGroundColor #442299
LineThickness 1
LineColor black
}
</style>
actor アクター
actor/ "アクター/"
agent エージェント
artifact アーティファクト
boundary 境界
card カード
circle 円
cloud クラウド
collections コレクション
component コンポーネント
control コントロール
database データベース
entity エンティティ
file ファイル
folder フォルダ
frame フレーム
hexagon 六角形
interface インターフェース
label ラベル
node ノード
package パッケージ
queue キュー
rectangle 四角形
stack スタック
storage ストレージ
usecase ユースケース
usecase/ "ユースケース/"
@enduml
[Ref. QA-13261 ]
Nested element (without level) Global style (on componentDiagram)
Edit online @startuml
<style>
componentDiagram {
BackGroundColor palegreen
LineThickness 2
LineColor red
}
</style>
artifact artifact {
}
card card {
}
cloud cloud {
}
component component {
}
database database {
}
file file {
}
folder folder {
}
frame frame {
}
hexagon hexagon {
}
node node {
}
package package {
}
queue queue {
}
rectangle rectangle {
}
stack stack {
}
storage storage {
}
@enduml
Style for each nested element
Edit online @startuml
<style>
artifact {
BackGroundColor #ee1100
LineThickness 1
LineColor black
}
card {
BackGroundColor #ff3311
LineThickness 1
LineColor black
}
cloud {
BackGroundColor #ff4422
LineThickness 1
LineColor black
}
component {
BackGroundColor #ff6644
LineThickness 1
LineColor black
}
database {
BackGroundColor #ff9933
LineThickness 1
LineColor black
}
file {
BackGroundColor #feae2d
LineThickness 1
LineColor black
}
folder {
BackGroundColor #ccbb33
LineThickness 1
LineColor black
}
frame {
BackGroundColor #d0c310
LineThickness 1
LineColor black
}
hexagon {
BackGroundColor #aacc22
LineThickness 1
LineColor black
}
node {
BackGroundColor #22ccaa
LineThickness 1
LineColor black
}
package {
BackGroundColor #12bdb9
LineThickness 1
LineColor black
}
queue {
BackGroundColor #11aabb
LineThickness 1
LineColor black
}
rectangle {
BackGroundColor #4444dd
LineThickness 1
LineColor black
}
stack {
BackGroundColor #3311bb
LineThickness 1
LineColor black
}
storage {
BackGroundColor #3b0cbd
LineThickness 1
LineColor black
}
</style>
artifact artifact {
}
card card {
}
cloud cloud {
}
component component {
}
database database {
}
file file {
}
folder folder {
}
frame frame {
}
hexagon hexagon {
}
node node {
}
package package {
}
queue queue {
}
rectangle rectangle {
}
stack stack {
}
storage storage {
}
@enduml
入れ子要素(一階層) グローバルスタイル(componentDiagram)
Edit online @startuml
<style>
componentDiagram {
BackGroundColor palegreen
LineThickness 1
LineColor red
}
</style>
artifact e1 as "アーティファクト" {
file f1
}
card e2 as "カード" {
file f2
}
cloud e3 as "クラウド" {
file f3
}
component e4 as "コンポーネント" {
file f4
}
database e5 as "データベース" {
file f5
}
file e6 as "ファイル" {
file f6
}
folder e7 as "フォルダ" {
file f7
}
frame e8 as "フレーム" {
file f8
}
hexagon e9 as "六角形" {
file f9
}
node e10 as "ノード" {
file f10
}
package e11 as "パッケージ" {
file f11
}
queue e12 as "キュー" {
file f12
}
rectangle e13 as "四角形" {
file f13
}
stack e14 as "スタック" {
file f14
}
storage e15 as "ストレージ" {
file f15
}
@enduml
入れ子要素ごとのスタイル
Edit online @startuml
<style>
artifact {
BackGroundColor #ee1100
LineThickness 1
LineColor black
}
card {
BackGroundColor #ff3311
LineThickness 1
LineColor black
}
cloud {
BackGroundColor #ff4422
LineThickness 1
LineColor black
}
component {
BackGroundColor #ff6644
LineThickness 1
LineColor black
}
database {
BackGroundColor #ff9933
LineThickness 1
LineColor black
}
file {
BackGroundColor #feae2d
LineThickness 1
LineColor black
}
folder {
BackGroundColor #ccbb33
LineThickness 1
LineColor black
}
frame {
BackGroundColor #d0c310
LineThickness 1
LineColor black
}
hexagon {
BackGroundColor #aacc22
LineThickness 1
LineColor black
}
node {
BackGroundColor #22ccaa
LineThickness 1
LineColor black
}
package {
BackGroundColor #12bdb9
LineThickness 1
LineColor black
}
queue {
BackGroundColor #11aabb
LineThickness 1
LineColor black
}
rectangle {
BackGroundColor #4444dd
LineThickness 1
LineColor black
}
stack {
BackGroundColor #3311bb
LineThickness 1
LineColor black
}
storage {
BackGroundColor #3b0cbd
LineThickness 1
LineColor black
}
</style>
artifact e1 as "アーティファクト" {
file f1
}
card e2 as "カード" {
file f2
}
cloud e3 as "クラウド" {
file f3
}
component e4 as "コンポーネント" {
file f4
}
database e5 as "データベース" {
file f5
}
file e6 as "ファイル" {
file f6
}
folder e7 as "フォルダ" {
file f7
}
frame e8 as "フレーム" {
file f8
}
hexagon e9 as "六角形" {
file f9
}
node e10 as "ノード" {
file f10
}
package e11 as "パッケージ" {
file f11
}
queue e12 as "キュー" {
file f12
}
rectangle e13 as "四角形" {
file f13
}
stack e14 as "スタック" {
file f14
}
storage e15 as "ストレージ" {
file f15
}
@enduml