This page is part of the FHIR Specification (v5.0.0-snapshot3: R5 Snapshot #3, to support Connectathon 32). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions
FHIR Infrastructure Work Group | Maturity Level: 1 | Trial Use | Security Category: Anonymous | Compartments: Not linked to any defined compartments |
Describes an actor - a human or an application that plays a role in data exchange, and that may have obligations associated with the role the actor plays.
The ActorDefinition Resource an actor that can plays the role of a participant in some kind of described process. Generally, in the scope of FHIR, the process is some kind of data exchange, and ActorDefinition is defined for this purpose.
However it's also possible to use actors in descriptions and definitions of clinical business flows, though FHIR itself does not provide a business process description language, nor will it. The intention of the ActorDefinition is that other business process languages will refer the actors and in doing so, bring into scope the technical artifacts associated with the actor.
Once defined, Actors may be asociated with obligations defined in profiles to describe expected application behaviour.
Actors may also be referenced from ExampleXcenario.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ActorDefinition | TU | DomainResource | An application that exchanges data + Warning: Name should be usable as an identifier for the module by machine processing applications such as code generation Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension Interfaces Implemented: CanonicalResource | |
url | ΣC | 0..1 | uri | Canonical identifier for this actor definition, represented as a URI (globally unique) + Warning: URL should not contain | or # - these characters make processing canonical references problematic |
identifier | Σ | 0..* | Identifier | Additional identifier for the actor definition (business identifier) |
version | Σ | 0..1 | string | Business version of the actor definition |
name | ΣC | 0..1 | string | Name for this actor definition (computer friendly) |
title | ΣT | 0..1 | string | Name for this actor definition (human friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown PublicationStatus (Required) |
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage |
date | Σ | 0..1 | dateTime | Date last changed |
publisher | ΣT | 0..1 | string | Name of the publisher/steward (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | T | 0..1 | markdown | Natural language description of the actor |
useContext | ΣTU | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for actor definition (if applicable) Jurisdiction ValueSet (Extensible) |
purpose | T | 0..1 | markdown | Why this actor definition is defined |
copyright | T | 0..1 | markdown | Use and/or publishing restrictions |
copyrightLabel | T | 0..1 | string | Copyright holder and year(s) |
type | Σ | 1..1 | code | person | system ExampleScenarioActorType (Required) |
documentation | T | 0..1 | markdown | Functionality associated with the actor |
reference | 0..* | url | Reference to more information about the actor | |
capabilities | 0..1 | canonical(CapabilityStatement) | CapabilityStatement for the actor (if applicable) | |
derivedFrom | 0..* | canonical(ActorDefinition) | Definition of this actor in another context / IG | |
Documentation for this format |
See the Extensions for this resource
UML Diagram (Legend)
XML Template
<ActorDefinition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Canonical identifier for this actor definition, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the actor definition (business identifier) --></identifier> <version value="[string]"/><!-- 0..1 Business version of the actor definition --> <name value="[string]"/><!-- I 0..1 Name for this actor definition (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this actor definition (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the actor --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for actor definition (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this actor definition is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) --> <type value="[code]"/><!-- 1..1 person | system --> <documentation value="[markdown]"/><!-- 0..1 Functionality associated with the actor --> <reference value="[url]"/><!-- 0..* Reference to more information about the actor --> <capabilities><!-- 0..1 canonical(CapabilityStatement) CapabilityStatement for the actor (if applicable) --></capabilities> <derivedFrom><!-- 0..* canonical(ActorDefinition) Definition of this actor in another context / IG --></derivedFrom> </ActorDefinition>
JSON Template
{ "resourceType" : "ActorDefinition", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // Canonical identifier for this actor definition, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Additional identifier for the actor definition (business identifier) "version" : "<string>", // Business version of the actor definition "name" : "<string>", // I Name for this actor definition (computer friendly) "title" : "<string>", // Name for this actor definition (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // Date last changed "publisher" : "<string>", // Name of the publisher/steward (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the actor "useContext" : [{ UsageContext }], // The context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for actor definition (if applicable) "purpose" : "<markdown>", // Why this actor definition is defined "copyright" : "<markdown>", // Use and/or publishing restrictions "copyrightLabel" : "<string>", // Copyright holder and year(s) "type" : "<code>", // R! person | system "documentation" : "<markdown>", // Functionality associated with the actor "reference" : ["<url>"], // Reference to more information about the actor "capabilities" : "<canonical(CapabilityStatement)>", // CapabilityStatement for the actor (if applicable) "derivedFrom" : ["<canonical(ActorDefinition)>"] // Definition of this actor in another context / IG }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:ActorDefinition; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:ActorDefinition.url [ uri ]; # 0..1 Canonical identifier for this actor definition, represented as a URI (globally unique) fhir:ActorDefinition.identifier [ Identifier ], ... ; # 0..* Additional identifier for the actor definition (business identifier) fhir:ActorDefinition.version [ string ]; # 0..1 Business version of the actor definition fhir:ActorDefinition.name [ string ]; # 0..1 I Name for this actor definition (computer friendly) fhir:ActorDefinition.title [ string ]; # 0..1 Name for this actor definition (human friendly) fhir:ActorDefinition.status [ code ]; # 1..1 draft | active | retired | unknown fhir:ActorDefinition.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:ActorDefinition.date [ dateTime ]; # 0..1 Date last changed fhir:ActorDefinition.publisher [ string ]; # 0..1 Name of the publisher/steward (organization or individual) fhir:ActorDefinition.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:ActorDefinition.description [ markdown ]; # 0..1 Natural language description of the actor fhir:ActorDefinition.useContext [ UsageContext ], ... ; # 0..* The context that the content is intended to support fhir:ActorDefinition.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for actor definition (if applicable) fhir:ActorDefinition.purpose [ markdown ]; # 0..1 Why this actor definition is defined fhir:ActorDefinition.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions fhir:ActorDefinition.copyrightLabel [ string ]; # 0..1 Copyright holder and year(s) fhir:ActorDefinition.type [ code ]; # 1..1 person | system fhir:ActorDefinition.documentation [ markdown ]; # 0..1 Functionality associated with the actor fhir:ActorDefinition.reference [ url ], ... ; # 0..* Reference to more information about the actor fhir:ActorDefinition.capabilities [ canonical(CapabilityStatement) ]; # 0..1 CapabilityStatement for the actor (if applicable) fhir:ActorDefinition.derivedFrom [ canonical(ActorDefinition) ], ... ; # 0..* Definition of this actor in another context / IG ]
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ActorDefinition | TU | DomainResource | An application that exchanges data + Warning: Name should be usable as an identifier for the module by machine processing applications such as code generation Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension Interfaces Implemented: CanonicalResource | |
url | ΣC | 0..1 | uri | Canonical identifier for this actor definition, represented as a URI (globally unique) + Warning: URL should not contain | or # - these characters make processing canonical references problematic |
identifier | Σ | 0..* | Identifier | Additional identifier for the actor definition (business identifier) |
version | Σ | 0..1 | string | Business version of the actor definition |
name | ΣC | 0..1 | string | Name for this actor definition (computer friendly) |
title | ΣT | 0..1 | string | Name for this actor definition (human friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown PublicationStatus (Required) |
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage |
date | Σ | 0..1 | dateTime | Date last changed |
publisher | ΣT | 0..1 | string | Name of the publisher/steward (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | T | 0..1 | markdown | Natural language description of the actor |
useContext | ΣTU | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for actor definition (if applicable) Jurisdiction ValueSet (Extensible) |
purpose | T | 0..1 | markdown | Why this actor definition is defined |
copyright | T | 0..1 | markdown | Use and/or publishing restrictions |
copyrightLabel | T | 0..1 | string | Copyright holder and year(s) |
type | Σ | 1..1 | code | person | system ExampleScenarioActorType (Required) |
documentation | T | 0..1 | markdown | Functionality associated with the actor |
reference | 0..* | url | Reference to more information about the actor | |
capabilities | 0..1 | canonical(CapabilityStatement) | CapabilityStatement for the actor (if applicable) | |
derivedFrom | 0..* | canonical(ActorDefinition) | Definition of this actor in another context / IG | |
Documentation for this format |
See the Extensions for this resource
XML Template
<ActorDefinition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Canonical identifier for this actor definition, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the actor definition (business identifier) --></identifier> <version value="[string]"/><!-- 0..1 Business version of the actor definition --> <name value="[string]"/><!-- I 0..1 Name for this actor definition (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this actor definition (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the actor --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for actor definition (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this actor definition is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) --> <type value="[code]"/><!-- 1..1 person | system --> <documentation value="[markdown]"/><!-- 0..1 Functionality associated with the actor --> <reference value="[url]"/><!-- 0..* Reference to more information about the actor --> <capabilities><!-- 0..1 canonical(CapabilityStatement) CapabilityStatement for the actor (if applicable) --></capabilities> <derivedFrom><!-- 0..* canonical(ActorDefinition) Definition of this actor in another context / IG --></derivedFrom> </ActorDefinition>
JSON Template
{ "resourceType" : "ActorDefinition", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // Canonical identifier for this actor definition, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Additional identifier for the actor definition (business identifier) "version" : "<string>", // Business version of the actor definition "name" : "<string>", // I Name for this actor definition (computer friendly) "title" : "<string>", // Name for this actor definition (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // Date last changed "publisher" : "<string>", // Name of the publisher/steward (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the actor "useContext" : [{ UsageContext }], // The context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for actor definition (if applicable) "purpose" : "<markdown>", // Why this actor definition is defined "copyright" : "<markdown>", // Use and/or publishing restrictions "copyrightLabel" : "<string>", // Copyright holder and year(s) "type" : "<code>", // R! person | system "documentation" : "<markdown>", // Functionality associated with the actor "reference" : ["<url>"], // Reference to more information about the actor "capabilities" : "<canonical(CapabilityStatement)>", // CapabilityStatement for the actor (if applicable) "derivedFrom" : ["<canonical(ActorDefinition)>"] // Definition of this actor in another context / IG }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:ActorDefinition; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:ActorDefinition.url [ uri ]; # 0..1 Canonical identifier for this actor definition, represented as a URI (globally unique) fhir:ActorDefinition.identifier [ Identifier ], ... ; # 0..* Additional identifier for the actor definition (business identifier) fhir:ActorDefinition.version [ string ]; # 0..1 Business version of the actor definition fhir:ActorDefinition.name [ string ]; # 0..1 I Name for this actor definition (computer friendly) fhir:ActorDefinition.title [ string ]; # 0..1 Name for this actor definition (human friendly) fhir:ActorDefinition.status [ code ]; # 1..1 draft | active | retired | unknown fhir:ActorDefinition.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:ActorDefinition.date [ dateTime ]; # 0..1 Date last changed fhir:ActorDefinition.publisher [ string ]; # 0..1 Name of the publisher/steward (organization or individual) fhir:ActorDefinition.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:ActorDefinition.description [ markdown ]; # 0..1 Natural language description of the actor fhir:ActorDefinition.useContext [ UsageContext ], ... ; # 0..* The context that the content is intended to support fhir:ActorDefinition.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for actor definition (if applicable) fhir:ActorDefinition.purpose [ markdown ]; # 0..1 Why this actor definition is defined fhir:ActorDefinition.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions fhir:ActorDefinition.copyrightLabel [ string ]; # 0..1 Copyright holder and year(s) fhir:ActorDefinition.type [ code ]; # 1..1 person | system fhir:ActorDefinition.documentation [ markdown ]; # 0..1 Functionality associated with the actor fhir:ActorDefinition.reference [ url ], ... ; # 0..* Reference to more information about the actor fhir:ActorDefinition.capabilities [ canonical(CapabilityStatement) ]; # 0..1 CapabilityStatement for the actor (if applicable) fhir:ActorDefinition.derivedFrom [ canonical(ActorDefinition) ], ... ; # 0..* Definition of this actor in another context / IG ]
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) , the spreadsheet version & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
ActorDefinition.status | The lifecycle status of an artifact. | Required | PublicationStatus |
ActorDefinition.jurisdiction | This value set defines a base set of codes for country, country subdivision and region for indicating where a resource is intended to be used. Note: The codes for countries and country subdivisions are taken from ISO 3166 while the codes for "supra-national" regions are from UN Standard country or area codes for statistical use (M49) . | Extensible | JurisdictionValueSet |
ActorDefinition.type | The type of actor - system or human. | Required | ExampleScenarioActorType |
UniqueKey | Level | Location | Description | Expression |
cnl-0 | Warning | (base) | Name should be usable as an identifier for the module by machine processing applications such as code generation | name.exists() implies name.matches('[A-Z]([A-Za-z0-9_]){1,254}') |
cnl-1 | Warning | ActorDefinition.url | URL should not contain | or # - these characters make processing canonical references problematic | url.matches('([^|#])*') |
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
context | token | A use context assigned to the Actor Definition | (ActorDefinition.useContext.value as CodeableConcept) | 30 Resources |
context-quantity | quantity | A quantity- or range-valued use context assigned to the Actor Definition | (ActorDefinition.useContext.value as Quantity) | (ActorDefinition.useContext.value as Range) | 30 Resources |
context-type | token | A type of use context assigned to the Actor Definition | ActorDefinition.useContext.code | 30 Resources |
context-type-quantity | composite | A use context type and quantity- or range-based value assigned to the Actor Definition | On ActorDefinition.useContext: context-type: code context-quantity: value.ofType(Quantity) | value.ofType(Range) | 30 Resources |
context-type-value | composite | A use context type and value assigned to the Actor Definition | On ActorDefinition.useContext: context-type: code context: value.ofType(CodeableConcept) | 30 Resources |
date | date | The Actor Definition publication date | ActorDefinition.date | 30 Resources |
description | string | The description of the Actor Definition | ActorDefinition.description | 28 Resources |
identifier | token | External identifier for the Actor Definition | ActorDefinition.identifier | 28 Resources |
jurisdiction | token | Intended jurisdiction for the Actor Definition | ActorDefinition.jurisdiction | 26 Resources |
publisher | string | Name of the publisher of the Actor Definition | ActorDefinition.publisher | 30 Resources |
status | token | The current status of the Actor Definition | ActorDefinition.status | 34 Resources |
title | string | The human-friendly name of the Actor Definition | ActorDefinition.title | 27 Resources |
type | token | The type of actor | ActorDefinition.type | |
url | uri | The uri that identifies the Actor Definition | ActorDefinition.url | 33 Resources |
version | token | The business version of the Actor Definition | ActorDefinition.version | 30 Resources |