> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aseeflow.org/llms.txt
> Use this file to discover all available pages before exploring further.

# ASEE Flow BPMN Extension Attributes

The following attributes are extension attributes for the `camunda` namespace `http://camunda.org/schema/1.0/bpmn`.

## assignee

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a human performer of a [User Task](/reference/bpmn20/tasks/user-task). </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a performer as <code>java.lang.String</code> or an expression which evaluates to a <code>java.lang.String</code> e.g., <code>\$\{initiator}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## asyncAfter

<table class="table table-striped">
  <tr> <th>Description</th> <td> Specifies an asynchronous continuation after an activity, see [Asynchronous Continuations](/user-guide/process-engine/transactions-in-processes#asynchronous-continuations) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Boolean</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>true</code>, <code>false</code> </td> </tr>
  <tr> <th>Default Value</th> <td><code>false</code></td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Start Events](/reference/bpmn20/events/start-events), [End Events](/reference/bpmn20/events), [Intermediate Throw Events](/reference/bpmn20/events), [Intermediate Catch Events](/reference/bpmn20/events), Task, [Service Task](/reference/bpmn20/tasks/service-task), [Send Task](/reference/bpmn20/tasks/send-task), [User Task](/reference/bpmn20/tasks/user-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Script Task](/reference/bpmn20/tasks/script-task), [Receive Task](/reference/bpmn20/tasks/receive-task), [Manual Task](/reference/bpmn20/tasks/manual-task), [Embedded Subprocess](/reference/bpmn20/subprocesses/embedded-subprocess), [Call Activity](/reference/bpmn20/subprocesses/call-activity), [Transaction Subprocess](/reference/bpmn20/subprocesses/transaction-subprocess), [Parallel Gateway](/reference/bpmn20/gateways/parallel-gateway), [Inclusive Gateway](/reference/bpmn20/gateways/inclusive-gateway), [Exclusive Gateway](/reference/bpmn20/gateways/exclusive-gateway), [Multi Instance Loop Characteristics](/reference/bpmn20/tasks/task-markers#multiple-instance), Boundary Event, [Message Boundary Event](/reference/bpmn20/events/message-events#message-boundary-event), [Error Boundary Event](/reference/bpmn20/events/error-events#error-boundary-event), [Timer Boundary Event](/reference/bpmn20/events/timer-events#timer-boundary-event), [Escalation Boundary Event](/reference/bpmn20/events/escalation-events#escalation-boundary-event), [Conditional Boundary Event](/reference/bpmn20/events/conditional-events#conditional-boundary-event), [Signal Boundary Event](/reference/bpmn20/events/signal-events#signal-boundary-event), [Cancel Boundary Event](/reference/bpmn20/events/cancel-and-compensation-events#cancel-boundary-event) </td> </tr>
</table>

## asyncBefore

<table class="table table-striped">
  <tr> <th>Description</th> <td> Specifies an asynchronous continuation before an activity, see [Asynchronous Continuations](/user-guide/process-engine/transactions-in-processes#asynchronous-continuations) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Boolean</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>true</code>, <code>false</code> </td> </tr>
  <tr> <th>Default Value</th> <td><code>false</code></td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Start Events](/reference/bpmn20/events/start-events), [End Events](/reference/bpmn20/events), [Intermediate Throw Events](/reference/bpmn20/events), [Intermediate Catch Events](/reference/bpmn20/events), Task, [Service Task](/reference/bpmn20/tasks/service-task), [Send Task](/reference/bpmn20/tasks/send-task), [User Task](/reference/bpmn20/tasks/user-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Script Task](/reference/bpmn20/tasks/script-task), [Receive Task](/reference/bpmn20/tasks/receive-task), [Manual Task](/reference/bpmn20/tasks/manual-task), [Embedded Subprocess](/reference/bpmn20/subprocesses/embedded-subprocess), [Call Activity](/reference/bpmn20/subprocesses/call-activity), [Transaction Subprocess](/reference/bpmn20/subprocesses/transaction-subprocess), [Parallel Gateway](/reference/bpmn20/gateways/parallel-gateway), [Event Based Gateway](/reference/bpmn20/gateways/event-based-gateway), [Inclusive Gateway](/reference/bpmn20/gateways/inclusive-gateway), [Exclusive Gateway](/reference/bpmn20/gateways/exclusive-gateway), [Multi Instance Loop Characteristics](/reference/bpmn20/tasks/task-markers#multiple-instance), Boundary Event, [Message Boundary Event](/reference/bpmn20/events/message-events#message-boundary-event), [Error Boundary Event](/reference/bpmn20/events/error-events#error-boundary-event), [Timer Boundary Event](/reference/bpmn20/events/timer-events#timer-boundary-event), [Escalation Boundary Event](/reference/bpmn20/events/escalation-events#escalation-boundary-event), [Conditional Boundary Event](/reference/bpmn20/events/conditional-events#conditional-boundary-event), [Signal Boundary Event](/reference/bpmn20/events/signal-events#signal-boundary-event), [Cancel Boundary Event](/reference/bpmn20/events/cancel-and-compensation-events#cancel-boundary-event) </td> </tr>
</table>

## calledElementBinding

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which process definition version of the subprocess the call activity calls. If the value is <code>version</code>, the attribute [camunda:calledElementVersion](/reference/bpmn20/custom-extensions/extension-attributes#calledelementversion) is required. If the value is <code>versionTag</code>, the attribute [camunda:calledElementVersionTag](/reference/bpmn20/custom-extensions/extension-attributes#calledelementversiontag) is required. See [Called Element Binding](/reference/bpmn20/subprocesses/call-activity#calledelement-binding) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>latest</code>, <code>deployment</code>, <code>version</code>, <code>versionTag</code> </td> </tr>
  <tr> <th>Default Value</th> <td><code>latest</code></td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity) </td> </tr>
</table>

## calledElementVersion

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which process definition version of the subprocess the call activity calls if the [camunda:calledElementBinding](/reference/bpmn20/custom-extensions/extension-attributes#calledelementbinding) is set to <code>version</code>, see [Called Element Binding](/reference/bpmn20/subprocesses/call-activity#calledelement-binding) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Integer</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete version of all deployed version numbers of the subprocess to call as <code>java.lang.Integer</code> or an expression which evaluates to a <code>java.lang.Integer</code> e.g., <code>\$\{versionToCall}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity) </td> </tr>
</table>

## calledElementVersionTag

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which process definition version tag of the subprocess the call activity calls if the [camunda:calledElementBinding](/reference/bpmn20/custom-extensions/extension-attributes#calledelementbinding) is set to <code>versionTag</code>, see [Called Element Binding](/reference/bpmn20/subprocesses/call-activity#calledelement-binding) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete version tag of all deployed version numbers of the subprocess to call as <code>java.lang.String</code> or an expression which evaluates to a <code>java.lang.String</code> e.g., <code>\$\{versionTagToCall}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity) </td> </tr>
</table>

## calledElementTenantId

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the tenant id of the process definition which is to be resolved by a call activity, see [Called Element Tenant Id](/reference/bpmn20/subprocesses/call-activity#calledelement-tenant-id) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete tenant id or an expression which evaluates to a <code>java.lang.String</code> e.g., <code>\$\{execution.tenantId}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity) </td> </tr>
</table>

## candidateGroups

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which group(s) will be candidate for performing the [User Task](/reference/bpmn20/tasks/user-task). </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Comma separated list of group ids as <code>java.lang.String</code> or expressions that evaluate to a <code>java.lang.String</code> or a <code>java.util.Collection</code> of <code>java.lang.String</code>, e.g., <code>management</code> or <code>management, \$\{accountancyGroupId()}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## candidateStarterGroups

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which group(s) will be able to start the process. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Comma separated list of group ids as <code>java.lang.String</code> or expressions that evaluate to a <code>java.lang.String</code> or a <code>java.util.Collection</code> of <code>java.lang.String</code>, e.g., <code>management</code> or <code>management, \$\{accountancyGroupId()}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Process </td> </tr>
</table>

## candidateStarterUsers

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which user(s) will be able to start the process. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Comma separated list of user ids as <code>java.lang.String</code> or expressions that evaluate to a <code>java.lang.String</code> or a <code>java.util.Collection</code> of <code>java.lang.String</code>, e.g., <code>kermit, gonzo</code> or <code>\$\{ldapService.findAllSales()}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Process </td> </tr>
</table>

## candidateUsers

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which user(s) will be candidate for performing the [User Task](/reference/bpmn20/tasks/user-task). </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Comma separated list of user ids as <code>java.lang.String</code> or expressions that evaluate to a <code>java.lang.String</code> or a <code>java.util.Collection</code> of <code>java.lang.String</code>, e.g., <code>kermit, gonzo</code> or <code>\$\{ldapService.findAllSales()}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## caseBinding

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which case definition version of the subcase the call activity calls. If the value is <code>version</code>, the attribute [camunda:caseVersion](/reference/bpmn20/custom-extensions/extension-attributes#caseversion) is required, see [Case Binding](/reference/bpmn20/subprocesses/call-activity#create-a-case-instance) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>latest</code>, <code>deployment</code>, <code>version</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity#create-a-case-instance) </td> </tr>
</table>

## caseRef

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute references a case definition by its key to call. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td>–</td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity#create-a-case-instance) </td> </tr>
</table>

## caseVersion

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which case definition version of the subcase the call activity calls if the [camunda:caseBinding](/reference/bpmn20/custom-extensions/extension-attributes#casebinding) is set to <code>version</code>, see [Case Binding](/reference/bpmn20/subprocesses/call-activity#create-a-case-instance) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Integer</code></td> </tr>
  <tr> <th>Possible Values</th> <td> All deployed version numbers of the subprocess to call </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity#create-a-case-instance) </td> </tr>
</table>

## caseTenantId

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the tenant id of the case definition which is to be resolved by a call activity, see [Case  Tenant Id](/reference/bpmn20/subprocesses/call-activity#case-tenant-id) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete tenant id or an expression which evaluates to a <code>java.lang.String</code> e.g., <code>\$\{execution.tenantId}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity) </td> </tr>
</table>

## class

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which Java class will be executed at runtime. The stated class must implement a [Java delegate](/user-guide/process-engine/delegation-code#java-delegate) interface. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Fully qualified Java class name of a class which implements a [Java Delegate](/user-guide/process-engine/delegation-code#java-delegate) interface, e.g., <code>org.camunda.bpm.MyJavaDelegate</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Service Task](/reference/bpmn20/tasks/service-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Send Task](/reference/bpmn20/tasks/send-task), Message Event Definition of [Message Intermediate Throwing Event](/reference/bpmn20/events/message-events#message-intermediate-throwing-event) or [Message End Event](/reference/bpmn20/events/message-events#message-end-event), [camunda:taskListener](/reference/bpmn20/custom-extensions/extension-elements#tasklistener), [camunda:executionListner](/reference/bpmn20/custom-extensions/extension-elements#executionlistener) </td> </tr>
</table>

## collection

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a collection, where an instance will be created for each element, see [Multiple Instance](/reference/bpmn20/tasks/task-markers#multiple-instance) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a <code>java.util.Collection</code> process variable as <code>java.lang.String</code> or an Expression which evaluates to the name of a collection </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Multi Instance Loop Characteristics](/reference/bpmn20/tasks/task-markers#multiple-instance) of Task, [Embedded Subprocess](/reference/bpmn20/subprocesses/embedded-subprocess), [Call Activity](/reference/bpmn20/subprocesses/call-activity), [Transaction Subprocess](/reference/bpmn20/subprocesses/transaction-subprocess) </td> </tr>
</table>

## decisionRef

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute references a decision definition to evalute by its key. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A String or an expression which evalutes to the key of a decision definition which should be evaluated by this task, e.g., <code>myDecisionDefinitionKey</code> or <code>\$\{decisionKey}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Business Rule Task](/reference/bpmn20/tasks/business-rule-task) </td> </tr>
</table>

## decisionRefBinding

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which decision definition version the task evaluates. If the value is <code>version</code>, the attribute [camunda:decisionRefVersion](/reference/bpmn20/custom-extensions/extension-attributes#decisionrefversion) is required. If the value is <code>versionTag</code>, the attribute [camunda:decisionRefVersionTag](/reference/bpmn20/custom-extensions/extension-attributes#decisionrefversiontag) is required. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>latest</code>, <code>deployment</code>, <code>version</code>, <code>versionTag</code> </td> </tr>
  <tr> <th>Default Value</th> <td><code>latest</code></td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Business Rule Task](/reference/bpmn20/tasks/business-rule-task) </td> </tr>
</table>

## decisionRefVersion

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which decision definition version the task evaluates if the [camunda:decisionRefBinding](/reference/bpmn20/custom-extensions/extension-attributes#decisionrefbinding) is set to <code>version</code>. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Integer</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete version of all deployed version numbers of the decision to call as <code>java.lang.Integer</code> or an expression which evaluates to a <code>java.lang.Integer</code> e.g., <code>\$\{versionToCall}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Business Rule Task](/reference/bpmn20/tasks/business-rule-task) </td> </tr>
</table>

## decisionRefVersionTag

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which decision definition version tag the task evaluates if the [camunda:decisionRefBinding](/reference/bpmn20/custom-extensions/extension-attributes#decisionrefbinding) is set to <code>versionTag</code>. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete version tag of all deployed version tags of the decision to call as <code>java.lang.String</code> or an expression which evaluates to a <code>java.lang.String</code> e.g., <code>\$\{versionTagToCall}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Business Rule Task](/reference/bpmn20/tasks/business-rule-task) </td> </tr>
</table>

## decisionRefTenantId

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the tenant id of the decision definition which is to be resolved by a business rule task, see [DecisionRef Tenant Id](/reference/bpmn20/tasks/business-rule-task#decisionref-tenant-id) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete tenant id or an expression which evaluates to a <code>java.lang.String</code> e.g., <code>\$\{execution.tenantId}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Business Rule Task](/reference/bpmn20/tasks/business-rule-task) </td> </tr>
</table>

## delegateExpression

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute allows specification of an expression which must resolve to an object that implements the corresponding interface (see [delegation code](/user-guide/process-engine/delegation-code)). </td> </tr>
  <tr> <th>Type</th> <td><code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Expression which evaluates to a Java class implementing a [delegation](/user-guide/process-engine/delegation-code) interface, e.g., <code>\$\{myJavaDelegate}</code> or <code>#\{myTaskListener}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Service Task](/reference/bpmn20/tasks/service-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Send Task](/reference/bpmn20/tasks/send-task), Message Event Definition of [Message Intermediate Throwing Event](/reference/bpmn20/events/message-events#message-intermediate-throwing-event) or [Message End Event](/reference/bpmn20/events/message-events#message-end-event), [camunda:taskListener](/reference/bpmn20/custom-extensions/extension-elements#tasklistener), [camunda:executionListner](/reference/bpmn20/custom-extensions/extension-elements#executionlistener) </td> </tr>
</table>

## dueDate

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the initial due date of a [User Task](/reference/bpmn20/tasks/user-task) when it is created. </td> </tr>
  <tr> <th>Type</th> <td><code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> An expression which evaluates to a <code>java.util.Date</code>, <code>java.util.String</code> ([ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) formatted) or <code>null</code>, e.g., <code>\$\{dateVariable}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## elementVariable

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the process variable which will be set on each created instance, containing an element of the specified collection see [Multiple Instance](/reference/bpmn20/tasks/task-markers#multiple-instance) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a process variable as <code>java.lang.String</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Multi Instance Loop Characteristics](/reference/bpmn20/tasks/task-markers#multiple-instance) of Task, [Embedded Subprocess](/reference/bpmn20/subprocesses/embedded-subprocess), [Call Activity](/reference/bpmn20/subprocesses/call-activity), [Transaction Subprocess](/reference/bpmn20/subprocesses/transaction-subprocess) </td> </tr>
</table>

## errorMessage

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a message to give further information about the error. When an error start event or boudary event catches the error the message will be saved as process variable if `errorMessageVariable` is configured. See [Error Events](/reference/bpmn20/events/error-events) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The error message as<code>java.lang.String</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Error](/reference/bpmn20/events/error-events) </td> </tr>
</table>

## errorCodeVariable

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a process variable that holds the error code and the errorCodevariable will be set if an error has been received by the error start or boundary event, see [Error Events](/reference/bpmn20/events/error-events) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a process variable as <code>java.lang.String</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Error Events](/reference/bpmn20/events/error-events) </td> </tr>
</table>

## errorMessageVariable

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a process variable that holds the error message and the errorMessageVariable will be set if an error has been received by the error start or boundary event, see [Error Events](/reference/bpmn20/events/error-events) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a process variable as <code>java.lang.String</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Error Events](/reference/bpmn20/events/error-events) </td> </tr>
</table>

## escalationCodeVariable

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a process variable which will be set if an escalation has been received by an escalation start or boundary event, see [Escalation Events](/reference/bpmn20/events/escalation-events) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a process variable as <code>java.lang.String</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Escalation Events](/reference/bpmn20/events/escalation-events) </td> </tr>
</table>

## exclusive

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies that jobs should be executed exclusively. See [Exclusive Jobs](/user-guide/process-engine/the-job-executor#exclusive-jobs) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Boolean</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>true</code>, <code>false</code> </td> </tr>
  <tr> <th>Default Value</th> <td><code>true</code></td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Start Events](/reference/bpmn20/events/start-events), [End Events](/reference/bpmn20/events), [Intermediate Throw Events](/reference/bpmn20/events), [Intermediate Catch Events](/reference/bpmn20/events), Task, [Service Task](/reference/bpmn20/tasks/service-task), [Send Task](/reference/bpmn20/tasks/send-task), [User Task](/reference/bpmn20/tasks/user-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Script Task](/reference/bpmn20/tasks/script-task), [Receive Task](/reference/bpmn20/tasks/receive-task), [Manual Task](/reference/bpmn20/tasks/manual-task), [Embedded Subprocess](/reference/bpmn20/subprocesses/embedded-subprocess), [Call Activity](/reference/bpmn20/subprocesses/call-activity), [Transaction Subprocess](/reference/bpmn20/subprocesses/transaction-subprocess), [Parallel Gateway](/reference/bpmn20/gateways/parallel-gateway), [Event Based Gateway](/reference/bpmn20/gateways/event-based-gateway), [Inclusive Gateway](/reference/bpmn20/gateways/inclusive-gateway), [Exclusive Gateway](/reference/bpmn20/gateways/exclusive-gateway), [Multi Instance Loop Characteristics](/reference/bpmn20/tasks/task-markers#multiple-instance), Boundary Event, [Message Boundary Event](/reference/bpmn20/events/message-events#message-boundary-event), [Error Boundary Event](/reference/bpmn20/events/error-events#error-boundary-event), [Timer Boundary Event](/reference/bpmn20/events/timer-events#timer-boundary-event), [Escalation Boundary Event](/reference/bpmn20/events/escalation-events#escalation-boundary-event), [Conditional Boundary Event](/reference/bpmn20/events/conditional-events#conditional-boundary-event), [Signal Boundary Event](/reference/bpmn20/events/signal-events#signal-boundary-event), [Cancel Boundary Event](/reference/bpmn20/events/cancel-and-compensation-events#cancel-boundary-event) </td> </tr>
</table>

## expression

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute defines an expression which will be evaluated at runtime. </td> </tr>
  <tr> <th>Type</th> <td><code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Expression, e.g., <code>\$\{gender == 'male' ? 'Mr.' : 'Mrs.'}</code> or <code>#\{printer.printMessage()}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Service Task](/reference/bpmn20/tasks/service-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Send Task](/reference/bpmn20/tasks/send-task), Message Event Definition of [Message Intermediate Throwing Event](/reference/bpmn20/events/message-events#message-intermediate-throwing-event) or [Message End Event](/reference/bpmn20/events/message-events#message-end-event), [camunda:taskListener](/reference/bpmn20/custom-extensions/extension-elements#tasklistener), [camunda:executionListner](/reference/bpmn20/custom-extensions/extension-elements#executionlistener) </td> </tr>
</table>

## followUpDate

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the initial follow-up date of a [User Task](/reference/bpmn20/tasks/user-task) when it is created. </td> </tr>
  <tr> <th>Type</th> <td><code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> An expression which evaluates to a <code>java.util.Date</code>, <code>java.util.String</code> ([ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) formatted) or <code>null</code>, e.g., <code>\$\{dateVariable}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## formHandlerClass

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the class that will be called during the parsing of the form information of a [Start Event](/reference/bpmn20/events/start-events) or [User Task](/reference/bpmn20/tasks/user-task). </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Fully qualified Java class name of a class which implements the <code>org.camunda.bpm.engine.impl.form.handler.StartFormHandler</code> or <code>org.camunda.bpm.engine.impl.form.handler.TaskFormHandler</code> interface, e.g., <code>org.camunda.bpm.MyUserTaskFormHandler</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Initial [Start Event](/reference/bpmn20/events/start-events) of a Process, [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## formKey

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a form resource. See [task forms](/user-guide/task-forms) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A <code>java.lang.String</code> of a form resource which can be evaluated by the [Tasklist](/webapps/tasklist) </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Initial [Start Event](/reference/bpmn20/events/start-events) of a Process, [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## formRef

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute references a Camunda form definition by its key. See [task forms](/user-guide/task-forms) for more information. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A <code>java.lang.String</code> or a <code>org.camunda.bpm.engine.delegate.Expression</code> which [Tasklist](/webapps/tasklist) can evaluate to display the referenced Camunda Form, e.g., myCamundaFormDefinitionKey or \$\{formKey}. </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Initial [Start Event](/reference/bpmn20/events/start-events) of a Process, [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## formRefBinding

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which Camunda form definition version the activity references. If the value is <code>version</code>, the attribute [camunda:formRefVersion](/reference/bpmn20/custom-extensions/extension-attributes#formrefversion) is required. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>latest</code>, <code>deployment</code>, <code>version</code> </td> </tr>
  <tr> <th>Default Value</th> <td><code>latest</code></td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Initial [Start Event](/reference/bpmn20/events/start-events) of a Process, [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## formRefVersion

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which Camunda form definition version the activity references if the [camunda:formRefBinding](/reference/bpmn20/custom-extensions/extension-attributes#formrefbinding) is set to <code>version</code>. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Integer</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A concrete version of all deployed version numbers of the Camunda form definition as <code>java.lang.Integer</code> or an expression which evaluates to a <code>java.lang.Integer</code> e.g., <code>\$\{versionToReference}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Initial [Start Event](/reference/bpmn20/events/start-events) of a Process, [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## historyTimeToLive

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the history time to live (in days) for the process definition. It is used within [History cleanup](/user-guide/process-engine/history/history-cleanup). </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Integer</code> or <code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Any non-negative integer number or string containing a time in days defined by the ISO-8601 date format. </td> </tr>
  <tr> <th>Default Value</th> <td>null - means that process definition history won't ever be removed during history cleanup run</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Process </td> </tr>
</table>

## initiator

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies a process variable in which the user id of the process initiator is set. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A process variable name to save the process initiator </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Start Event](/reference/bpmn20/events/start-events) of a Process </td> </tr>
</table>

## isStartableInTasklist

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies whether the process is startable in Tasklist or not. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.Boolean</code></td> </tr>
  <tr> <th>Possible Values</th> <td><code>true</code>, <code>false</code></td> </tr>
  <tr> <th>Default Value</th> <td><code>true</code></td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td>Process</td> </tr>
</table>

## jobPriority

<table class="table table-striped">
  <tr> <th>Description</th> <td> Specifies the priority a job receives that is created in the context of executing the given process element (e.g., a timer event, or in the case of [asyncBefore](/reference/bpmn20/custom-extensions/extension-attributes#asyncbefore) and [asyncAfter](/reference/bpmn20/custom-extensions/extension-attributes#asyncafter)). See the user guide on [Job Prioritization](/user-guide/process-engine/the-job-executor#job-prioritization) for details. </td> </tr>
  <tr> <th>Type</th> <td>A number in the range of a Java <code>long</code> value or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> An expression must resolve to a valid Java <code>long</code> value. </td> </tr>
  <tr> <th>Default Value</th> <td>none</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Start Events](/reference/bpmn20/events/start-events), [End Events](/reference/bpmn20/events), [Intermediate Throw Events](/reference/bpmn20/events), [Intermediate Catch Events](/reference/bpmn20/events), Task, [Service Task](/reference/bpmn20/tasks/service-task), [Send Task](/reference/bpmn20/tasks/send-task), [User Task](/reference/bpmn20/tasks/user-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Script Task](/reference/bpmn20/tasks/script-task), [Receive Task](/reference/bpmn20/tasks/receive-task), [Manual Task](/reference/bpmn20/tasks/manual-task), [Embedded Subprocess](/reference/bpmn20/subprocesses/embedded-subprocess), [Call Activity](/reference/bpmn20/subprocesses/call-activity), [Transaction Subprocess](/reference/bpmn20/subprocesses/transaction-subprocess), [Parallel Gateway](/reference/bpmn20/gateways/parallel-gateway), [Inclusive Gateway](/reference/bpmn20/gateways/inclusive-gateway), [Exclusive Gateway](/reference/bpmn20/gateways/exclusive-gateway), [Multi Instance Loop Characteristics](/reference/bpmn20/tasks/task-markers#multiple-instance), Process </td> </tr>
</table>

## mapDecisionResult

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute references which [built-in Decision Result Mapper](/user-guide/process-engine/decisions/bpmn-cmmn#predefined-mapping-of-the-decision-result) is used to pass the result of an evaluated decision to a process variable. It should be used in combination with [camunda:resultVariable](/reference/bpmn20/custom-extensions/extension-attributes#resultvariable). </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> singleEntry, singleResult, collectEntries, resultList </td> </tr>
  <tr> <th>Default Value</th> <td>resultList</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Business Rule Task](/reference/bpmn20/tasks/business-rule-task) </td> </tr>
</table>

## priority

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the initial priority of a [User Task](/reference/bpmn20/tasks/user-task) when it is created. </td> </tr>
  <tr> <th>Type</th> <td><code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> An expression which evaluates to a <code>java.lang.Number</code> or a <code>java.lang.String</code> which represents a number or <code>null</code>, e.g., <code>\$\{dateVariable}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [User Task](/reference/bpmn20/tasks/user-task) </td> </tr>
</table>

## taskPriority

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the initial priority of an [External Task](/reference/bpmn20/tasks/service-task#external-tasks) when it is created. </td> </tr>
  <tr> <th>Type</th> <td>A number in the range of a Java <code>long</code> value or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> An expression must resolve to a valid Java <code>long</code> value. </td> </tr>
  <tr> <th>Default Value</th> <td>0</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Service Task](/reference/bpmn20/tasks/service-task), [Message End Event](/reference/bpmn20/events/message-events#message-end-event), [Message Intermediate Throwing Event](/reference/bpmn20/events/message-events#message-intermediate-throwing-event), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task#implementing-as-an-external-task), [Send Task](/reference/bpmn20/tasks/send-task), Process </td> </tr>
</table>

## resource

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies an external resource. The resource can be part of the deployment or exists in the classpath. To specify the type of resource, a URL scheme like prefix <code>deployment://</code> resp. <code>classpath://</code> can be supplied. If the scheme is omitted, it is assumed that the resource exists in the classpath. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The path to a resource or an expression which returns the path. Optional the path can start with an URL like scheme <code>classpath://</code> or <code>deployment://</code> to specify where to find the resource. If omitted the resource is assumed to exists in the classpath. </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Script Task](/reference/bpmn20/tasks/script-task) </td> </tr>
</table>

## resultVariable

<table class="table table-striped">
  <tr> <th>Description</th> <td> <p> The attribute specifies the process variable to save the return value of a [camunda:expression](/reference/bpmn20/custom-extensions/extension-attributes#expression). </p> <p> Note that when you use <code>camunda:resultVariable</code> in a multi-instance construct, for example in a multi-instance subprocess, the result variable is overwritten every time the task completes, unless the variable is a [local variable](/user-guide/process-engine/variables#variable-scopes-and-variable-visibility) in the scope of the multi-instance construct. This can lead to seemingly random behavior.</p> <p> This is a known issue. As a workaround, a local variable can be declared by adding an [execution listener](/user-guide/process-engine/delegation-code#execution-listener) to the subprocess' start event that initializes the variable as <code>null</code>. </p> </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a process variable to save the return value </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Service Task](/reference/bpmn20/tasks/service-task), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task), [Script Task](/reference/bpmn20/tasks/script-task), [Send Task](/reference/bpmn20/tasks/send-task), Message Event Definition of [Message Intermediate Throwing Event](/reference/bpmn20/events/message-events#message-intermediate-throwing-event) or [Message End Event](/reference/bpmn20/events/message-events#message-end-event), </td> </tr>
</table>

## versionTag

<table class="table table-striped">
  <tr> <th>Description</th> <td> <p> The attribute specifies a version tag for the process definition. </p> </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Any value that has a meaning as version tag for the process definition. <strong>Note:</strong> Sorting by versionTag is string based. The version will not be interpreted. As an example, the sorting could return v0.1.0, v0.10.0, v0.2.0. </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> Process </td> </tr>
</table>

## topic

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies the topic of an external task instance. The task is going to be offered to workers polling for that topic. It is only relevant when [camunda:type](/reference/bpmn20/custom-extensions/extension-attributes#type) is set to <code>external</code>. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code> or <code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Any value that has a meaning as a topic identifier as <code>java.lang.String</code> or an expression which evaluates to a <code>java.lang.String</code>, e.g. <code>\$\{topicName}</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Service Task](/reference/bpmn20/tasks/service-task), [Message End Event](/reference/bpmn20/events/message-events#message-end-event), [Message Intermediate Throwing Event](/reference/bpmn20/events/message-events#message-intermediate-throwing-event), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task#implementing-as-an-external-task), [Send Task](/reference/bpmn20/tasks/send-task) </td> </tr>
</table>

## type

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which built-in task implementation to use. Currently an email, a shell service, and an external task exists. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> <code>external</code>, <code>mail</code>, <code>shell</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Service Task](/reference/bpmn20/tasks/service-task), [Message End Event](/reference/bpmn20/events/message-events#message-end-event), [Message Intermediate Throwing Event](/reference/bpmn20/events/message-events#message-intermediate-throwing-event), [Business Rule Task](/reference/bpmn20/tasks/business-rule-task#implementing-as-an-external-task), [Send Task](/reference/bpmn20/tasks/send-task) </td> </tr>
</table>

## variableMappingClass

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute specifies which Java class will be executed at runtime to map the input and output variables for a call activity. The stated class must implement the [Delegate Variable Mapping](/user-guide/process-engine/delegation-code#delegate-variable-mapping) interface. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Fully qualified Java class name of a class which implements the [Delegate Variable Mapping](/user-guide/process-engine/delegation-code#delegate-variable-mapping) interface, e.g., <code>org.camunda.bpm.MyVariableMappingDelegate</code> </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity) </td> </tr>
</table>

## variableMappingDelegateExpression

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute allows specification of an expression which must resolve to an object that implements the corresponding interface [Delegate Variable Mapping](/user-guide/process-engine/delegation-code#delegate-variable-mapping). </td> </tr>
  <tr> <th>Type</th> <td><code>org.camunda.bpm.engine.delegate.Expression</code></td> </tr>
  <tr> <th>Possible Values</th> <td> Expression which evaluates to a Java class that implements the [Delegate Variable Mapping](/user-guide/process-engine/delegation-code#delegate-variable-mapping) interface, e.g., <code>\$\{myVariableMapping}</code>. </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Call Activity](/reference/bpmn20/subprocesses/call-activity) </td> </tr>
</table>

## variableName

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute allows to specify a variable name on which a condition of a conditional event should be evaluated exclusively. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> The name of a process variable on which a condition should be evaluated after a change happens. </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Conditional Event](/reference/bpmn20/events/conditional-events) </td> </tr>
</table>

## variableEvents

<table class="table table-striped">
  <tr> <th>Description</th> <td> The attribute allows to specify a comma separated list of variable change events. These events specify the variable change events on which a condition of a conditional event should be evaluated exclusively. </td> </tr>
  <tr> <th>Type</th> <td><code>java.lang.String</code></td> </tr>
  <tr> <th>Possible Values</th> <td> A comma separated list of variable change events. Variable change events are: create, update and delete. </td> </tr>
  <tr> <th>Default Value</th> <td>–</td> </tr>
  <tr> <th>BPMN 2.0 Elements</th> <td> [Conditional Event](/reference/bpmn20/events/conditional-events) </td> </tr>
</table>
