# Class ActorDefinition OptimaJet.Workflow.Core.Model.ActorDefinition Represents a workflow actor that links a [RestrictionDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/RestrictionDefinition/) in a process scheme to the authorization rule named by [ActorDefinition.Rule](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/) and stores its optional parameter in [ActorDefinition.Value](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/). Namespace: [OptimaJet.Workflow.Core.Model](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/) ```csharp public class ActorDefinition : BaseDefinition ``` ## Type Hierarchy - [BaseDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/BaseDefinition/) - ActorDefinition Current type ## Properties `public string OriginalName { get; set; }` Gets or sets the actor name recorded when scheme inlining first copied this definition into another process scheme. `public string OriginalSchemeCode { get; set; }` Gets or sets the source process scheme code recorded when this actor was first inlined. `public bool WasInlined { get; set; }` Gets or sets a value indicating whether scheme inlining copied this actor from another process scheme. `public string Rule { get; set; }` Gets or sets the name of the authorization rule that determines which workflow participant identities match this actor. `public string Value { get; set; }` Gets or sets the optional parameter value passed to the authorization rule named by [ActorDefinition.Rule](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/). ### Remarks When [ActorDefinition.IsValueExpression](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/) is [true](https://learn.microsoft.com/dotnet/csharp/language-reference/builtin-types/bool), this value is evaluated as an expression first. In either case, workflow substitutions are applied to the resulting value before the rule is invoked. `public bool IsValueExpression { get; set; }` Gets or sets a value indicating whether [ActorDefinition.Value](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/) contains expression source that is evaluated to obtain the parameter for the authorization rule named by [ActorDefinition.Rule](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/). `public bool IsPredefined { get; set; }` Gets or sets a value indicating whether this actor was added to the process scheme by a [WorkflowRuntime](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Runtime/WorkflowRuntime/) as a predefined actor. ## Methods `public ActorDefinition Clone()` Creates a shallow copy of this [ActorDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/) and clones its [BaseDefinition.DesignerSettings](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/BaseDefinition/). ### Returns | Type | Description | | --- | --- | | `ActorDefinition` | A new [ActorDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinition/) with the same actor data and independent [BaseDefinition.DesignerSettings](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/BaseDefinition/). | ### Exceptions | Type | Description | | --- | --- | | `NullReferenceException` | [BaseDefinition.DesignerSettings](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/BaseDefinition/) is [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null). | [Previous ActivityType](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActivityType/) [Next ActorDefinitionCompare](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActorDefinitionCompare/)