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.

joinspec for join nodes

0 votes


In a previous posting I was asking for a way to combine forks with decision nodes. "plantuml" even created a quick test version with that feature.

During that discussion, I already mentioned an alternative: joinspec. This also is a standard activitiy model feature, it looks like that:

The joinspec is the "{or}" label in the example. Would it be able to add that?




asked Jan 11 in Wanted features by Jens (140 points)

1 Answer

0 votes

Yes, it will be possible to add that.

We are currently woking on that, but don't have enough time so please be patient :-)

A message will be posted here when ready.

answered Jan 12 by plantuml (125,210 points)
Thank you for the quick answer! I will be patient ;-)
Hmm... maybe I'm not that patient after all ;-) Maybe I could help you implementing that feature. I understand the code is found at


Is there any other code? For example, I did not found any tests.
Is there a contribution guideline or something? Are you interested in contributions?
Yes, this is the code. There is also a mirror on https://github.com/plantuml/plantuml

Unfortunately, the refactoring we have started is not committed yet, so doing modification by yourself is not really possible on the "new code".
However, we are close to finish, so patience is the only option :-)

We are open to contributions but we have no guide yet for this.
People who succeed to understand the code usually send patches by mail, or clone the github tree.

Another way of contribution is to suggest syntax/new feature like you've done.
Skeaking about this and to keep things as simple as possible, we envision to allow brackets after the "end fork" command,
so that you could have:

:action A;
fork again
:action B;
end fork {or}

What do you think about it ?
Syntax is great!

When you're done with the refactoring, let me know. If I would contribute source code, I would probably use git fork and pull request.
Here is a beta https://dl.dropboxusercontent.com/u/13064071/plantuml.jar
that supports the syntax "end fork {or}"
Not widely tested, so feedback welcome!
Support This Project Offer 250 Mo! Follow PlantUML on Twitter