Welcome to PlantUML Q&A, where you can ask questions and receive answers from other members of the community.

You can also submit new features request and vote for them.

How can i create columns to group items into?

0 votes

I am trying to create a diagram that is showing high level coverage of the prodcuers / messaging / consumer design within an application. I would like for the producers to be in a vertical column, the exchanges/queues to be in another column and the consumers in a final column. The diagram is a left to right direction diagram and i would like this to be preserved. 


I have tried to use box in order to do this but i am getting syntax exceptions that i am not sure how to resolve. Could you provide some advice please?

EDIT: error is:

sytnax error?

box "Producers" #5fddd6

agent "eia" as producer1

did you mean:

agent- "eia" as producer1


title Queue design document
box "Producers" #5fddd6
  agent "eia" as producer1 #LightGreen
  agent "epa" as producer2 #LightGreen
  agent "mft" as producer3 #LightGreen
  agent "EP" as producer4 #LightGreen
  agent "eps2" as producer5 #LightGreen
end box
box "Messaging" #bb7068
  agent "exchange.ia.in" as ex2 #LightGrey
  agent "exchange.bi.support.dead-letter"  as ex4 #LightGrey
  agent "exchange.epa.out" as ex5 #LightGrey
  agent "exchange.eps.creditTransfer" as ex6 #LightGrey
  queue "queue.eiacore.mft" as q1 #LightBlue
  queue "queue.epa.req.MT103" as q2 #LightBlue
  queue "queue.epa.req.MT192" as q3 #LightBlue
  queue "queue.epa.req.MT202" as q4 #LightBlue
  queue "queue.epa.req.MT199" as q5 #LightBlue
  queue "queue.epa.req.cdttrftxinf" as q6 #LightBlue
  queue "queue.epa.req.fitofipmtcxlreq" as q7 #LightBlue
  queue "queue.eia.rsp.swift.main" as q9 #LightBlue 
  queue "queue.eia.rsp.error.main" as q10 #LightBlue 
  queue "queue.eia.rsp.sepa" as q11 #LightBlue 
  queue "REQ.SWIFT.LQ" as q12 #LightBlue
  queue "queue.ia.events" as q13 #LightBlue
  queue "queue.eia.rsp.clearing" as q14 #LightBlue
end box
Box "Consumers" #6fc65f
  agent "epa" as consumer1 #LightYellow
  agent "eia" as consumer2 #LightYellow
end box
producer1 --> ex2
producer1 --> "#" ex4
ex2 --> "rk.ia.swift.mt103" q2
ex2 --> "rk.ia.swift.mt192" q3
ex2 --> "rk.ia.swift.mt202" q4
ex2 --> "rk.ia.swift.mt199" q5
ex2 --> "rk.ia.sepa.cdttrftxinf" q6
ex2 --> "rk.ia.sepa.fitofipmtcxlreq" q7
q2 --> consumer1
q3 --> consumer1
q4 --> consumer1
q5 --> consumer1
q6 --> consumer1
q7 --> consumer1
producer2 --> ex5
ex5 --> "rk.epa.swift,\nrk.epa.ar.mt900,\nrk.epa.ar.mt910,\nrk.epa.ar.mt940,\nrk.epa.ar.mt950" q9
ex5 --> "rk.epa.error.main" q10
ex5 --> "rk.epa.sepa" q11
q9 --> consumer2
q10 --> consumer2
q11 --> consumer2
producer3 --> q12
ex2 --> "rk.eiacore.mft" q1
q1 --> consumer2
q12 --> consumer2
producer4 --> "rk.ia.event" q13
q13 --> consumer2
producer5 --> ex6
ex6 --> "creditTransfer.clearingResponse" q14
q14 --> consumer2
asked Mar 8 by anonymous
edited Mar 8

1 Answer

0 votes
Are you trying to create a sequence diagram ?

You should begin with a simpler diagram, with only 4 or 5 elements.
answered Mar 8 by plantuml (111,340 points)
actually its not technically a sequence diagram its more of a topological diagram really. If all the boxes are removed the diagram will work and you will see the producers on the left, messaging information in the middle and consumers on the right. i just want to re-inforce this visually by using boxes.
Support This Project Offer 250 Mo! Follow PlantUML on Twitter