Implements the GATE-EXCLUSIVE (XOR) gateway. Evaluates the incoming
current_result value against each outgoing branch's BranchDirect
condition and routes execution to exactly one matching branch.
The GATE alias is also handled by this module and behaves identically.
| Node Type | Icon | BPMN | Status |
|---|---|---|---|
GATE-EXCLUSIVE |
◇× |
Exclusive Gateway (XOR) | Implemented |
GATE |
◇ |
Exclusive Gateway (Default) | Implemented |
current_result to a string value (e.g. "YES", "NO", "HIGH").BranchDirect matches current_result (case-insensitive) is taken.ELSE fallback branch is taken.Exactly one path is executed — no parallel execution occurs.
-- Route based on a YES/NO result
INSERT INTO def_workflows
(WorkflowName, Package, Rank, Type, Name, BranchDirect)
VALUES
('MY_WF', 'core', 10, 'SERVICE', 'CheckCredit', NULL),
('MY_WF', 'core', 20, 'GATE-EXCLUSIVE','RouteDecision', NULL),
('MY_WF', 'core', 30, 'API', 'Approve', 'YES'),
('MY_WF', 'core', 30, 'API', 'Decline', 'NO'),
('MY_WF', 'core', 30, 'API', 'Review', 'ELSE');
| Node Type | Icon | BPMN Type | Status | Description |
|---|---|---|---|---|
GATE-EXCLUSIVE |
◇× |
Exclusive Gateway (XOR) | Implemented | Exactly one path is chosen based on current_result |
GATE |
◇ |
Exclusive Gateway (Default) | Implemented | Alias for GATE-EXCLUSIVE; generic default gateway |
GATE-PARALLEL |
◇+ |
Parallel Gateway (AND) | Placeholder | All outgoing paths execute in parallel |
GATE-INCLUSIVE |
◇○ |
Inclusive Gateway (OR) | Placeholder | One or more paths are chosen |
GATE-FAN-OUT |
◇» |
Complex Gateway (Fan-Out) | Placeholder | Distributes work across parallel bulk workers |
GATE-FAN-IN |
◇« |
Complex Gateway (Fan-In) | Placeholder | Aggregates results from parallel bulk workers |
GATE-GATHER |
◇∑ |
Parallel Gateway (Merge) | Placeholder | Gathers and merges converging branches |
ObjWorkflowNode.py — Base node classObjWorkflow.py — Workflow orchestration engineObjWorkflowGateParallel.py — Parallel gatewayObjWorkflowGateInclusive.py — Inclusive gatewayObjEnum.WorkflowNodeType — Node type definitionsObjConstants.WorkflowNodeIcons — Icon constantsUpdated: 2026-03-01