FHIR Release 3 (STU)

This page is part of the FHIR Specification (v3.0.2: STU 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

12.18 Resource ActivityDefinition - Content

Clinical Decision Support Work GroupMaturity Level: 2 Trial UseCompartments: Not linked to any defined compartments

This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context.

This resource is a definition resource from a FHIR workflow perspective - see Workflow, specifically Definition.

An ActivityDefinition is a shareable, consumable description of some activity to be performed. It may be used to specify actions to be taken as part of a workflow, order set, or protocol, or it may be used independently as part of a catalog of activities such as orderables.

For more information on how activity definitions can be used to construct request resources, see the Realizing an ActivityDefinition topic below.

In general, an activity definition is simply a conceptual description of some specific action that should be taken. An instance of an ActivityDefinition does not indicate that any action has been performed (as an event resource does), nor does it indicate the actual intent to carry out any particular action (as a request resource does).

Instead, an activity definition provides a reusable template that can be used to construct specific request resources such as ProcedureRequest and MedicationRequest. This is different than a DataElement in that ActivityDefinitions are generally broader than data elements, which are typically used to describe more granular elements, such as a blood pressure, or the answer to a particular question.

Note that this is conceptually similar to the Task resource as well, with the distinction being that ActivityDefinition represents the description of a task in the abstract, while the Task resource is used to track a specific instance of a task as it moves through the steps of a workflow.

This resource is referenced by CarePlan, Communication, DeviceRequest, MedicationAdministration, MedicationRequest, MessageDefinition, PlanDefinition, Procedure, ProcedureRequest, ReferralRequest and Task

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. ActivityDefinition DomainResourceThe definition of a specific activity to be taken, independent of any particular patient or context
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... url Σ0..1uriLogical URI to reference this activity definition (globally unique)
... identifier Σ0..*IdentifierAdditional identifier for the activity definition
... version Σ0..1stringBusiness version of the activity definition
... name Σ0..1stringName for this activity definition (computer friendly)
... title Σ0..1stringName for this activity definition (human friendly)
... status ?!Σ1..1codedraft | active | retired | unknown
PublicationStatus (Required)
... experimental ?!Σ0..1booleanFor testing purposes, not real usage
... date Σ0..1dateTimeDate this was last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... description Σ0..1markdownNatural language description of the activity definition
... purpose 0..1markdownWhy this activity definition is defined
... usage 0..1stringDescribes the clinical usage of the asset
... approvalDate 0..1dateWhen the activity definition was approved by publisher
... lastReviewDate 0..1dateWhen the activity definition was last reviewed
... effectivePeriod Σ0..1PeriodWhen the activity definition is expected to be used
... useContext Σ0..*UsageContextContext the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for activity definition (if applicable)
Jurisdiction ValueSet (Extensible)
... topic 0..*CodeableConceptE.g. Education, Treatment, Assessment, etc
DefinitionTopic (Example)
... contributor 0..*ContributorA content contributor
... contact Σ0..*ContactDetailContact details for the publisher
... copyright 0..1markdownUse and/or publishing restrictions
... relatedArtifact 0..*RelatedArtifactAdditional documentation, citations, etc
... library 0..*Reference(Library)Logic used by the asset
... kind 0..1codeKind of resource
ResourceType (Required)
... code 0..1CodeableConceptDetail type of activity
Procedure Codes (SNOMED CT) (Example)
... timing[x] 0..1When activity is to occur
.... timingTimingTiming
.... timingDateTimedateTime
.... timingPeriodPeriod
.... timingRangeRange
... location 0..1Reference(Location)Where it should happen
... participant 0..*BackboneElementWho should participate in the action
.... type 1..1codepatient | practitioner | related-person
ActionParticipantType (Required)
.... role 0..1CodeableConceptE.g. Nurse, Surgeon, Parent, etc
ActionParticipantRole (Example)
... product[x] 0..1What's administered/supplied
SNOMED CT Medication Codes (Example)
.... productReferenceReference(Medication | Substance)
.... productCodeableConceptCodeableConcept
... quantity 0..1SimpleQuantityHow much is administered/consumed/supplied
... dosage 0..*DosageDetailed dosage instructions
... bodySite 0..*CodeableConceptWhat part of body to perform on
SNOMED CT Body Structures (Example)
... transform 0..1Reference(StructureMap)Transform to apply the template
... dynamicValue 0..*BackboneElementDynamic aspects of the definition
.... description 0..1stringNatural language description of the dynamic value
.... path 0..1stringThe path to the element to be set dynamically
.... language 0..1stringLanguage of the expression
.... expression 0..1stringAn expression that provides the dynamic value for the customization

doco Documentation for this format

UML Diagram (Legend)

ActivityDefinition (DomainResource)An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this activity definition is (or will be) published. The URL SHOULD include the major version of the activity definition. For more information see [Technical and Business Versions](resource.html#versions)url : uri [0..1]A formal identifier that is used to identify this activity definition when it is represented in other formats, or referenced in a specification, model, design or an instanceidentifier : Identifier [0..*]The identifier that is used to identify this version of the activity definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the activity definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active assetsversion : string [0..1]A natural language name identifying the activity definition. This name should be usable as an identifier for the module by machine processing applications such as code generationname : string [0..1]A short, descriptive, user-friendly title for the activity definitiontitle : string [0..1]The status of this activity definition. Enables tracking the life-cycle of the content (this element modifies the meaning of other elements)status : code [1..1] The lifecycle status of a Value Set or Concept Map. (Strength=Required)PublicationStatus! A boolean value to indicate that this activity definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage (this element modifies the meaning of other elements)experimental : boolean [0..1]The date (and optionally time) when the activity definition was published. The date must change if and when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the activity definition changesdate : dateTime [0..1]The name of the individual or organization that published the activity definitionpublisher : string [0..1]A free text natural language description of the activity definition from a consumer's perspectivedescription : markdown [0..1]Explaination of why this activity definition is needed and why it has been designed as it haspurpose : markdown [0..1]A detailed description of how the asset is used from a clinical perspectiveusage : string [0..1]The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usageapprovalDate : date [0..1]The date on which the resource content was last reviewed. Review happens periodically after approval, but doesn't change the original approval datelastReviewDate : date [0..1]The period during which the activity definition content was or is planned to be in active useeffectivePeriod : Period [0..1]The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate activity definition instancesuseContext : UsageContext [0..*]A legal or geographic region in which the activity definition is intended to be usedjurisdiction : CodeableConcept [0..*] Countries and regions within which this artifact is targeted for use (Strength=Extensible)Jurisdiction ValueSet+ Descriptive topics related to the content of the activity. Topics provide a high-level categorization of the activity that can be useful for filtering and searchingtopic : CodeableConcept [0..*] High-level categorization of the definition, used for searching, sorting, and filtering (Strength=Example)DefinitionTopic?? A contributor to the content of the asset, including authors, editors, reviewers, and endorserscontributor : Contributor [0..*]Contact details to assist a user in finding and communicating with the publishercontact : ContactDetail [0..*]A copyright statement relating to the activity definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the activity definitioncopyright : markdown [0..1]Related artifacts such as additional documentation, justification, or bibliographic referencesrelatedArtifact : RelatedArtifact [0..*]A reference to a Library resource containing any formal logic used by the assetlibrary : Reference [0..*] Library A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ProcedureRequest, or a CommunicationRequest. Typically, but not always, this is a Request resourcekind : code [0..1] The kind of activity the definition is describing (Strength=Required)ResourceType! Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encountercode : CodeableConcept [0..1] Detailed type of the activity; e.g. CBC (Strength=Example)Procedure Codes (SNOMED CT)?? The period, timing or frequency upon which the described activity is to occurtiming[x] : Type [0..1] Timing|dateTime|Period|Range Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etclocation : Reference [0..1] Location Identifies the food, drug or other product being consumed or supplied in the activityproduct[x] : Type [0..1] Reference(Medication|Substance)| CodeableConcept; Code describing the type of substance or medication (Strength=Example)SNOMED CT Medication ?? Identifies the quantity expected to be consumed at once (per dose, per meal, etc.)quantity : Quantity(SimpleQuantity) [0..1]Provides detailed dosage instructions in the same way that they are described for MedicationRequest resourcesdosage : Dosage [0..*]Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites)bodySite : CodeableConcept [0..*] A code that identifies the anatomical location (Strength=Example)SNOMED CT Body Structures?? A reference to a StructureMap resource that defines a transform that can be executed to produce the intent resource using the ActivityDefinition instance as the inputtransform : Reference [0..1] StructureMap ParticipantThe type of participant in the actiontype : code [1..1] The type of participant in the activity (Strength=Required)ActionParticipantType! The role the participant should play in performing the described actionrole : CodeableConcept [0..1] Defines roles played by participants for the action (Strength=Example)ActionParticipantRole?? DynamicValueA brief, natural language description of the intended semantics of the dynamic valuedescription : string [0..1]The path to the element to be customized. This is the path on the resource that will hold the result of the calculation defined by the expressionpath : string [0..1]The media type of the language for the expressionlanguage : string [0..1]An expression specifying the value of the customized elementexpression : string [0..1]Indicates who should participate in performing the action describedparticipant[0..*]Dynamic values that will be evaluated to produce values for elements of the resulting resource. For example, if the dosage of a medication must be computed based on the patient's weight, a dynamic value would be used to specify an expression that calculated the weight, and the path on the intent resource that would contain the resultdynamicValue[0..*]

XML Template

<ActivityDefinition xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <url value="[uri]"/><!-- 0..1 Logical URI to reference this activity definition (globally unique) -->
 <identifier><!-- 0..* Identifier Additional identifier for the activity definition --></identifier>
 <version value="[string]"/><!-- 0..1 Business version of the activity definition -->
 <name value="[string]"/><!-- 0..1 Name for this activity definition (computer friendly) -->
 <title value="[string]"/><!-- 0..1 Name for this activity 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 this was last changed -->
 <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) -->
 <description value="[markdown]"/><!-- 0..1 Natural language description of the activity definition -->
 <purpose value="[markdown]"/><!-- 0..1 Why this activity definition is defined -->
 <usage value="[string]"/><!-- 0..1 Describes the clinical usage of the asset -->
 <approvalDate value="[date]"/><!-- 0..1 When the activity definition was approved by publisher -->
 <lastReviewDate value="[date]"/><!-- 0..1 When the activity definition was last reviewed -->
 <effectivePeriod><!-- 0..1 Period When the activity definition is expected to be used --></effectivePeriod>
 <useContext><!-- 0..* UsageContext Context the content is intended to support --></useContext>
 <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for activity definition (if applicable) --></jurisdiction>
 <topic><!-- 0..* CodeableConcept E.g. Education, Treatment, Assessment, etc --></topic>
 <contributor><!-- 0..* Contributor A content contributor --></contributor>
 <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact>
 <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions -->
 <relatedArtifact><!-- 0..* RelatedArtifact Additional documentation, citations, etc --></relatedArtifact>
 <library><!-- 0..* Reference(Library) Logic used by the asset --></library>
 <kind value="[code]"/><!-- 0..1 Kind of resource -->
 <code><!-- 0..1 CodeableConcept Detail type of activity --></code>
 <timing[x]><!-- 0..1 Timing|dateTime|Period|Range When activity is to occur --></timing[x]>
 <location><!-- 0..1 Reference(Location) Where it should happen --></location>
 <participant>  <!-- 0..* Who should participate in the action -->
  <type value="[code]"/><!-- 1..1 patient | practitioner | related-person -->
  <role><!-- 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent, etc --></role>
 </participant>
 <product[x]><!-- 0..1 Reference(Medication|Substance)|CodeableConcept What's administered/supplied --></product[x]>
 <quantity><!-- 0..1 Quantity(SimpleQuantity) How much is administered/consumed/supplied --></quantity>
 <dosage><!-- 0..* Dosage Detailed dosage instructions --></dosage>
 <bodySite><!-- 0..* CodeableConcept What part of body to perform on --></bodySite>
 <transform><!-- 0..1 Reference(StructureMap) Transform to apply the template --></transform>
 <dynamicValue>  <!-- 0..* Dynamic aspects of the definition -->
  <description value="[string]"/><!-- 0..1 Natural language description of the dynamic value -->
  <path value="[string]"/><!-- 0..1 The path to the element to be set dynamically -->
  <language value="[string]"/><!-- 0..1 Language of the expression -->
  <expression value="[string]"/><!-- 0..1 An expression that provides the dynamic value for the customization -->
 </dynamicValue>
</ActivityDefinition>

JSON Template

{doco
  "resourceType" : "ActivityDefinition",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "url" : "<uri>", // Logical URI to reference this activity definition (globally unique)
  "identifier" : [{ Identifier }], // Additional identifier for the activity definition
  "version" : "<string>", // Business version of the activity definition
  "name" : "<string>", // Name for this activity definition (computer friendly)
  "title" : "<string>", // Name for this activity definition (human friendly)
  "status" : "<code>", // R!  draft | active | retired | unknown
  "experimental" : <boolean>, // For testing purposes, not real usage
  "date" : "<dateTime>", // Date this was last changed
  "publisher" : "<string>", // Name of the publisher (organization or individual)
  "description" : "<markdown>", // Natural language description of the activity definition
  "purpose" : "<markdown>", // Why this activity definition is defined
  "usage" : "<string>", // Describes the clinical usage of the asset
  "approvalDate" : "<date>", // When the activity definition was approved by publisher
  "lastReviewDate" : "<date>", // When the activity definition was last reviewed
  "effectivePeriod" : { Period }, // When the activity definition is expected to be used
  "useContext" : [{ UsageContext }], // Context the content is intended to support
  "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for activity definition (if applicable)
  "topic" : [{ CodeableConcept }], // E.g. Education, Treatment, Assessment, etc
  "contributor" : [{ Contributor }], // A content contributor
  "contact" : [{ ContactDetail }], // Contact details for the publisher
  "copyright" : "<markdown>", // Use and/or publishing restrictions
  "relatedArtifact" : [{ RelatedArtifact }], // Additional documentation, citations, etc
  "library" : [{ Reference(Library) }], // Logic used by the asset
  "kind" : "<code>", // Kind of resource
  "code" : { CodeableConcept }, // Detail type of activity
  // timing[x]: When activity is to occur. One of these 4:
  "timingTiming" : { Timing },
  "timingDateTime" : "<dateTime>",
  "timingPeriod" : { Period },
  "timingRange" : { Range },
  "location" : { Reference(Location) }, // Where it should happen
  "participant" : [{ // Who should participate in the action
    "type" : "<code>", // R!  patient | practitioner | related-person
    "role" : { CodeableConcept } // E.g. Nurse, Surgeon, Parent, etc
  }],
  // product[x]: What's administered/supplied. One of these 2:
  "productReference" : { Reference(Medication|Substance) },
  "productCodeableConcept" : { CodeableConcept },
  "quantity" : { Quantity(SimpleQuantity) }, // How much is administered/consumed/supplied
  "dosage" : [{ Dosage }], // Detailed dosage instructions
  "bodySite" : [{ CodeableConcept }], // What part of body to perform on
  "transform" : { Reference(StructureMap) }, // Transform to apply the template
  "dynamicValue" : [{ // Dynamic aspects of the definition
    "description" : "<string>", // Natural language description of the dynamic value
    "path" : "<string>", // The path to the element to be set dynamically
    "language" : "<string>", // Language of the expression
    "expression" : "<string>" // An expression that provides the dynamic value for the customization
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:ActivityDefinition;
  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:ActivityDefinition.url [ uri ]; # 0..1 Logical URI to reference this activity definition (globally unique)
  fhir:ActivityDefinition.identifier [ Identifier ], ... ; # 0..* Additional identifier for the activity definition
  fhir:ActivityDefinition.version [ string ]; # 0..1 Business version of the activity definition
  fhir:ActivityDefinition.name [ string ]; # 0..1 Name for this activity definition (computer friendly)
  fhir:ActivityDefinition.title [ string ]; # 0..1 Name for this activity definition (human friendly)
  fhir:ActivityDefinition.status [ code ]; # 1..1 draft | active | retired | unknown
  fhir:ActivityDefinition.experimental [ boolean ]; # 0..1 For testing purposes, not real usage
  fhir:ActivityDefinition.date [ dateTime ]; # 0..1 Date this was last changed
  fhir:ActivityDefinition.publisher [ string ]; # 0..1 Name of the publisher (organization or individual)
  fhir:ActivityDefinition.description [ markdown ]; # 0..1 Natural language description of the activity definition
  fhir:ActivityDefinition.purpose [ markdown ]; # 0..1 Why this activity definition is defined
  fhir:ActivityDefinition.usage [ string ]; # 0..1 Describes the clinical usage of the asset
  fhir:ActivityDefinition.approvalDate [ date ]; # 0..1 When the activity definition was approved by publisher
  fhir:ActivityDefinition.lastReviewDate [ date ]; # 0..1 When the activity definition was last reviewed
  fhir:ActivityDefinition.effectivePeriod [ Period ]; # 0..1 When the activity definition is expected to be used
  fhir:ActivityDefinition.useContext [ UsageContext ], ... ; # 0..* Context the content is intended to support
  fhir:ActivityDefinition.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for activity definition (if applicable)
  fhir:ActivityDefinition.topic [ CodeableConcept ], ... ; # 0..* E.g. Education, Treatment, Assessment, etc
  fhir:ActivityDefinition.contributor [ Contributor ], ... ; # 0..* A content contributor
  fhir:ActivityDefinition.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher
  fhir:ActivityDefinition.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions
  fhir:ActivityDefinition.relatedArtifact [ RelatedArtifact ], ... ; # 0..* Additional documentation, citations, etc
  fhir:ActivityDefinition.library [ Reference(Library) ], ... ; # 0..* Logic used by the asset
  fhir:ActivityDefinition.kind [ code ]; # 0..1 Kind of resource
  fhir:ActivityDefinition.code [ CodeableConcept ]; # 0..1 Detail type of activity
  # ActivityDefinition.timing[x] : 0..1 When activity is to occur. One of these 4
    fhir:ActivityDefinition.timingTiming [ Timing ]
    fhir:ActivityDefinition.timingDateTime [ dateTime ]
    fhir:ActivityDefinition.timingPeriod [ Period ]
    fhir:ActivityDefinition.timingRange [ Range ]
  fhir:ActivityDefinition.location [ Reference(Location) ]; # 0..1 Where it should happen
  fhir:ActivityDefinition.participant [ # 0..* Who should participate in the action
    fhir:ActivityDefinition.participant.type [ code ]; # 1..1 patient | practitioner | related-person
    fhir:ActivityDefinition.participant.role [ CodeableConcept ]; # 0..1 E.g. Nurse, Surgeon, Parent, etc
  ], ...;
  # ActivityDefinition.product[x] : 0..1 What's administered/supplied. One of these 2
    fhir:ActivityDefinition.productReference [ Reference(Medication|Substance) ]
    fhir:ActivityDefinition.productCodeableConcept [ CodeableConcept ]
  fhir:ActivityDefinition.quantity [ Quantity(SimpleQuantity) ]; # 0..1 How much is administered/consumed/supplied
  fhir:ActivityDefinition.dosage [ Dosage ], ... ; # 0..* Detailed dosage instructions
  fhir:ActivityDefinition.bodySite [ CodeableConcept ], ... ; # 0..* What part of body to perform on
  fhir:ActivityDefinition.transform [ Reference(StructureMap) ]; # 0..1 Transform to apply the template
  fhir:ActivityDefinition.dynamicValue [ # 0..* Dynamic aspects of the definition
    fhir:ActivityDefinition.dynamicValue.description [ string ]; # 0..1 Natural language description of the dynamic value
    fhir:ActivityDefinition.dynamicValue.path [ string ]; # 0..1 The path to the element to be set dynamically
    fhir:ActivityDefinition.dynamicValue.language [ string ]; # 0..1 Language of the expression
    fhir:ActivityDefinition.dynamicValue.expression [ string ]; # 0..1 An expression that provides the dynamic value for the customization
  ], ...;
]

Changes since DSTU2

This resource did not exist in Release 2

This analysis is available as XML or JSON.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. ActivityDefinition DomainResourceThe definition of a specific activity to be taken, independent of any particular patient or context
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... url Σ0..1uriLogical URI to reference this activity definition (globally unique)
... identifier Σ0..*IdentifierAdditional identifier for the activity definition
... version Σ0..1stringBusiness version of the activity definition
... name Σ0..1stringName for this activity definition (computer friendly)
... title Σ0..1stringName for this activity definition (human friendly)
... status ?!Σ1..1codedraft | active | retired | unknown
PublicationStatus (Required)
... experimental ?!Σ0..1booleanFor testing purposes, not real usage
... date Σ0..1dateTimeDate this was last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... description Σ0..1markdownNatural language description of the activity definition
... purpose 0..1markdownWhy this activity definition is defined
... usage 0..1stringDescribes the clinical usage of the asset
... approvalDate 0..1dateWhen the activity definition was approved by publisher
... lastReviewDate 0..1dateWhen the activity definition was last reviewed
... effectivePeriod Σ0..1PeriodWhen the activity definition is expected to be used
... useContext Σ0..*UsageContextContext the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for activity definition (if applicable)
Jurisdiction ValueSet (Extensible)
... topic 0..*CodeableConceptE.g. Education, Treatment, Assessment, etc
DefinitionTopic (Example)
... contributor 0..*ContributorA content contributor
... contact Σ0..*ContactDetailContact details for the publisher
... copyright 0..1markdownUse and/or publishing restrictions
... relatedArtifact 0..*RelatedArtifactAdditional documentation, citations, etc
... library 0..*Reference(Library)Logic used by the asset
... kind 0..1codeKind of resource
ResourceType (Required)
... code 0..1CodeableConceptDetail type of activity
Procedure Codes (SNOMED CT) (Example)
... timing[x] 0..1When activity is to occur
.... timingTimingTiming
.... timingDateTimedateTime
.... timingPeriodPeriod
.... timingRangeRange
... location 0..1Reference(Location)Where it should happen
... participant 0..*BackboneElementWho should participate in the action
.... type 1..1codepatient | practitioner | related-person
ActionParticipantType (Required)
.... role 0..1CodeableConceptE.g. Nurse, Surgeon, Parent, etc
ActionParticipantRole (Example)
... product[x] 0..1What's administered/supplied
SNOMED CT Medication Codes (Example)
.... productReferenceReference(Medication | Substance)
.... productCodeableConceptCodeableConcept
... quantity 0..1SimpleQuantityHow much is administered/consumed/supplied
... dosage 0..*DosageDetailed dosage instructions
... bodySite 0..*CodeableConceptWhat part of body to perform on
SNOMED CT Body Structures (Example)
... transform 0..1Reference(StructureMap)Transform to apply the template
... dynamicValue 0..*BackboneElementDynamic aspects of the definition
.... description 0..1stringNatural language description of the dynamic value
.... path 0..1stringThe path to the element to be set dynamically
.... language 0..1stringLanguage of the expression
.... expression 0..1stringAn expression that provides the dynamic value for the customization

doco Documentation for this format

UML Diagram (Legend)

ActivityDefinition (DomainResource)An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this activity definition is (or will be) published. The URL SHOULD include the major version of the activity definition. For more information see [Technical and Business Versions](resource.html#versions)url : uri [0..1]A formal identifier that is used to identify this activity definition when it is represented in other formats, or referenced in a specification, model, design or an instanceidentifier : Identifier [0..*]The identifier that is used to identify this version of the activity definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the activity definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active assetsversion : string [0..1]A natural language name identifying the activity definition. This name should be usable as an identifier for the module by machine processing applications such as code generationname : string [0..1]A short, descriptive, user-friendly title for the activity definitiontitle : string [0..1]The status of this activity definition. Enables tracking the life-cycle of the content (this element modifies the meaning of other elements)status : code [1..1] The lifecycle status of a Value Set or Concept Map. (Strength=Required)PublicationStatus! A boolean value to indicate that this activity definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage (this element modifies the meaning of other elements)experimental : boolean [0..1]The date (and optionally time) when the activity definition was published. The date must change if and when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the activity definition changesdate : dateTime [0..1]The name of the individual or organization that published the activity definitionpublisher : string [0..1]A free text natural language description of the activity definition from a consumer's perspectivedescription : markdown [0..1]Explaination of why this activity definition is needed and why it has been designed as it haspurpose : markdown [0..1]A detailed description of how the asset is used from a clinical perspectiveusage : string [0..1]The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usageapprovalDate : date [0..1]The date on which the resource content was last reviewed. Review happens periodically after approval, but doesn't change the original approval datelastReviewDate : date [0..1]The period during which the activity definition content was or is planned to be in active useeffectivePeriod : Period [0..1]The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate activity definition instancesuseContext : UsageContext [0..*]A legal or geographic region in which the activity definition is intended to be usedjurisdiction : CodeableConcept [0..*] Countries and regions within which this artifact is targeted for use (Strength=Extensible)Jurisdiction ValueSet+ Descriptive topics related to the content of the activity. Topics provide a high-level categorization of the activity that can be useful for filtering and searchingtopic : CodeableConcept [0..*] High-level categorization of the definition, used for searching, sorting, and filtering (Strength=Example)DefinitionTopic?? A contributor to the content of the asset, including authors, editors, reviewers, and endorserscontributor : Contributor [0..*]Contact details to assist a user in finding and communicating with the publishercontact : ContactDetail [0..*]A copyright statement relating to the activity definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the activity definitioncopyright : markdown [0..1]Related artifacts such as additional documentation, justification, or bibliographic referencesrelatedArtifact : RelatedArtifact [0..*]A reference to a Library resource containing any formal logic used by the assetlibrary : Reference [0..*] Library A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ProcedureRequest, or a CommunicationRequest. Typically, but not always, this is a Request resourcekind : code [0..1] The kind of activity the definition is describing (Strength=Required)ResourceType! Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encountercode : CodeableConcept [0..1] Detailed type of the activity; e.g. CBC (Strength=Example)Procedure Codes (SNOMED CT)?? The period, timing or frequency upon which the described activity is to occurtiming[x] : Type [0..1] Timing|dateTime|Period|Range Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etclocation : Reference [0..1] Location Identifies the food, drug or other product being consumed or supplied in the activityproduct[x] : Type [0..1] Reference(Medication|Substance)| CodeableConcept; Code describing the type of substance or medication (Strength=Example)SNOMED CT Medication ?? Identifies the quantity expected to be consumed at once (per dose, per meal, etc.)quantity : Quantity(SimpleQuantity) [0..1]Provides detailed dosage instructions in the same way that they are described for MedicationRequest resourcesdosage : Dosage [0..*]Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites)bodySite : CodeableConcept [0..*] A code that identifies the anatomical location (Strength=Example)SNOMED CT Body Structures?? A reference to a StructureMap resource that defines a transform that can be executed to produce the intent resource using the ActivityDefinition instance as the inputtransform : Reference [0..1] StructureMap ParticipantThe type of participant in the actiontype : code [1..1] The type of participant in the activity (Strength=Required)ActionParticipantType! The role the participant should play in performing the described actionrole : CodeableConcept [0..1] Defines roles played by participants for the action (Strength=Example)ActionParticipantRole?? DynamicValueA brief, natural language description of the intended semantics of the dynamic valuedescription : string [0..1]The path to the element to be customized. This is the path on the resource that will hold the result of the calculation defined by the expressionpath : string [0..1]The media type of the language for the expressionlanguage : string [0..1]An expression specifying the value of the customized elementexpression : string [0..1]Indicates who should participate in performing the action describedparticipant[0..*]Dynamic values that will be evaluated to produce values for elements of the resulting resource. For example, if the dosage of a medication must be computed based on the patient's weight, a dynamic value would be used to specify an expression that calculated the weight, and the path on the intent resource that would contain the resultdynamicValue[0..*]

XML Template

<ActivityDefinition xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <url value="[uri]"/><!-- 0..1 Logical URI to reference this activity definition (globally unique) -->
 <identifier><!-- 0..* Identifier Additional identifier for the activity definition --></identifier>
 <version value="[string]"/><!-- 0..1 Business version of the activity definition -->
 <name value="[string]"/><!-- 0..1 Name for this activity definition (computer friendly) -->
 <title value="[string]"/><!-- 0..1 Name for this activity 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 this was last changed -->
 <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) -->
 <description value="[markdown]"/><!-- 0..1 Natural language description of the activity definition -->
 <purpose value="[markdown]"/><!-- 0..1 Why this activity definition is defined -->
 <usage value="[string]"/><!-- 0..1 Describes the clinical usage of the asset -->
 <approvalDate value="[date]"/><!-- 0..1 When the activity definition was approved by publisher -->
 <lastReviewDate value="[date]"/><!-- 0..1 When the activity definition was last reviewed -->
 <effectivePeriod><!-- 0..1 Period When the activity definition is expected to be used --></effectivePeriod>
 <useContext><!-- 0..* UsageContext Context the content is intended to support --></useContext>
 <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for activity definition (if applicable) --></jurisdiction>
 <topic><!-- 0..* CodeableConcept E.g. Education, Treatment, Assessment, etc --></topic>
 <contributor><!-- 0..* Contributor A content contributor --></contributor>
 <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact>
 <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions -->
 <relatedArtifact><!-- 0..* RelatedArtifact Additional documentation, citations, etc --></relatedArtifact>
 <library><!-- 0..* Reference(Library) Logic used by the asset --></library>
 <kind value="[code]"/><!-- 0..1 Kind of resource -->
 <code><!-- 0..1 CodeableConcept Detail type of activity --></code>
 <timing[x]><!-- 0..1 Timing|dateTime|Period|Range When activity is to occur --></timing[x]>
 <location><!-- 0..1 Reference(Location) Where it should happen --></location>
 <participant>  <!-- 0..* Who should participate in the action -->
  <type value="[code]"/><!-- 1..1 patient | practitioner | related-person -->
  <role><!-- 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent, etc --></role>
 </participant>
 <product[x]><!-- 0..1 Reference(Medication|Substance)|CodeableConcept What's administered/supplied --></product[x]>
 <quantity><!-- 0..1 Quantity(SimpleQuantity) How much is administered/consumed/supplied --></quantity>
 <dosage><!-- 0..* Dosage Detailed dosage instructions --></dosage>
 <bodySite><!-- 0..* CodeableConcept What part of body to perform on --></bodySite>
 <transform><!-- 0..1 Reference(StructureMap) Transform to apply the template --></transform>
 <dynamicValue>  <!-- 0..* Dynamic aspects of the definition -->
  <description value="[string]"/><!-- 0..1 Natural language description of the dynamic value -->
  <path value="[string]"/><!-- 0..1 The path to the element to be set dynamically -->
  <language value="[string]"/><!-- 0..1 Language of the expression -->
  <expression value="[string]"/><!-- 0..1 An expression that provides the dynamic value for the customization -->
 </dynamicValue>
</ActivityDefinition>

JSON Template

{doco
  "resourceType" : "ActivityDefinition",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "url" : "<uri>", // Logical URI to reference this activity definition (globally unique)
  "identifier" : [{ Identifier }], // Additional identifier for the activity definition
  "version" : "<string>", // Business version of the activity definition
  "name" : "<string>", // Name for this activity definition (computer friendly)
  "title" : "<string>", // Name for this activity definition (human friendly)
  "status" : "<code>", // R!  draft | active | retired | unknown
  "experimental" : <boolean>, // For testing purposes, not real usage
  "date" : "<dateTime>", // Date this was last changed
  "publisher" : "<string>", // Name of the publisher (organization or individual)
  "description" : "<markdown>", // Natural language description of the activity definition
  "purpose" : "<markdown>", // Why this activity definition is defined
  "usage" : "<string>", // Describes the clinical usage of the asset
  "approvalDate" : "<date>", // When the activity definition was approved by publisher
  "lastReviewDate" : "<date>", // When the activity definition was last reviewed
  "effectivePeriod" : { Period }, // When the activity definition is expected to be used
  "useContext" : [{ UsageContext }], // Context the content is intended to support
  "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for activity definition (if applicable)
  "topic" : [{ CodeableConcept }], // E.g. Education, Treatment, Assessment, etc
  "contributor" : [{ Contributor }], // A content contributor
  "contact" : [{ ContactDetail }], // Contact details for the publisher
  "copyright" : "<markdown>", // Use and/or publishing restrictions
  "relatedArtifact" : [{ RelatedArtifact }], // Additional documentation, citations, etc
  "library" : [{ Reference(Library) }], // Logic used by the asset
  "kind" : "<code>", // Kind of resource
  "code" : { CodeableConcept }, // Detail type of activity
  // timing[x]: When activity is to occur. One of these 4:
  "timingTiming" : { Timing },
  "timingDateTime" : "<dateTime>",
  "timingPeriod" : { Period },
  "timingRange" : { Range },
  "location" : { Reference(Location) }, // Where it should happen
  "participant" : [{ // Who should participate in the action
    "type" : "<code>", // R!  patient | practitioner | related-person
    "role" : { CodeableConcept } // E.g. Nurse, Surgeon, Parent, etc
  }],
  // product[x]: What's administered/supplied. One of these 2:
  "productReference" : { Reference(Medication|Substance) },
  "productCodeableConcept" : { CodeableConcept },
  "quantity" : { Quantity(SimpleQuantity) }, // How much is administered/consumed/supplied
  "dosage" : [{ Dosage }], // Detailed dosage instructions
  "bodySite" : [{ CodeableConcept }], // What part of body to perform on
  "transform" : { Reference(StructureMap) }, // Transform to apply the template
  "dynamicValue" : [{ // Dynamic aspects of the definition
    "description" : "<string>", // Natural language description of the dynamic value
    "path" : "<string>", // The path to the element to be set dynamically
    "language" : "<string>", // Language of the expression
    "expression" : "<string>" // An expression that provides the dynamic value for the customization
  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:ActivityDefinition;
  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:ActivityDefinition.url [ uri ]; # 0..1 Logical URI to reference this activity definition (globally unique)
  fhir:ActivityDefinition.identifier [ Identifier ], ... ; # 0..* Additional identifier for the activity definition
  fhir:ActivityDefinition.version [ string ]; # 0..1 Business version of the activity definition
  fhir:ActivityDefinition.name [ string ]; # 0..1 Name for this activity definition (computer friendly)
  fhir:ActivityDefinition.title [ string ]; # 0..1 Name for this activity definition (human friendly)
  fhir:ActivityDefinition.status [ code ]; # 1..1 draft | active | retired | unknown
  fhir:ActivityDefinition.experimental [ boolean ]; # 0..1 For testing purposes, not real usage
  fhir:ActivityDefinition.date [ dateTime ]; # 0..1 Date this was last changed
  fhir:ActivityDefinition.publisher [ string ]; # 0..1 Name of the publisher (organization or individual)
  fhir:ActivityDefinition.description [ markdown ]; # 0..1 Natural language description of the activity definition
  fhir:ActivityDefinition.purpose [ markdown ]; # 0..1 Why this activity definition is defined
  fhir:ActivityDefinition.usage [ string ]; # 0..1 Describes the clinical usage of the asset
  fhir:ActivityDefinition.approvalDate [ date ]; # 0..1 When the activity definition was approved by publisher
  fhir:ActivityDefinition.lastReviewDate [ date ]; # 0..1 When the activity definition was last reviewed
  fhir:ActivityDefinition.effectivePeriod [ Period ]; # 0..1 When the activity definition is expected to be used
  fhir:ActivityDefinition.useContext [ UsageContext ], ... ; # 0..* Context the content is intended to support
  fhir:ActivityDefinition.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for activity definition (if applicable)
  fhir:ActivityDefinition.topic [ CodeableConcept ], ... ; # 0..* E.g. Education, Treatment, Assessment, etc
  fhir:ActivityDefinition.contributor [ Contributor ], ... ; # 0..* A content contributor
  fhir:ActivityDefinition.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher
  fhir:ActivityDefinition.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions
  fhir:ActivityDefinition.relatedArtifact [ RelatedArtifact ], ... ; # 0..* Additional documentation, citations, etc
  fhir:ActivityDefinition.library [ Reference(Library) ], ... ; # 0..* Logic used by the asset
  fhir:ActivityDefinition.kind [ code ]; # 0..1 Kind of resource
  fhir:ActivityDefinition.code [ CodeableConcept ]; # 0..1 Detail type of activity
  # ActivityDefinition.timing[x] : 0..1 When activity is to occur. One of these 4
    fhir:ActivityDefinition.timingTiming [ Timing ]
    fhir:ActivityDefinition.timingDateTime [ dateTime ]
    fhir:ActivityDefinition.timingPeriod [ Period ]
    fhir:ActivityDefinition.timingRange [ Range ]
  fhir:ActivityDefinition.location [ Reference(Location) ]; # 0..1 Where it should happen
  fhir:ActivityDefinition.participant [ # 0..* Who should participate in the action
    fhir:ActivityDefinition.participant.type [ code ]; # 1..1 patient | practitioner | related-person
    fhir:ActivityDefinition.participant.role [ CodeableConcept ]; # 0..1 E.g. Nurse, Surgeon, Parent, etc
  ], ...;
  # ActivityDefinition.product[x] : 0..1 What's administered/supplied. One of these 2
    fhir:ActivityDefinition.productReference [ Reference(Medication|Substance) ]
    fhir:ActivityDefinition.productCodeableConcept [ CodeableConcept ]
  fhir:ActivityDefinition.quantity [ Quantity(SimpleQuantity) ]; # 0..1 How much is administered/consumed/supplied
  fhir:ActivityDefinition.dosage [ Dosage ], ... ; # 0..* Detailed dosage instructions
  fhir:ActivityDefinition.bodySite [ CodeableConcept ], ... ; # 0..* What part of body to perform on
  fhir:ActivityDefinition.transform [ Reference(StructureMap) ]; # 0..1 Transform to apply the template
  fhir:ActivityDefinition.dynamicValue [ # 0..* Dynamic aspects of the definition
    fhir:ActivityDefinition.dynamicValue.description [ string ]; # 0..1 Natural language description of the dynamic value
    fhir:ActivityDefinition.dynamicValue.path [ string ]; # 0..1 The path to the element to be set dynamically
    fhir:ActivityDefinition.dynamicValue.language [ string ]; # 0..1 Language of the expression
    fhir:ActivityDefinition.dynamicValue.expression [ string ]; # 0..1 An expression that provides the dynamic value for the customization
  ], ...;
]

Changes since DSTU2

This resource did not exist in Release 2

This analysis is available as XML or JSON.

 

Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron (for ) + JSON Schema, ShEx (for Turtle)

PathDefinitionTypeReference
ActivityDefinition.status The lifecycle status of a Value Set or Concept Map.RequiredPublicationStatus
ActivityDefinition.jurisdiction Countries and regions within which this artifact is targeted for useExtensibleJurisdiction ValueSet
ActivityDefinition.topic High-level categorization of the definition, used for searching, sorting, and filteringExampleDefinitionTopic
ActivityDefinition.kind The kind of activity the definition is describingRequiredResourceType
ActivityDefinition.code Detailed type of the activity; e.g. CBCExampleProcedure Codes (SNOMED CT)
ActivityDefinition.participant.type The type of participant in the activityRequiredActionParticipantType
ActivityDefinition.participant.role Defines roles played by participants for the actionExampleActionParticipantRole
ActivityDefinition.product[x] Code describing the type of substance or medicationExampleSNOMED CT Medication Codes
ActivityDefinition.bodySite A code that identifies the anatomical locationExampleSNOMED CT Body Structures

An ActivityDefinition resource provides a description, or template, of an action to performed. These actions can be purely text-based descriptions of the action to be performed, only interpretable by a human user, or they can be structured definitions with enough information to construct a resource to represent the request directly. This process of converting the ActivityDefinition into a specific request resource in a particular context is performed with the $apply operation.

In the simplest case, the process maps the elements specified in the ActivityDefinition to the corresponding elements on the request resource of the appropriate type, using the kind element of the definition to determine the type of resource to be created.

More dynamic scenarios can be achieved in one of two ways, either by providing dynamicValue expressions, or by specifying a StructureMap that transforms the definition into the appropriate request resource.

Note that systems will likely vary widely in the degree of support they provide for the $apply operation. In particular, the fact that a system supports applying definitions of one category, does not imply that it supports applying definitions for all categories. For example, a service focused on medication order sets may have sophisticated support for MedicationRequest activities, but no support at all for the ProcedureRequest activities.

The following diagram illustrates the relationship between the PlanDefinition and ActivityDefinition resources, as well as a typical realization to CarePlan, RequestGroup, and Request resources:

relationship-between-action-and-activity-definition

Note to implementers: There is some overlap between the content that can be specified in PlanDefinition.actionDefinition and the ActivityDefinition resource. Part of the work for FHIR Release 4 will be to resolve the overlap and this will likely result in some minor changes to the structures.

Because the ActivityDefinition resource can be used to describe many different types of request resources, profiles of the resource will be useful in communicating additional constraints and expectations about how the resource should be used in a particular context. For example, a profile of ActivityDefinition may specify that it is intended to describe medication orders within an order set. Such a profile would indicate that the quantity element should not be used, but the dosage element must be.

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
composed-ofreferenceWhat resource is being referencedActivityDefinition.relatedArtifact.where(type='composed-of').resource
(Any)
datedateThe activity definition publication dateActivityDefinition.date
depends-onreferenceWhat resource is being referencedActivityDefinition.relatedArtifact.where(type='depends-on').resource | ActivityDefinition.library
(Library, Any)
derived-fromreferenceWhat resource is being referencedActivityDefinition.relatedArtifact.where(type='derived-from').resource
(Any)
descriptionstringThe description of the activity definitionActivityDefinition.description
effectivedateThe time during which the activity definition is intended to be in useActivityDefinition.effectivePeriod
identifiertokenExternal identifier for the activity definitionActivityDefinition.identifier
jurisdictiontokenIntended jurisdiction for the activity definitionActivityDefinition.jurisdiction
namestringComputationally friendly name of the activity definitionActivityDefinition.name
predecessorreferenceWhat resource is being referencedActivityDefinition.relatedArtifact.where(type='predecessor').resource
(Any)
publisherstringName of the publisher of the activity definitionActivityDefinition.publisher
statustokenThe current status of the activity definitionActivityDefinition.status
successorreferenceWhat resource is being referencedActivityDefinition.relatedArtifact.where(type='successor').resource
(Any)
titlestringThe human-friendly name of the activity definitionActivityDefinition.title
topictokenTopics associated with the moduleActivityDefinition.topic
urluriThe uri that identifies the activity definitionActivityDefinition.url
versiontokenThe business version of the activity definitionActivityDefinition.version