Proses Taip
Ekspresi grafik
Berfikir Taip
Ekspresi berstruktur
Nota Taip
Ekspresi yang cekap

Rajah UrutanSintaks

Rajah Urutan

Mermaid boleh memaparkan gambar rajah jujukan. Gambar rajah jujukan ialah sejenis gambar rajah interaksi, ia memaparkan cara setiap proses beroperasi antara satu sama lain serta susunan operasinya.

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->>John: Hello John, how are you? John-->>Alice: Great! Alice-)John: See you later!
Maklumat

Nota tentang nod: disebabkan cara bahasa Mermaid ditulis, perkataan "end" akan merosakkan keseluruhan graf. Jika "end" mesti digunakan, perkataan "end" perlu dibalut menggunakan kurungan kecil (), tanda petik berganda "", pendakap besar {} atau pendakap sederhana [], iaitu: (end), [end], {end}.

Sintaks

Peserta

Peserta akan dipaparkan mengikut susunan kemunculannya dalam teks sumber carta. Kadangkala, anda mungkin ingin memaparkan peserta dalam susunan yang berbeza daripada kemunculan dalam mesej pertama; susunan kemunculan peserta boleh ditentukan melalui kaedah berikut:

Kod
                            
Salin
Benamkan
sequenceDiagram participant Alice participant Bob Bob->>Alice: Hi Alice Alice->>Bob: Hi Bob

角色

Jika anda ingin menggunakan simbol peranan dan bukan segi empat tepat dengan teks, ia boleh dicapai dengan menggunakan pernyataan peranan, seperti yang ditunjukkan di bawah.

Kod
                            
Salin
Benamkan
sequenceDiagram actor Alice actor Bob Alice->>Bob: Hi Bob Bob->>Alice: Hi Alice

Alias

Anda boleh menggunakan as selepas pengisytiharan peserta untuk mentakrifkan alias

Kod
                            
Salin
Benamkan
sequenceDiagram participant A as Alice participant J as John A->>J: Hello John, how are you? J->>A: Great!

Penciptaan dan pemusnahan peserta

Peserta boleh dicipta dan dimusnahkan melalui mesej. Oleh itu, sila tambah arahan cipta atau musnah sebelum mesej.

                            
Salin
Benamkan
participant B A --> B: Hello

Semasa mencipta arahan, pembezakan antara peserta dan alias disokong. Penghantar atau penerima mesej boleh dimusnahkan, tetapi penerima hanya boleh dicipta.

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->>Bob: Hello Bob, how are you ? Bob->>Alice: Fine, thank you. And you? create participant Carl Alice->>Carl: Hi Carl! create actor D as Donald Carl->>D: Hi! destroy Carl Alice-xCarl: We are too many destroy Bob Bob->>Alice: I agree

Kumpulan/kotak

Peserta boleh dikumpulkan dalam kotak menegak. Anda boleh menggunakan simbol untuk mentakrifkan warna (jika tidak ditakrifkan, ia akan menjadi lutsinar).

                            
Salin
Benamkan
box Aqua Group Description ... actors ... end box Group without description ... actors ... end box rgb(33,66,99) ... actors ... end box rgba(33,66,99,0.5) ... actors ... end
Maklumat

Jika nama kumpulan anda berwarna, anda boleh memaksa warna itu menjadi lutsinar:

                            
Salin
Benamkan
box transparent Aqua ... actors ... end
Kod
                            
Salin
Benamkan
sequenceDiagram box Orange Alice & John participant A participant J end box Another Group participant B participant C end A->>J: Hello John, how are you? J->>A: Great! A->>B: Hello Bob, how is Charley? B->>C: Hello Charley, how are you?

Mesej

Mesej boleh dipaparkan sebagai garisan pejal atau garisan putus-putus.

Garisan boleh jadi pejal atau putus-putus, dan menyokong pengakhiran dengan pelbagai jenis anak panah, silang atau anak panah terbuka.

                            
Salin
Benamkan
[Actor][Arrow][Actor]:Message text

Sepuluh jenis anak panah standard

Jenis Penerangan
-> Garisan pejal tanpa anak panah
--> Garisan putus-putus tanpa anak panah
->> Garisan pejal dengan anak panah
-->> Garisan putus-putus dengan anak panah
<<->> Garisan pejal anak panah dua hala
<<-->> Garisan putus-putus anak panah dua hala
-x Garisan pejal dengan silang di hujung
--x Garisan putus-putus dengan silang di hujung
-) Garisan pejal berakhir dengan anak panah berongga (tak segerak)
--) Garisan putus-putus berakhir dengan anak panah berongga (tak segerak)

Aktifkan

Peranan boleh diaktifkan dan dinyahaktifkan; penyahaktifan atau pengaktifan boleh jadi pengisytiharan khusus:

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->>Bob: Hello Bob, how are you? activate Alice Bob->>Alice: Hi Alice! deactivate Alice

Terdapat juga tatatanda pintas, iaitu menambah + atau - selepas anak panah mesej.

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->>+John: Hello John, how are you? John-->>-Alice: Great!

Pengaktifan peranan yang sama boleh bertindih:

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->>+John: Hello John, how are you? Alice->>+John: John, can you hear me? John-->>-Alice: Hi Alice, I can hear you! John-->>-Alice: I feel great!

Komen

Komen boleh ditambah pada gambar rajah jujukan. Ia boleh dicapai melalui simbol berikut: Note[right of] atau [left of] atau [over][peserta]: kandungan komen

Kod
                            
Salin
Benamkan
sequenceDiagram participant John Note right of John: Text in note

Anda juga boleh mencipta komen yang meliputi dua peserta:

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->John: Hello John, how are you? Note over Alice,John: A typical interaction

Aksara baris baharu

Aksara baris baharu boleh ditambah dalam komen dan mesej:

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->John: Hello John,<br/>how are you? Note over Alice,John: A typical interaction<br/>But now in two lines

Aksara baris baharu dalam nama peranan perlu ditakrifkan alias:

Kod
                            
Salin
Benamkan
sequenceDiagram participant Alice as Alice<br/>Johnson Alice->John: Hello John,<br/>how are you? Note over Alice,John: A typical interaction<n/>But now in two lines

Gelung

Gelung boleh dinyatakan dalam gambar rajah jujukan melalui simbol berikut.

                            
Salin
Benamkan
loop Loop text ... statements ... end

Sila rujuk contoh di bawah:

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->John: Hello John, how are you? loop Every minute John-->Alice: Great! end

Alternatif

Laluan alternatif boleh dinyatakan dalam gambar rajah jujukan melalui simbol.

                            
Salin
Benamkan
alt Describing text... statements else statements end

或者如果存在可选序列:

                            
Salin
Benamkan
opt Describing text... statements end

Sila rujuk contoh di bawah:

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->>Bob: Hello Bob, how are you? alt is sick Bob->>Alice: Not so good :( else is well Bob->>Alice: Feeling fresh like a daisy end opt Extra response Bob->>Alice: Thanks for asking end

Selari

Tindakan yang berlaku secara selari boleh diwakili melalui simbol berikut.

Kod
                            
Salin
Benamkan
par Action 1 statements and Action 2 statements and Action N statements end

Sila rujuk contoh di bawah:

Kod
                            
Salin
Benamkan
sequenceDiagram par Alice to Bob Alice->>Bob: Hello guys! and Alice to John Alice->>John: Hello guys! end Bob-->>Alice: Hi Alice! John-->>Alice: Hi Alice!

Blok selari juga boleh bersarang.

Kod
                            
Salin
Benamkan
sequenceDiagram par Alice to Bob Alice->>Bob: Go help John and Alice to John Alice->>John: I want this done today par John to Charlie John->>Charlie: Can we do this today? and John to Diana John->>Diana: Can you help us today? end end

Kawasan kritikal

Operasi yang mesti dilaksanakan secara automatik boleh ditunjukkan dengan menyyaratkan pelbagai situasi.

Ini dilakukan melalui simbol berikut:

                            
Salin
Benamkan
critical [Action that must be performed] ... statements ... option [Circumstance A] ... statements ... option [Circumstance B] ... statements ... end

Sila rujuk contoh di bawah:

Kod
                            
Salin
Benamkan
sequenceDiagram critical Establish a connection to the DB Service-->DB: connect option Network timeout Service-->Service: Log error option Credentials rejected Service-->Service: Log different error end

Ada juga kemungkinan tiada pilihan sama sekali.

Kod
                            
Salin
Benamkan
critical Establish a connection to the DB Service-->DB: connect end

Blok kritikal ini juga boleh bersarang, setara dengan pernyataan par yang dilihat di atas.

Gangguan

Pemberhentian jujukan boleh ditunjukkan dalam proses, biasanya digunakan untuk memodelkan situasi luar biasa.

Ini dilakukan melalui simbol berikut:

                            
Salin
Benamkan
break [something happened] ... statements ... end

Sila rujuk contoh di bawah:

Kod
                            
Salin
Benamkan
sequenceDiagram Consumer-->API: Book something API-->BookingService: Start booking process break when the booking process fails API-->Consumer: show failure end API-->BillingService: Start billing process

Sorotan latar belakang

Segi empat tepat latar belakang berwarna boleh ditetapkan untuk menyorot proses, dilakukan melalui simbol berikut:

                            
Salin
Benamkan
rect COLOR ... content ... end

Warna ditakrifkan menggunakan sintaks rgb dan rgba.

                            
Salin
Benamkan
rect rgb(0, 255, 0) ... content ... end
                            
Salin
Benamkan
rect rgba(0, 0, 255, .1) ... content ... end

Sila rujuk contoh di bawah:

Kod
                            
Salin
Benamkan
sequenceDiagram participant Alice participant John rect rgb(191, 178, 255) note right of Alice: Alice calls John. Alice->>+John: Hello John, how are you? rect rgb(142, 182, 89) Alice->>+John: John, can you hear me? John-->>-Alice: Hi Alice, I can hear you! end John-->>-Alice: I feel great! end Alice ->>+ John: Did you want to go to the game tonight? John -->>- Alice: Yeah! See you there.

Komen

Komen boleh dimasukkan dalam gambar rajah jujukan, dan editor akan mengabaikannya. Komen perlu menduduki satu baris sendiri, dan mesti bermula dengan dua tanda peratus %%. Sebarang teks dari permulaan komen hingga aksara baris baharu seterusnya akan dianggap sebagai komen, termasuk sebarang sintaks carta.

Kod
                            
Salin
Benamkan
sequenceDiagram Alice->>John: Hello John, how are you? %% this is a comment John-->>Alice: Great!

Pengekodan entiti untuk aksara pelepasan

Aksara boleh dilepaskan menggunakan sintaks berikut.

Kod
                            
Salin
Benamkan
sequenceDiagram A->>B: I #9829; you! B->>A: I #9829; you #infin; times more!

Nombor yang diberikan ialah perpuluhan, jadi (#) boleh dikodkan sebagai (#35;), dan penggunaan nama aksara HTML juga disokong.

Oleh kerana titik bertindih boleh menggantikan aksara baris baharu untuk mentakrifkan penanda, apabila teks mesej mengandungi titik bertindih, anda perlu menggunakan (#59;).

Penomboran

Nombor jujukan boleh dilampirkan pada setiap anak panah dalam gambar rajah jujukan. Seperti yang ditunjukkan di bawah:

Kod
                            
Salin
Benamkan
sequenceDiagram autonumber Alice->>John: Hello John, how are you? loop HealthCheck John->>John: Fight against hypochondria end Note right of John: Rational thoughts! John-->>Alice: Great! John->>Bob: How about you? Bob-->>John: Jolly good!

Menu peserta

Peserta boleh mengandungi menu timbul, yang menyenaraikan pautan tersuai ke halaman luar. Contohnya, jika sesuatu peranan mewakili perkhidmatan rangkaian, pautan berguna mungkin termasuk pautan ke papan pemuka kesihatan perkhidmatan, repositori yang mengandungi kod perkhidmatan itu, atau pautan ke halaman wiki yang menerangkan perkhidmatan tersebut.

Ia boleh dikonfigurasikan dengan menambah satu atau lebih baris pautan, dengan format berikut:

                            
Salin
Benamkan
link <actor>: <link-label> @ <link-url>
Kod
                            
Salin
Benamkan
sequenceDiagram participant Alice participant John link Alice: Dashboard @ https://dashboard.contoso.com/alice link Alice: Wiki @ https://wiki.contoso.com/alice link John: Dashboard @ https://dashboard.contoso.com/john link John: Wiki @ https://wiki.contoso.com/john Alice->>John: Hello John, how are you? John-->>Alice: Great! Alice-)John: See you later!

Sintaks menu lanjutan

Terdapat sintaks lanjutan yang bergantung pada format JSON. Jika anda mahir dengan format JSON, ini juga boleh digunakan.

Ia boleh dikonfigurasikan dengan menambah baris pautan dalam format berikut:

                            
Salin
Benamkan
links <actor>: <json-formatted link-name link-url pairs>

示例如下:

Kod
                            
Salin
Benamkan
sequenceDiagram participant Alice participant John links Alice: {"Dashboard": "https://dashboard.contoso.com/alice", "Wiki": "https://wiki.contoso.com/alice"} links John: {"Dashboard": "https://dashboard.contoso.com/john", "Wiki": "https://wiki.contoso.com/john"} Alice->>John: Hello John, how are you? John-->>Alice: Great! Alice-)John: See you later!