# Class TChoreographyActivity OptimaJet.Workflow.BpmnPlugin.Model.TChoreographyActivity Namespace: [OptimaJet.Workflow.BpmnPlugin.Model](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/) ```csharp public abstract class TChoreographyActivity : TFlowNode ``` ## Type Hierarchy - [TBaseElement](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TBaseElement/) - [TFlowElement](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TFlowElement/) - [TFlowNode](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TFlowNode/) - TChoreographyActivity Current type - [TCallChoreography](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TCallChoreography/) - [TChoreographyTask](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TChoreographyTask/) - [TSubChoreography](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TSubChoreography/) ## Constructors `public TChoreographyActivity()` Initializes a new instance of the [TChoreographyActivity](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TChoreographyActivity/) class. ## Properties `public Collection ParticipantRef { get; }` `public Collection CorrelationKey { get; }` `public bool CorrelationKeySpecified { get; }` Gets a value indicating whether the CorrelationKey collection is empty. `public XmlQualifiedName InitiatingParticipantRef { get; set; }` `public TChoreographyLoopType LoopType { get; set; }` [Previous TChoreography](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TChoreography/) [Next TChoreographyLoopType](https://api.workflowengine.io/bpmn-plugin/OptimaJet.Workflow.BpmnPlugin.Model/TChoreographyLoopType/)