シーケンス “->” を、2つの分類子間のメッセージを描画するために使います。 分類子を、明示的に宣言する必要はありません。
点線の矢印を使う場合は、”-->” とします。
また、”<-” や “<--” を使うこともできます。 これらは図を変更することなく、可読性を高めることができます。 ただし、以上の方法はシーケンス図だけに当てはまります。ほかの種類の図には当てはまりません。
@startuml Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response Alice -> Bob: Another authentication Request Alice <-- Bob: another authentication Response @enduml

分類子の宣言
キーワード participant を使って、分類子の並び順を変えることができます。
分類子の宣言に別のキーワードを使用することも可能です:
actorboundarycontrolentitydatabase
@startuml actor Foo1 boundary Foo2 control Foo3 entity Foo4 database Foo5 collections Foo6 Foo1 -> Foo2 : To boundary Foo1 -> Foo3 : To control Foo1 -> Foo4 : To entity Foo1 -> Foo5 : To database Foo1 -> Foo6 : To collections @enduml

キーワード as を使って分類子の名前を変更することができます。
アクターや分類子の背景色を、HTML コードや色名を使って変更することもできます。
@startuml actor Bob #red ' The only difference between actor 'and participant is the drawing participant Alice participant "I have a really\nlong name" as L #99FF99 /' You can also declare: participant L as "I have a really\nlong name" #99FF99 '/ Alice->Bob: Authentication Request Bob->Alice: Authentication Response Bob->L: Log transaction @enduml

You can use the orderkeyword to custom the print order of participant.
@startuml participant Last order 30 participant Middle order 20 participant First order 10 @enduml

分類子名にアルファベット以外を使う
分類子を定義するときに引用符を使用することができます。そして、分類子にエイリアスを与えるためにキーワード as を使用することができます。
@startuml Alice -> "Bob()" : Hello "Bob()" -> "This is very\nlong" as Long ' You can also declare: ' "Bob()" -> Long as "This is very\nlong" Long --> "Bob()" : ok @enduml

自分自身へのメッセージ
分類子は自分自身へメッセージを送信できます。
\n を使用して、複数行のテキストを扱えます。
@startuml Alice->Alice: This is a signal to self.\nIt also demonstrates\nmultiline \ntext @enduml

矢印の見た目を変える
矢印の見た目をいくつかの方法によって変更できます。
- メッセージの消失を示す最後の
xを追加 \や/を<や>の代わりに使うと- 矢印の先端が上側だけまたは下側だけになります。
- 矢印の先端を繰り返す (たとえば
>>や//) と、矢印の先端が細くなります。 --を-の代わりに使うと、矢印が点線になります。- 矢じりに最後の “O” を追加
- 双方向の矢印を使用する
@startuml Bob ->x Alice Bob -> Alice Bob ->> Alice Bob -\ Alice Bob \\- Alice Bob //-- Alice Bob ->o Alice Bob o\\-- Alice Bob <-> Alice Bob <->o Alice @enduml

矢印の色を替える
以下の表記を使って、個々の矢印の色を変えることができます。
@startuml Bob -[#red]> Alice : hello Alice -[#0000FF]->Bob : ok @enduml

メッセージシーケンスの番号付け
メッセージへ自動で番号を振るために、キーワード autonumber を使います。
@startuml autonumber Bob -> Alice : Authentication Request Bob <- Alice : Authentication Response @enduml

”autonumber ‘開始’ で開始番号を、また、autonumber ‘開始’ ‘増分”’ で増分も指定することができます。
@startuml autonumber Bob -> Alice : Authentication Request Bob <- Alice : Authentication Response autonumber 15 Bob -> Alice : Another authentication Request Bob <- Alice : Another authentication Response autonumber 40 10 Bob -> Alice : Yet another authentication Request Bob <- Alice : Yet another authentication Response @enduml

二重引用符で囲って番号の書式を指定することができます。
その書式指定は Java の DecimalFormat 方式で行う(’0‘ は桁を表し, ‘\#‘ は存在しない場合は 0 で埋める桁を意味する)。
HTMLタグを書式に使うこともできます。
@startuml autonumber "<b>[000]" Bob -> Alice : Authentication Request Bob <- Alice : Authentication Response autonumber 15 "<b>(<u>##</u>)" Bob -> Alice : Another authentication Request Bob <- Alice : Another authentication Response autonumber 40 10 "<font color=red><b>Message 0 " Bob -> Alice : Yet another authentication Request Bob <- Alice : Yet another authentication Response @enduml

autonumber stop と ”autonumber resume ‘増分’ ‘書式”’ を自動採番の一時停止と再開にそれぞれを使用することができます。
@startuml autonumber 10 10 "<b>[000]" Bob -> Alice : Authentication Request Bob <- Alice : Authentication Response autonumber stop Bob -> Alice : dummy autonumber resume "<font color=red><b>Message 0 " Bob -> Alice : Yet another authentication Request Bob <- Alice : Yet another authentication Response autonumber stop Bob -> Alice : dummy autonumber resume 1 "<font color=blue><b>Message 0 " Bob -> Alice : Yet another authentication Request Bob <- Alice : Yet another authentication Response @enduml

図の分割
図を複数の画像に分けるためにキーワード newpage を使います。
新しいページのタイトルをキーワード newpage の直後に書くことができます。
これは、複数ページにわたる長い図を書くときに便利な機能です。
@startuml Alice -> Bob : message 1 Alice -> Bob : message 2 newpage Alice -> Bob : message 3 Alice -> Bob : message 4 newpage A title for the\nlast page Alice -> Bob : message 5 Alice -> Bob : message 6 @enduml

メッセージのグループ化
次のキーワードを使えば、メッセージをまとめてグループ化できます。
alt/elseoptloopparbreakcriticalgroup表示するテキスト
ヘッダ部分に文字列を追加することが可能です。(group を除く)
グループを閉じるにはキーワード end を使用します。
注:グループはネスト可能です。
@startuml Alice -> Bob: Authentication Request alt successful case Bob -> Alice: Authentication Accepted else some kind of failure Bob -> Alice: Authentication Failure group My own label Alice -> Log : Log attack start loop 1000 times Alice -> Bob: DNS Attack end Alice -> Log : Log attack end end else Another type of failure Bob -> Alice: Please repeat end @enduml

メッセージの注釈
メッセージのすぐ後ろにキーワード note left または note right を使用しメッセージの注釈をつけることが可能です。
end note キーワードを使って、複数行の注釈を付けることができます。
@startuml Alice->Bob : hello note left: this is a first note Bob->Alice : ok note right: this is another note Bob->Bob : I am thinking note left a note can also be defined on several lines end note @enduml

その他の注釈
分類子との相対位置を指定して注釈を付けるには、次のものを使います :
注釈を目立たせるために、背景色を変えることができます。
また、キーワード end note を使って複数行の注釈を付けることができます。
@startuml participant Alice participant Bob note left of Alice #aqua This is displayed left of Alice. end note note right of Alice: This is displayed right of Alice. note over Alice: This is displayed over Alice. note over Alice, Bob #FFAAAA: This is displayed\n over Bob and Alice. note over Bob, Alice This is yet another example of a long note. end note @enduml

ノートの形を変える。
キーワード hnote と rnote を使ってノートの形を変更できます。
@startuml caller -> server : conReq hnote over caller : idle caller <- server : conConf rnote over server "r" as rectangle "h" as hexagon endrnote @enduml

Creole と HTML
PlantUML では creole フォーマットを使うこともできます。
@startuml participant Alice participant "The **Famous** Bob" as Bob Alice -> Bob : hello --there-- ... Some ~~long delay~~ ... Bob -> Alice : ok note left This is **bold** This is //italics// This is ""monospaced"" This is --stroked-- This is __underlined__ This is ~~waved~~ end note Alice -> Bob : A //well formatted// message note right of Alice This is <back:cadetblue><size:18>displayed</size></back> __left of__ Alice. end note note left of Bob <u:red>This</u> is <color #118888>displayed</color> **<color purple>left of</color> <s:red>Alice</strike> Bob**. end note note over Alice, Bob <w:#FF33FF>This is hosted</w> by <img sourceforge.jpg> end note @enduml

境界線
== を使って、図を論理的なステップに分けることも出来ます。
@startuml == Initialization == Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response == Repetition == Alice -> Bob: Another authentication Request Alice <-- Bob: another authentication Response @enduml

リファレンス
キーワード ref over を使用して、図中にリファレンスを挿入できます。
@startuml participant Alice actor Bob ref over Alice, Bob : init Alice -> Bob : hello ref over Bob This can be on several lines end ref @enduml

遅延
処理の遅延を表すために ... が使えます。また、作成した遅延にコメントを付けることもできます。
@startuml Alice -> Bob: Authentication Request ... Bob --> Alice: Authentication Response ...5 minutes latter... Bob --> Alice: Bye ! @enduml

間隔
図の間隔を調整するために、記号|||を使用することができます。
さらにピクセル数を指定することもできます。
@startuml Alice -> Bob: message 1 Bob --> Alice: ok ||| Alice -> Bob: message 2 Bob --> Alice: ok ||45|| Alice -> Bob: message 3 Bob --> Alice: ok @enduml

ライフラインの活性化と破壊
activate と deactivate を使って分類子の活性化を表します。
分類子の活性化はライフラインで表されます。
activate と deactivate は直前のメッセージに適用されます。
destroy は分類子のライフラインが終わったことを表します。
@startuml participant User User -> A: DoWork activate A A -> B: << createRequest >> activate B B -> C: DoWork activate C C --> B: WorkDone destroy C B --> A: RequestCreated deactivate B A -> User: Done deactivate A @enduml

ライフラインはネスト(入れ子に)することができ、色をつけることもできます。
@startuml participant User User -> A: DoWork activate A #FFBBBB A -> A: Internal call activate A #DarkSalmon A -> B: << createRequest >> activate B B --> A: RequestCreated deactivate B deactivate A A -> User: Done deactivate A @enduml

分類子の生成
キーワード create を、オブジェクトが最初のメッセージを受信する直前に置くことにより、このメッセージがオブジェクトを新しく 生成 していることを強調して表現できます。
@startuml Bob -> Alice : hello create Other Alice -> Other : new create control String Alice -> String note right : You can also put notes! Alice --> Bob : ok @enduml

インとアウトのメッセージ
図の一部だけにフォーカスを当てたい場合には、インまたはアウトのメッセージを使えます。
左角括弧 “[” を使って図の左端、 右角括弧 “]” を使って図の右側を表せます。
@startuml [-> A: DoWork activate A A -> A: Internal call activate A A ->] : << createRequest >> A<--] : RequestCreated deactivate A [<- A: Done deactivate A @enduml

また、次の書き方も使えます:
@startuml [-> Bob [o-> Bob [o->o Bob [x-> Bob [<- Bob [x<- Bob Bob ->] Bob ->o] Bob o->o] Bob ->x] Bob <-] Bob x<-] @enduml

ステレオタイプとスポット
<< と >> を使い分類子にステレオタイプをつけることができます。
(X,color) と記述することによりステレオタイプに色付きの文字と円のアイコンをつけることができます。
@startuml participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml

デフォルトでは guillemet キャラクターはステレオタイプを表示するために使用されます。 スキンパラメータ guillemet を使用してこの動作を変更することができます:
@startuml skinparam guillemet false participant "Famous Bob" as Bob << Generated >> participant Alice << (C,#ADD1B2) Testable >> Bob->Alice: First message @enduml

@startuml participant Bob << (C,#ADD1B2) >> participant Alice << (C,#ADD1B2) >> Bob->Alice: First message @enduml

タイトルについての詳細
タイトルには creole フォーマットが使用できます。
@startuml title __Simple__ **communication** example Alice -> Bob: Authentication Request Bob -> Alice: Authentication Response @enduml

タイトルの記述では \n を使用して新しい行を追加することができます。
@startuml title __Simple__ communication example\non several lines Alice -> Bob: Authentication Request Bob -> Alice: Authentication Response @enduml

また、キーワード title と end title を使うことにより、タイトルを複数行にわたって記述できます。
@startuml title <u>Simple</u> communication example on <i>several</i> lines and using <font color=red>html</font> This is hosted by <img:sourceforge.jpg> end title Alice -> Bob: Authentication Request Bob -> Alice: Authentication Response @enduml

分類子の囲み
キーワード box と end box を使い、分類子のまわりにボックスを描くことができます。
タイトルや背景色をキーワード box に続けて任意で追加できます。
@startuml box "Internal Service" #LightBlue participant Bob participant Alice end box participant Other Bob -> Alice : hello Alice -> Other : hello @enduml

フッターの除去
図のフッターを削除するにはキーワード hide footbox を使います。
@startuml hide footbox title Footer removed Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response @enduml

スキンパラメータ
図の色やフォントを変えるにはキーワード skinparam を使います。
キーワードを使用できるのは:
- 他のコマンドと同じように図の定義の中、
- インクルードしたファイルの中、
- またはコマンドラインで指定された設定ファイルや Ant タスクの中です。
次の例のように他のパラメータを変えることもできます。
@startuml skinparam sequenceArrowThickness 2 skinparam roundcorner 20 skinparam maxmessagesize 60 skinparam sequenceParticipant underline actor User participant "First Class" as A participant "Second Class" as B participant "Last Class" as C User -> A: DoWork activate A A -> B: Create Request activate B B -> C: DoWork activate C C --> B: WorkDone destroy C B --> A: Request Created deactivate B A --> User: Done deactivate A @enduml

@startuml
skinparam backgroundColor #EEEBDC
skinparam handwritten true
skinparam sequence {
ArrowColor DeepSkyBlue
ActorBorderColor DeepSkyBlue
LifeLineBorderColor blue
LifeLineBackgroundColor #A9DCDF
ParticipantBorderColor DeepSkyBlue
ParticipantBackgroundColor DodgerBlue
ParticipantFontName Impact
ParticipantFontSize 17
ParticipantFontColor #A9DCDF
ActorBackgroundColor aqua
ActorFontColor DeepSkyBlue
ActorFontSize 17
ActorFontName Aapex
}
actor User
participant "First Class" as A
participant "Second Class" as B
participant "Last Class" as C
User -> A: DoWork
activate A
A -> B: Create Request
activate B
B -> C: DoWork
activate C
C --> B: WorkDone
destroy C
B --> A: Request Created
deactivate B
A --> User: Done
deactivate A
@enduml

パディングの変更
パディングの設定を変更することができます。
@startuml skinparam ParticipantPadding 20 skinparam BoxPadding 10 box "Foo1" participant Alice1 participant Alice2 end box box "Foo2" participant Bob1 participant Bob2 end box Alice1 -> Bob1 : hello Alice1 -> Out : out @enduml