UmaluはアスキーアートでUMLシーケンス図を描画します。
<script src="umalu-sequence.js"></script>
typeにtext/x-umalu-sequenceを指定したscriptタグにアスキーアートを埋め込むことで対応するシーケンス図が描画されます。
<script type="text/x-umalu-sequence">
+--------------+ +----------+ +--------+
| User Web | | Server | | DB |
| Client | +----------+ +--------+
+--------------+ | |
| | |
+-+ send +-+ |
| | request | | |
| |------------>| | |
| | | | |
+-------------------------------------------+
|alt/ | |[success] | | | |
| | | | | +-+ |
| | | | |query | | |
| | | | |----------->| | |
| | | | | | | |
| | | +-----------------------------+ |
| | | |loop/ | | | | | |
| | | | | |--, | | | |
| | | | | | | process | | | |
| | | | | |<-' | | | |
| | | +-----------------------------+ |
| | | | | | | |
| | | | |Commit | | |
| | | | |----------->| | |
| | | | | | | |
|-------------------------------------------|
| | |[error] | | | | |
| | | | |Rollback | | |
| | | | |----------->| | |
+-------------------------------------------+
| | | | | |
+-+ +-+ +-+
| | |
</script>
+-------+ +-----+
| Alice | | Bob |
+-------+ +-----+
| |
| Hello |
|-------->|
| |
+-------+ +-----+
| Alice | | Bob |
+-------+ +-----+
| |
+-+ +-+
| | Hello | |
| |------->| |
| | | |
+-+ +-+
| |
+-------+ +-----+
| Alice | | Bob |
+-------+ +-----+
| |
+-------------------+
|loop/ |[twice] | |
| | | |
| | Hello | |
| |-------->| |
| | | |
+-------------------+
| |
+-------+ +-----+
| Alice | | Bob |
+-------+ +-----+
| |
+-------------------+
|alt/ |[shiny] | |
| | | |
| | Hello | |
| |-------->| |
| | | |
|-------------------|
| |[rainy] | |
| | | |
| | Rainy | |
| |-------->| |
| | | |
+-------------------+
| |