{"record":{"id":"7fc21e970086d75d","repo":"elsa-workflows/elsa-core","slug":"bpmn-element-call-elementid-is-a-call-activity-that-names-no","errorCode":null,"errorMessage":"BPMN element '{call.ElementId}' is a call activity that names no calledElement, so there is no workflow definition to dispatch.","messagePattern":"BPMN element '(.+?)' is a call activity that names no calledElement, so there is no workflow definition to dispatch\\.","errorType":"exception","errorClass":"BpmnBindingException","httpStatus":null,"severity":"error","filePath":"src/modules/Elsa.Bpmn.Interchange/Binding/BpmnWorkBinder.cs","lineNumber":187,"sourceCode":"        }\n    }\n\n    private static TimeSpan IsoDurationOf(BpmnWorkBinding.TimerWait timer)\n    {\n        try\n        {\n            return XmlConvert.ToTimeSpan(timer.IsoDuration);\n        }\n        catch (Exception exception) when (exception is FormatException or OverflowException or ArgumentNullException)\n        {\n            throw new BpmnBindingException($\"BPMN element '{timer.ElementId}' declares the timer duration '{timer.IsoDuration}', which is not an ISO-8601 duration Elsa can wait for.\");\n        }\n    }\n\n    private static string CalledElementOf(BpmnWorkBinding.CallProcess call) =>\n        !string.IsNullOrWhiteSpace(call.CalledElement)\n            ? call.CalledElement\n            : throw new BpmnBindingException($\"BPMN element '{call.ElementId}' is a call activity that names no calledElement, so there is no workflow definition to dispatch.\");\n}\n","sourceCodeStart":169,"sourceCodeEnd":189,"githubUrl":"https://github.com/elsa-workflows/elsa-core/blob/fe9217bdfa0e27f0e09e45006eb6898f616e513d/src/modules/Elsa.Bpmn.Interchange/Binding/BpmnWorkBinder.cs#L169-L189","documentation":"A BPMN call activity must name the workflow definition to invoke via its calledElement attribute. This error is thrown when the call activity has no calledElement, so there is nothing to dispatch at runtime.","triggerScenarios":"BpmnWorkBinder.CalledElementOf (called from CreateActivity for a CallProcess binding) finds call.CalledElement is null or whitespace and throws.","commonSituations":"Drawing a call activity in a modeler but forgetting to set the called process; renaming the target definition and clearing the reference; importing a document exported with the attribute stripped.","solutions":["Set the calledElement attribute on the named call activity to the ID/handle of the target workflow definition.","Verify the target definition exists and is deployed in the importing application.","Re-export the BPMN ensuring the modeling tool writes calledElement for every call activity."],"exampleFix":"// before\n<bpmn:callActivity id=\"Call1\" name=\"Run sub process\" />\n// after\n<bpmn:callActivity id=\"Call1\" name=\"Run sub process\" calledElement=\"OrderFulfillment\" />","handlingStrategy":"validation","validationCode":"var badCalls = doc.Descendants().Where(e => e.Name.LocalName == \"callActivity\")\n    .Where(e => string.IsNullOrWhiteSpace((string?)e.Attribute(\"calledElement\")))\n    .Select(e => (string?)e.Attribute(\"id\")).ToList();\nif (badCalls.Any()) throw new InvalidOperationException($\"Call activities missing calledElement: {string.Join(\", \", badCalls)}\");","typeGuard":"static bool HasCalledElement(XElement callActivity) =>\n    !string.IsNullOrWhiteSpace((string?)callActivity.Attribute(\"calledElement\"));","tryCatchPattern":"try { await importer.ImportAsync(bpmn); }\ncatch (BpmnBindingException ex) when (ex.Message.Contains(\"names no calledElement\"))\n{\n    logger.LogError(ex, \"Set calledElement on the call activity to the target definition.\");\n}","preventionTips":["Require calledElement on every call activity in your BPMN authoring checklist","Verify target definition IDs exist in the importing application","Model call activities through a template that enforces calledElement"],"tags":["bpmn","call-activity","missing-attribute"],"backgroundTag":"missing-required-argument","analyzedSha":"fe9217bdfa0e27f0e09e45006eb6898f616e513d","analyzedAt":"2026-09-13T20:32:34.702Z","contentChangedAt":"2026-09-13T20:32:34.702Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}