I have a somewhat philosophical question.
With an exclusive gateway (XOR) we can let the process take one of N possible paths. But the same can be achieved with error boundary events: An activity can throw BpmnError instances with appropriate error codes. Then we can attach N error boundary events to the activity and create the process paths accordingly. Of course this only remains readable for small N (max. 2, I’d say).
What are the pros and cons in using XOR gateways vs. boundary events for branching logic in the process?
Thank you for any thoughts!