このページにコントリビュートすることができます。  (Menu)


You can vote to improve syntax about packages/namespaces !

 

 

タイミング図

現在、このダイアグラムは提案段階です。将来的に変更されるかもしれません。新しいシンタックス案の提案を歓迎します!よりよい形を模索するのに、あなたからの意見や提案が役に立ちます!!

 

 

ライフライン

ライフラインは、 conciserobust で定義できます。 concise は状態ライフラインを、 robust は汎用値ライフラインを、それぞれ作成します。

@is を用いて、状態の変化を記述できます。

@startuml
robust "ウェブブラウザ" as WB
concise "ユーザ" as WU

@0
WU is アイドル
WB is アイドル

@100
WU is 待機
WB is 処理中

@300
WB is 待機
@enduml

 

 

メッセージ(相互作用)

メッセージは、矢印構文を使います。

@startuml
robust "ウェブブラウザ" as WB
concise "ユーザ" as WU

@0
WU is アイドル
WB is アイドル

@100
WU -> WB : URL
WU is 待機
WB is 処理中

@300
WB is 待機
@enduml

 

 

相対時間での指定

@ で時間を指定するとき、相対的な時間の指定の仕方ができます。

@startuml
robust "DNS Resolver" as DNS
robust "ウェブブラウザ" as WB
concise "ユーザ" as WU

@0
WU is アイドル
WB is アイドル
DNS is アイドル

@+100
WU -> WB : URL
WU is 待機
WB is 処理中

@+200
WB is 待機
WB -> DNS@+50 : URL から IPアドレス を解決

@+100
DNS is 処理中

@+300
DNS is アイドル
@enduml

 

 

インスタンス指向

時系列順での定義ではなく、インスタンス毎(≒ライフライン毎)に定義できます。

@startuml
robust "ウェブブラウザ" as WB
concise "ユーザ" as WU

@WB
0 is アイドル
+200 is 処理中
+100 is 待機

@WU
0 is 待機
+500 is ok
@enduml

 

 

スケールの設定

スケール(メモリの数値の表示)を指定できます。 以下の例では、「メモリを 100ずつ 表示、1メモリの幅を 50px にする」設定になります。

@startuml
concise "ユーザ" as WU
scale 100 as 50 pixels

@WU
0 is 待機
+500 is ok
@enduml

 

 

初期状態

「初期状態」を設定できます。

@startuml
robust "ウェブブラウザ" as WB
concise "ユーザ" as WU

WB is 初期化中
WU is 不在

@WB
0 is アイドル
+200 is 処理中
+100 is 待機

@WU
0 is 待機
+500 is ok
@enduml

 

 

複雑な状態

信号をいくつかの不定状態とすることができます。

@startuml
robust "Signal1" as S1
robust "Signal2" as S2
S1 has 0,1,2,hello
S2 has 0,1,2
@0
S1 is 0
S2 is 0
@100
S1 is {0,1} #SlateGrey
S2 is {0,1}
@200
S1 is 1
S2 is 0
@300
S1 is hello
S2 is {0,2}
@enduml

 

 

状態の非表示

いくつかの状態を非表示にすることもできます。

@startuml
concise "Web User" as WU

@0
WU is {-}

@100
WU is A1

@200
WU is {-}

@300
WU is {hidden}

@400
WU is A3

@500
WU is {-}
@enduml

 

 

Using Time and Date

It is possible to use time or date.

@startuml
robust "Web Browser" as WB
concise "Web User" as WU

@2019/07/02
WU is Idle
WB is Idle

@2019/07/04
WU is Waiting : some note
WB is Processing : some other note

@2019/07/05
WB is Waiting
@enduml

@startuml
robust "Web Browser" as WB
concise "Web User" as WU

@1:15:00
WU is Idle
WB is Idle

@1:16:30
WU is Waiting : some note
WB is Processing : some other note

@1:17:30
WB is Waiting
@enduml

 

 

時間定規(time constraint)の追加

タイムラインのメモリとは別に、時間の尺度を示す矢印を表示することができます。

@startuml
robust "ウェブブラウザ" as WB
concise "ユーザ" as WU

WB is 初期化中
WU is 不在

@WB
0 is アイドル
+200 is 処理中
+100 is 待機
WB@0 <-> @50 : {50 ms lag}

@WU
0 is 待機
+500 is ok
@200 <-> @+150 : {150 ms}
@enduml

 

 

タイトルなどを追加する

(他の UML ダイアグラムと同様に)タイトル、ヘッダー/フッター、説明文、キャプション を書くことができます。

@startuml
Title これはタイトル
header: ここにヘッダーを書く
footer: ここにフッターを書く
legend
図の説明は、ここに書きます。
複数行かけますよ。
end legend
caption 一行の説明は、caption に書きましょう。

robust "Web ブラウザ" as WB
concise "ユーザ" as WU

@0
WU is アイドル
WB is アイドル

@100
WU is 待機
WB is 処理中

@300
WB is 待機
@enduml