Clinical Practice Guidelines (CPG) on EBMonFHIR
1.0.2 - ci-build

Clinical Practice Guidelines (CPG) on EBMonFHIR, published by Universitätsmedizin Greifswald. This guide is not an authorized publication; it is the continuous build for version 1.0.2 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/CEOsys/cpg-on-ebm-on-fhir/ and changes regularly. See the Directory of published versions

Resource Profile: RecommendationAction - Detailed Descriptions

Draft as of 2021-12-03

Definitions for the recommendation-action resource profile.

Guidance on how to interpret the contents of this table can be found here

0. ActivityDefinition
Invariantsno-timing-if-dosage-specified: If a dosage is specified, there SHALL be no timing element at the same level (instead the timing element of dosage should be used) (dosage.exists() implies timing.exists().not())
2. ActivityDefinition.meta
Control1..?
Must Supporttrue
4. ActivityDefinition.meta.source
Must Supporttrue
6. ActivityDefinition.meta.profile
Control1..?
Must Supporttrue
8. ActivityDefinition.extension
Control2..?
10. ActivityDefinition.extension:knowledgeCapability
Slice NameknowledgeCapability
Control0..1
12. ActivityDefinition.extension:knowledgeCapability.extension
Control0..0
14. ActivityDefinition.extension:knowledgeCapability.value[x]
Control1..?
[x] NoteSeeChoice of Data Typesfor further information about how to use [x]
Pattern Valuecomputable
16. ActivityDefinition.extension:knowledgeRepresentationLevel
Slice NameknowledgeRepresentationLevel
Control1..1
18. ActivityDefinition.extension:knowledgeRepresentationLevel.extension
Control0..0
20. ActivityDefinition.extension:knowledgeRepresentationLevel.value[x]
Control1..?
[x] NoteSeeChoice of Data Typesfor further information about how to use [x]
Pattern Valuestructured
22. ActivityDefinition.url
Must Supporttrue
24. ActivityDefinition.subject[x]
Control1..?
TypeCodeableConcept, Reference(Group)
[x] NoteSeeChoice of Data Typesfor further information about how to use [x]
Pattern Value{
  "coding" : [{
    "system" : "http://hl7.org/fhir/fhir-types",
    "code" : "Patient"
  }]
}
26. ActivityDefinition.code
Control1..?
28. ActivityDefinition.doNotPerform
Must Supporttrue
30. ActivityDefinition.timing[x]
TypeTiming, dateTime, Period, Duration, Range, Age
[x] NoteSeeChoice of Data Typesfor further information about how to use [x]
Invariantscode-xor-repeat: Either a code or a repeat structure should be defined, but not both (code.empty() or repeat.empty())
32. ActivityDefinition.timing[x].extension:relativeTime
Slice NamerelativeTime
Control0..*
TypeExtension(RelativeTime) (Complex Extension)
34. ActivityDefinition.timing[x].repeat
Control1..?
Must Supporttrue
36. ActivityDefinition.timing[x].repeat.bounds[x]
Control0..0
38. ActivityDefinition.timing[x].repeat.count
ShortMinimal number of times this event should be repeated
40. ActivityDefinition.timing[x].repeat.countMax
ShortMaximum number of times this event should be repeated
42. ActivityDefinition.timing[x].repeat.duration
ShortMinimal duration this event should last
44. ActivityDefinition.timing[x].repeat.durationMax
ShortMaximal duration this event should last
46. ActivityDefinition.timing[x].repeat.frequency
ShortIndicates the minimal number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
48. ActivityDefinition.timing[x].repeat.frequencyMax
ShortIndicates the maximum number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
50. ActivityDefinition.timing[x].repeat.period
ShortThe minimal duration to which the frequency applies. I.e. Event occurs frequency times per period
52. ActivityDefinition.timing[x].repeat.periodMax
ShortThe maximum duration to which the frequency applies. I.e. Event occurs frequency times per period
54. ActivityDefinition.product[x]
[x] NoteSeeChoice of Data Typesfor further information about how to use [x]
Must Supporttrue
56. ActivityDefinition.quantity
Must Supporttrue
58. ActivityDefinition.dosage
Must Supporttrue
60. ActivityDefinition.dosage.timing
Invariantscode-xor-repeat: Either a code or a repeat structure should be defined, but not both (code.empty() or repeat.empty())
62. ActivityDefinition.dosage.timing.repeat
Must Supporttrue
64. ActivityDefinition.dosage.timing.repeat.bounds[x]
Control0..0
66. ActivityDefinition.dosage.timing.repeat.count
ShortMinimal number of times this event should be repeated
68. ActivityDefinition.dosage.timing.repeat.countMax
ShortMaximum number of times this event should be repeated
70. ActivityDefinition.dosage.timing.repeat.duration
ShortMinimal duration this event should last
72. ActivityDefinition.dosage.timing.repeat.durationMax
ShortMaximal duration this event should last
74. ActivityDefinition.dosage.timing.repeat.frequency
ShortIndicates the minimal number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
76. ActivityDefinition.dosage.timing.repeat.frequencyMax
ShortIndicates the maximum number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
78. ActivityDefinition.dosage.timing.repeat.period
ShortThe minimal duration to which the frequency applies. I.e. Event occurs frequency times per period
80. ActivityDefinition.dosage.timing.repeat.periodMax
ShortThe maximum duration to which the frequency applies. I.e. Event occurs frequency times per period
82. ActivityDefinition.bodySite
Must Supporttrue

Guidance on how to interpret the contents of this table can be found here

0. ActivityDefinition
Definition

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

ShortThe definition of a specific activity to be taken, independent of any particular patient or context
Control10..1*
Is Modifierfalse
Must Supportfalse
Summaryfalse
Invariantsadf-0: Name should be usable as an identifier for the module by machine processing applications such as code generation (name.matches('[A-Z]([A-Za-z0-9_]){0,254}'))
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty())
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (contained.meta.versionId.empty() and contained.meta.lastUpdated.empty())
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
dom-6: A resource should have narrative for robust management (text.`div`.exists())
no-timing-if-dosage-specified: If a dosage is specified, there SHALL be no timing element at the same level (instead the timing element of dosage should be used) (dosage.exists() implies timing.exists().not())
cnl-0: 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}$'))
2. ActivityDefinition.meta
Definition

The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

ShortMetadata about the resource
Control10..1
TypeMeta
Is Modifierfalse
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. ActivityDefinition.meta.source
Definition

A uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.


A uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.

ShortIdentifies where the resource comes from
Comments

The exact use of the source (and the possible implied Provenance.entity.role and agent.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used. The source may correspond to Provenance.entity.what[x] or Provenance.agent.who[x], though it may be a more general or abstract reference.

This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.

Control0..1
Typeuri
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
6. ActivityDefinition.meta.profile
Definition

A list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.


A list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.

ShortProfiles this resource claims to conform to
Comments

It is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time. The list of profile URLs is a set.

Control10..*
Typecanonical(StructureDefinition)
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Must Supporttrue
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
8. ActivityDefinition.implicitRules
Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

ShortA set of rules under which this content was created
Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.


Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of its narrative along with other profiles, value sets, etc.

Control0..1
Typeuri
Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretationThis element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies its meaning or interpretation
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
10. ActivityDefinition.extension
Definition

An Extension


May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

ShortExtensionAdditional content defined by implementations
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control20..*
TypeExtension
Is Modifierfalse
Summaryfalse
Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
SlicingThis element introduces a set of slices on ActivityDefinition.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ url
  • 12. ActivityDefinition.extension:knowledgeCapability
    Slice NameknowledgeCapability
    Definition

    Defines a knowledge capability afforded by this knowledge artifact.

    Shortshareable | computable | publishable | executable
    Control1..1
    This element is affected by the following invariants: ele-1
    TypeExtension(knowledgeCapability) (Extension Type: code)
    Is Modifierfalse
    Must Supporttrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    14. ActivityDefinition.extension:knowledgeCapability.extension
    Definition

    An Extension


    May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

    ShortExtensionAdditional content defined by implementations
    Comments

    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

    Control0..0*
    TypeExtension
    Is Modifierfalse
    Summaryfalse
    Alternate Namesextensions, user content
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    SlicingThis element introduces a set of slices on ActivityDefinition.extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ url
    • 16. ActivityDefinition.extension:knowledgeCapability.url
      Definition

      Source of the definition for the extension code - a logical name or a URL.

      Shortidentifies the meaning of the extension
      Comments

      The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

      Control1..1
      Typeuri
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      XML FormatIn the XML format, this property is represented as an attribute.
      Summaryfalse
      Fixed Valuehttp://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability
      18. ActivityDefinition.extension:knowledgeCapability.value[x]
      Definition

      Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).


      Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

      ShortValue of extension
      Control10..1
      This element is affected by the following invariants: ext-1
      BindingThe codes SHALL be taken from For codes, see CPG Knowledge Capability
      (required to http://hl7.org/fhir/uv/cpg/ValueSet/cpg-knowledge-capability)

      A knowledge capability provided by a knowledge artifact

      Typecode, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, string, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summaryfalse
      Pattern Valuecomputable
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      20. ActivityDefinition.extension:knowledgeRepresentationLevel
      Slice NameknowledgeRepresentationLevel
      Definition

      Defines a knowledge representation level provided by this knowledge artifact.

      Shortnarrative | semi-structured | structured | executable
      Control1..1
      This element is affected by the following invariants: ele-1
      TypeExtension(knowledgeRepresentationLevel) (Extension Type: code)
      Is Modifierfalse
      Must Supporttrue
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      22. ActivityDefinition.extension:knowledgeRepresentationLevel.extension
      Definition

      An Extension


      May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

      ShortExtensionAdditional content defined by implementations
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..0*
      TypeExtension
      Is Modifierfalse
      Summaryfalse
      Alternate Namesextensions, user content
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      SlicingThis element introduces a set of slices on ActivityDefinition.extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • value @ url
      • 24. ActivityDefinition.extension:knowledgeRepresentationLevel.url
        Definition

        Source of the definition for the extension code - a logical name or a URL.

        Shortidentifies the meaning of the extension
        Comments

        The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

        Control1..1
        Typeuri
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        XML FormatIn the XML format, this property is represented as an attribute.
        Summaryfalse
        Fixed Valuehttp://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeRepresentationLevel
        26. ActivityDefinition.extension:knowledgeRepresentationLevel.value[x]
        Definition

        Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).


        Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

        ShortValue of extension
        Control10..1
        This element is affected by the following invariants: ext-1
        BindingThe codes SHALL be taken from For codes, see CPG Knowledge Representation Level
        (required to http://hl7.org/fhir/uv/cpg/ValueSet/cpg-knowledge-representation-level)

        A level of knowledge representation provided by this artifact

        Typecode, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, string, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summaryfalse
        Pattern Valuestructured
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        28. ActivityDefinition.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).


        May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
        Summaryfalse
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.


        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        30. ActivityDefinition.url
        Definition

        An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this activity definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the activity definition is stored on different servers.


        An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this activity definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the activity definition is stored on different servers.

        ShortCanonical identifier for this activity definition, represented as a URI (globally unique)
        Comments

        Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.

        The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions.

        In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found.


        Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.

        The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions.

        In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found.

        Control10..1
        Typeuri
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summarytrue
        Requirements

        Allows the activity definition to be referenced by a single globally unique identifier.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        cnl-1: URL should not contain | or # - these characters make processing canonical references problematic (exists() implies matches('^[^|# ]+$'))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        32. ActivityDefinition.identifier
        Definition

        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 instance.

        ShortAdditional identifier for the activity definition
        Comments

        Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this activity definition outside of FHIR, where it is not possible to use the logical URI.

        NoteThis is a business identifier, not a resource identifier (see discussion)
        Control0..*
        TypeIdentifier
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Requirements

        Allows externally provided and/or usable business identifiers to be easily associated with the module.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        34. ActivityDefinition.version
        Definition

        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 assets.

        ShortBusiness version of the activity definition
        Comments

        There may be different activity definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the activity definition with the format [url]|[version].


        There may be different activity definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the activity definition with the format [url]|[version]. The version SHOULD NOT contain a '#' - see Business Version.

        NoteThis is a business version Id, not a resource version Id (see discussion)
        Control10..1
        Typestring
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        36. ActivityDefinition.name
        Definition

        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 generation.

        ShortName for this activity definition (computer friendly)
        Comments

        The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.

        Control10..1
        This element is affected by the following invariants: inv-0, cnl-0
        Typestring
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Support human navigation and code generation.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        38. ActivityDefinition.title
        Definition

        A short, descriptive, user-friendly title for the activity definition.

        ShortName for this activity definition (human friendly)
        Comments

        This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.

        Control0..1
        Typestring
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        40. ActivityDefinition.status
        Definition

        The status of this activity definition. Enables tracking the life-cycle of the content.

        Shortdraft | active | retired | unknown
        Comments

        Allows filtering of activity definitions that are appropriate for use versus not.


        Allows filtering of activity definitions that are appropriate for use versus not.

        See guidance around (not) making local changes to elements here.

        Control1..1
        BindingThe codes SHALL be taken from publication-status|4.0.1http://hl7.org/fhir/ValueSet/publication-status|5.0.0
        (required to http://hl7.org/fhir/ValueSet/publication-status|4.0.1)

        The lifecycle status of an artifact.

        Typecode
        Is Modifiertrue because This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        42. ActivityDefinition.experimental
        Definition

        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.

        ShortFor testing purposes, not real usage
        Comments

        Allows filtering of activity definitions that are appropriate for use versus not.

        Control10..1
        Typeboolean
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Enables experimental content to be developed following the same lifecycle that would be used for a production-level activity definition.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        44. ActivityDefinition.subject[x]
        Definition

        A code or group definition that describes the intended subject of the activity being defined.


        A code, group definition, or canonical reference that describes or identifies the intended subject of the activity being defined. Canonical references are allowed to support the definition of protocols for drug and substance quality specifications, and is allowed to reference a MedicinalProductDefinition, SubstanceDefinition, AdministrableProductDefinition, ManufacturedItemDefinition, or PackagedProductDefinition resource.

        ShortType of individual the activity definition is intended for
        Comments

        Note that the choice of canonical for the subject element was introduced in R4B to support pharmaceutical quality use cases. To ensure as much backwards-compatibility as possible, it is recommended to only use the new canonical type with these use cases.

        Control10..1
        BindingUnless not suitable, these codes SHALL be taken from subject-typehttp://hl7.org/fhir/ValueSet/participant-resource-types
        (extensible to http://hl7.org/fhir/ValueSet/subject-type)

        The possible types of subjects for an activity (E.g. Patient, Practitioner, Organization, Location, etc.).

        TypeCodeableConcept, Reference(Group, MedicinalProductDefinition, SubstanceDefinition, AdministrableProductDefinition, ManufacturedItemDefinition, PackagedProductDefinition), canonical(EvidenceVariable)
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Meaning if MissingPatient
        Pattern Value{
          "coding" : [{
            "system" : "http://hl7.org/fhir/fhir-types",
            "code" : "Patient"
          }]
        }
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        46. ActivityDefinition.date
        Definition

        The date (and optionally time) when the activity definition was published. The date must change 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 changes.


        The date (and optionally time) when the activity definition was last significantly changed. The date must change 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 changes.

        ShortDate last changed
        Comments

        Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the activity definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.


        The date is often not tracked until the resource is published, but may be present on draft content. Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the activity definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.

        See guidance around (not) making local changes to elements here.

        Control0..1
        TypedateTime
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summarytrue
        Alternate NamesRevision Date
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        48. ActivityDefinition.publisher
        Definition

        The name of the organization or individual that published the activity definition.


        The name of the organization or individual responsible for the release and ongoing maintenance of the activity definition.

        ShortName of the publisher (organization or individual)Name of the publisher/steward (organization or individual)
        Comments

        Usually an organization but may be an individual. The publisher (or steward) of the activity definition is the organization or individual primarily responsible for the maintenance and upkeep of the activity definition. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the activity definition. This item SHOULD be populated unless the information is available from context.

        Control10..1
        Typestring
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Helps establish the "authority/credibility" of the activity definition. May also allow for contact.

        Alternate Namessteward
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        50. ActivityDefinition.contact
        Definition

        Contact details to assist a user in finding and communicating with the publisher.

        ShortContact details for the publisher
        Comments

        May be a web site, an email address, a telephone number, etc.


        May be a web site, an email address, a telephone number, etc.

        See guidance around (not) making local changes to elements here.

        Control0..*
        TypeContactDetail
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        52. ActivityDefinition.description
        Definition

        A free text natural language description of the activity definition from a consumer's perspective.

        ShortNatural language description of the activity definition
        Comments

        This description can be used to capture details such as why the activity definition was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the activity definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the activity definition is presumed to be the predominant language in the place the activity definition was created).


        This description can be used to capture details such as comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the activity definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the activity definition is presumed to be the predominant language in the place the activity definition was created).

        Control10..1
        Typemarkdown
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Alternate Namesscope
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        54. ActivityDefinition.useContext
        Definition

        The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate activity definition instances.

        ShortThe context that the content is intended to support
        Comments

        When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.

        Control0..*
        TypeUsageContext
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Requirements

        Assist in searching for appropriate content.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        56. ActivityDefinition.jurisdiction
        Definition

        A legal or geographic region in which the activity definition is intended to be used.

        ShortIntended jurisdiction for activity definition (if applicable)
        Comments

        It may be possible for the activity definition to be used in jurisdictions other than those for which it was originally designed or intended.


        It may be possible for the activity definition to be used in jurisdictions other than those for which it was originally designed or intended.

        DEPRECATION NOTE: For consistency, implementations are encouraged to migrate to using the new 'jurisdiction' code in the useContext element. (I.e. useContext.code indicating http://terminology.hl7.org/CodeSystem/usage-context-type#jurisdiction and useContext.valueCodeableConcept indicating the jurisdiction.)

        Control0..*
        BindingUnless not suitable, these codes SHALL be taken from JurisdictionValueSethttp://hl7.org/fhir/ValueSet/jurisdiction
        (extensible to http://hl7.org/fhir/ValueSet/jurisdiction)

        Countries and regions within which this artifact is targeted for use.

        TypeCodeableConcept
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        58. ActivityDefinition.library
        Definition

        A reference to a Library resource containing any formal logic used by the activity definition.

        ShortLogic used by the activity definition
        Control0..1*
        Typecanonical(Library)
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        60. ActivityDefinition.kind
        Definition

        A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest. Typically, but not always, this is a Request resource.


        A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest.

        ShortKind of resource
        Comments

        May determine what types of extensions are permitted.


        The kind element may only specify Request resource types to facilitate considering user input as part of processing the result of any automated clinical reasoning processes. To support creation of event resources, such as Observations, RiskAssessments, and DetectedIssues, use a Task resource with the focus of the task set to the event resource to be created. Note that the kind of resource to be created may determine what types of extensions are permitted.

        Control10..1
        BindingThe codes SHALL be taken from request-resource-types|4.0.1http://hl7.org/fhir/ValueSet/request-resource-types|5.0.0
        (required to http://hl7.org/fhir/ValueSet/request-resource-types|4.0.1)

        The kind of activity the definition is describing.

        Typecode
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        62. ActivityDefinition.profile
        Definition

        A profile to which the target of the activity definition is expected to conform.

        ShortWhat profile the resource needs to conform to
        Control0..1
        Typecanonical(StructureDefinition)
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summaryfalse
        Requirements

        Allows profiles to be used to describe the types of activities that can be performed within a workflow, protocol, or order set.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        64. ActivityDefinition.code
        Definition

        Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.

        ShortDetail type of activity
        Comments

        Tends to be less relevant for activities involving particular products.

        Control10..1
        BindingFor example codes, see ProcedureCodesSNOMEDCThttp://hl7.org/fhir/ValueSet/procedure-code
        (example to http://hl7.org/fhir/ValueSet/procedure-code)

        Detailed type of the activity; e.g. CBC.

        TypeCodeableConcept
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Requirements

        Allows matching performed to planned as well as validation against protocols.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        66. ActivityDefinition.doNotPerform
        Definition

        Set this to true if the definition is to indicate that a particular activity should NOT be performed. If true, this element should be interpreted to reinforce a negative coding. For example NPO as a code with a doNotPerform of true would still indicate to NOT perform the action.

        ShortTrue if the activity should not be performed
        Comments

        This element is not intended to be used to communicate a decision support response to cancel an order in progress. That should be done with the "remove" type of a PlanDefinition or RequestGroup.


        This element is not intended to be used to communicate a decision support response to cancel an order in progress. That should be done with the "remove" type of a PlanDefinition or RequestOrchestration.

        Control0..1
        Typeboolean
        Is Modifiertrue because If true this element negates the specified action. For Example, instead of a request for a procedure, it is a request for the procedure to not occur.
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        68. ActivityDefinition.timing[x]
        Definition

        The period, timing or frequency upon which the described activity is to occur.


        The timing or frequency upon which the described activity is to occur.

        ShortWhen activity is to occur
        Comments

        The intent of the timing element is to provide timing when the action should be performed. As a definitional resource, this timing is interpreted as part of an apply operation so that the timing of the result actions in a CarePlan or RequestOrchestration, for example, would be specified by evaluating the timing definition in the context of the apply and setting the resulting timing on the appropriate elements of the target resource. If the timing is an Age, the activity is expected to be performed when the subject is the given Age. When the timing is a Duration, the activity is expected to be performed within the specified duration from the apply. When the timing is a Range, it may be a range of Ages or Durations, providing a range for the expected timing of the resulting activity. When the timing is a Timing, it is establishing a schedule for the timing of the resulting activity.

        Control0..1
        TypeTiming, Duration, Range, Age
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Requirements

        Allows prompting for activities and detection of missed planned activities.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        code-xor-repeat: Either a code or a repeat structure should be defined, but not both (code.empty() or repeat.empty())
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        70. ActivityDefinition.timing[x].extension:relativeTime
        Slice NamerelativeTime
        Definition

        Timing in which the characteristic is determined.

        ShortTiming in which the characteristic is determined
        Control0..*
        TypeExtension(RelativeTime) (Complex Extension)
        Is Modifierfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        72. ActivityDefinition.timing[x].modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        74. ActivityDefinition.timing[x].repeat
        Definition

        A set of rules that describe when the event is scheduled.

        ShortWhen the event is to occur
        Control10..1
        TypeElement
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Requirements

        Many timing schedules are determined by regular repetitions.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        tim-1: if there's a duration, there needs to be duration units (duration.empty() or durationUnit.exists())
        tim-2: if there's a period, there needs to be period units (period.empty() or periodUnit.exists())
        tim-4: duration SHALL be a non-negative value (duration.exists() implies duration >= 0)
        tim-5: period SHALL be a non-negative value (period.exists() implies period >= 0)
        tim-6: If there's a periodMax, there must be a period (periodMax.empty() or period.exists())
        tim-7: If there's a durationMax, there must be a duration (durationMax.empty() or duration.exists())
        tim-8: If there's a countMax, there must be a count (countMax.empty() or count.exists())
        tim-9: If there's an offset, there must be a when (and not C, CM, CD, CV) (offset.empty() or (when.exists() and when.select($this in ('C' | 'CM' | 'CD' | 'CV')).allFalse()))
        tim-10: If there's a timeOfDay, there cannot be a when, or vice versa (timeOfDay.empty() or when.empty())
        76. ActivityDefinition.timing[x].repeat.bounds[x]
        Definition

        Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule.

        ShortLength/Range of lengths, or (Start and/or end) limits
        Control0..01
        TypeChoice of: Duration, Range, Period
        Is Modifierfalse
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        78. ActivityDefinition.timing[x].repeat.count
        Definition

        A total count of the desired number of repetitions across the duration of the entire timing specification. If countMax is present, this element indicates the lower bound of the allowed range of count values.

        ShortMinimal number of times this event should be repeatedNumber of times to repeat
        Comments

        If you have both bounds and count, then this should be understood as within the bounds period, until count times happens.

        Control0..1
        This element is affected by the following invariants: tim-8
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Repetitions may be limited by end time or total occurrences.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        80. ActivityDefinition.timing[x].repeat.countMax
        Definition

        If present, indicates that the count is a range - so to perform the action between [count] and [countMax] times.

        ShortMaximum number of times this event should be repeatedMaximum number of times to repeat
        Control0..1
        This element is affected by the following invariants: tim-8
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        82. ActivityDefinition.timing[x].repeat.duration
        Definition

        How long this thing happens for when it happens. If durationMax is present, this element indicates the lower bound of the allowed range of the duration.

        ShortMinimal duration this event should lastHow long when it happens
        Comments

        For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

        Control0..1
        This element is affected by the following invariants: tim-7, tim-1, tim-4
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Some activities are not instantaneous and need to be maintained for a period of time.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        84. ActivityDefinition.timing[x].repeat.durationMax
        Definition

        If present, indicates that the duration is a range - so to perform the action between [duration] and [durationMax] time length.

        ShortMaximal duration this event should lastHow long when it happens (Max)
        Comments

        For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

        Control0..1
        This element is affected by the following invariants: tim-7
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Some activities are not instantaneous and need to be maintained for a period of time.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        86. ActivityDefinition.timing[x].repeat.frequency
        Definition

        The number of times to repeat the action within the specified period. If frequencyMax is present, this element indicates the lower bound of the allowed range of the frequency.

        ShortIndicates the minimal number of repetitions that should occur within a period. I.e. Event occurs frequency times per periodIndicates the number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
        Control0..1
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Meaning if MissingIf no frequency is stated, the assumption is that the event occurs once per period, but systems SHOULD always be specific about this
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        88. ActivityDefinition.timing[x].repeat.frequencyMax
        Definition

        If present, indicates that the frequency is a range - so to repeat between [frequency] and [frequencyMax] times within the period or period range.

        ShortIndicates the maximum number of repetitions that should occur within a period. I.e. Event occurs frequency times per periodEvent occurs up to frequencyMax times per period
        Control0..1
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        90. ActivityDefinition.timing[x].repeat.period
        Definition

        Indicates the duration of time over which repetitions are to occur; e.g. to express "3 times per day", 3 would be the frequency and "1 day" would be the period. If periodMax is present, this element indicates the lower bound of the allowed range of the period length.

        ShortThe minimal duration to which the frequency applies. I.e. Event occurs frequency times per periodThe duration to which the frequency applies. I.e. Event occurs frequency times per period
        Control0..1
        This element is affected by the following invariants: tim-6, tim-5, tim-2
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        92. ActivityDefinition.timing[x].repeat.periodMax
        Definition

        If present, indicates that the period is a range from [period] to [periodMax], allowing expressing concepts such as "do this once every 3-5 days.

        ShortThe maximum duration to which the frequency applies. I.e. Event occurs frequency times per periodUpper limit of period (3-4 hours)
        Control0..1
        This element is affected by the following invariants: tim-6
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        94. ActivityDefinition.timing[x].repeat.when
        Definition

        An approximate time period during the day, potentially linked to an event of daily living that indicates when the action should occur.

        ShortCode for time period of occurrence
        Comments

        When more than one event is listed, the event is tied to the union of the specified events.

        Control0..*
        This element is affected by the following invariants: tim-9, tim-10
        BindingThe codes SHALL be taken from EventTiminghttp://hl7.org/fhir/ValueSet/event-timing|5.0.0
        (required to http://hl7.org/fhir/ValueSet/event-timing|5.0.0)

        Real-world event relating to the schedule.

        Typecode
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Timings are frequently determined by occurrences such as waking, eating and sleep.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        96. ActivityDefinition.location
        Definition

        Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.

        ShortWhere it should happen
        Comments

        May reference a specific clinical location or may just identify a type of location.

        Control0..1
        TypeReferenceCodeableReference(Location)
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Requirements

        Helps in planning of activity.

        Alternate Namesfacility
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        98. ActivityDefinition.participant
        Definition

        Indicates who should participate in performing the action described.

        ShortWho should participate in the action
        Control0..*
        TypeBackboneElement
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        100. ActivityDefinition.participant.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).


        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.


        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        102. ActivityDefinition.participant.type
        Definition

        The type of participant in the action.

        Shortpatient | practitioner | related-person | devicecareteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson
        Control10..1
        BindingThe codes SHALL be taken from action-participant-type|4.0.1http://hl7.org/fhir/ValueSet/action-participant-type|5.0.0
        (required to http://hl7.org/fhir/ValueSet/action-participant-type|4.0.1)

        The type of participant in the activity.

        Typecode
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        104. ActivityDefinition.product[x]
        Definition

        Identifies the food, drug or other product being consumed or supplied in the activity.

        ShortWhat's administered/supplied
        Control0..1
        BindingFor example codes, see SNOMEDCTMedicationCodeshttp://hl7.org/fhir/ValueSet/medication-codes
        (example to http://hl7.org/fhir/ValueSet/medication-codes)

        Code describing the type of substance or medication.

        TypeChoice of: Reference(Medication, Substance, Ingredient, SubstanceDefinition), CodeableConcept
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Must Supporttrue
        Must Support TypesNo must-support rules about the choice of types/profiles
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        106. ActivityDefinition.quantity
        Definition

        Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).

        ShortHow much is administered/consumed/supplied
        Control0..1
        TypeQuantity(SimpleQuantity)
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Alternate Namesdose
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        108. ActivityDefinition.dosage
        Definition

        Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.

        ShortDetailed dosage instructions
        Comments

        If a dosage instruction is used, the definition should not specify timing or quantity.

        Control0..*
        TypeDosage
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        110. ActivityDefinition.dosage.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        112. ActivityDefinition.dosage.timing
        Definition

        When medication should be administered.

        ShortWhen medication should be administered
        Comments

        This attribute might not always be populated while the Dosage.text is expected to be populated. If both are populated, then the Dosage.text should reflect the content of the Dosage.timing.

        Control0..1
        TypeTiming
        Is Modifierfalse
        Summarytrue
        Requirements

        The timing schedule for giving the medication to the patient. This data type allows many different expressions. For example: "Every 8 hours"; "Three times a day"; "1/2 an hour before breakfast for 10 days from 23-Dec 2011:"; "15 Oct 2013, 17 Oct 2013 and 1 Nov 2013". Sometimes, a rate can imply duration when expressed as total volume / duration (e.g. 500mL/2 hours implies a duration of 2 hours). However, when rate doesn't imply duration (e.g. 250mL/hour), then the timing.repeat.duration is needed to convey the infuse over time period.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        code-xor-repeat: Either a code or a repeat structure should be defined, but not both (code.empty() or repeat.empty())
        114. ActivityDefinition.dosage.timing.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        116. ActivityDefinition.dosage.timing.repeat
        Definition

        A set of rules that describe when the event is scheduled.

        ShortWhen the event is to occur
        Control0..1
        TypeElement
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Requirements

        Many timing schedules are determined by regular repetitions.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        tim-1: if there's a duration, there needs to be duration units (duration.empty() or durationUnit.exists())
        tim-2: if there's a period, there needs to be period units (period.empty() or periodUnit.exists())
        tim-4: duration SHALL be a non-negative value (duration.exists() implies duration >= 0)
        tim-5: period SHALL be a non-negative value (period.exists() implies period >= 0)
        tim-6: If there's a periodMax, there must be a period (periodMax.empty() or period.exists())
        tim-7: If there's a durationMax, there must be a duration (durationMax.empty() or duration.exists())
        tim-8: If there's a countMax, there must be a count (countMax.empty() or count.exists())
        tim-9: If there's an offset, there must be a when (and not C, CM, CD, CV) (offset.empty() or (when.exists() and when.select($this in ('C' | 'CM' | 'CD' | 'CV')).allFalse()))
        tim-10: If there's a timeOfDay, there cannot be a when, or vice versa (timeOfDay.empty() or when.empty())
        118. ActivityDefinition.dosage.timing.repeat.bounds[x]
        Definition

        Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule.

        ShortLength/Range of lengths, or (Start and/or end) limits
        Control0..01
        TypeChoice of: Duration, Range, Period
        Is Modifierfalse
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        120. ActivityDefinition.dosage.timing.repeat.count
        Definition

        A total count of the desired number of repetitions across the duration of the entire timing specification. If countMax is present, this element indicates the lower bound of the allowed range of count values.

        ShortMinimal number of times this event should be repeatedNumber of times to repeat
        Comments

        If you have both bounds and count, then this should be understood as within the bounds period, until count times happens.

        Control0..1
        This element is affected by the following invariants: tim-8
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Repetitions may be limited by end time or total occurrences.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        122. ActivityDefinition.dosage.timing.repeat.countMax
        Definition

        If present, indicates that the count is a range - so to perform the action between [count] and [countMax] times.

        ShortMaximum number of times this event should be repeatedMaximum number of times to repeat
        Control0..1
        This element is affected by the following invariants: tim-8
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        124. ActivityDefinition.dosage.timing.repeat.duration
        Definition

        How long this thing happens for when it happens. If durationMax is present, this element indicates the lower bound of the allowed range of the duration.

        ShortMinimal duration this event should lastHow long when it happens
        Comments

        For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

        Control0..1
        This element is affected by the following invariants: tim-7, tim-1, tim-4
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Some activities are not instantaneous and need to be maintained for a period of time.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        126. ActivityDefinition.dosage.timing.repeat.durationMax
        Definition

        If present, indicates that the duration is a range - so to perform the action between [duration] and [durationMax] time length.

        ShortMaximal duration this event should lastHow long when it happens (Max)
        Comments

        For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

        Control0..1
        This element is affected by the following invariants: tim-7
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Some activities are not instantaneous and need to be maintained for a period of time.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        128. ActivityDefinition.dosage.timing.repeat.frequency
        Definition

        The number of times to repeat the action within the specified period. If frequencyMax is present, this element indicates the lower bound of the allowed range of the frequency.

        ShortIndicates the minimal number of repetitions that should occur within a period. I.e. Event occurs frequency times per periodIndicates the number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
        Control0..1
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Meaning if MissingIf no frequency is stated, the assumption is that the event occurs once per period, but systems SHOULD always be specific about this
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        130. ActivityDefinition.dosage.timing.repeat.frequencyMax
        Definition

        If present, indicates that the frequency is a range - so to repeat between [frequency] and [frequencyMax] times within the period or period range.

        ShortIndicates the maximum number of repetitions that should occur within a period. I.e. Event occurs frequency times per periodEvent occurs up to frequencyMax times per period
        Control0..1
        TypepositiveInt
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        132. ActivityDefinition.dosage.timing.repeat.period
        Definition

        Indicates the duration of time over which repetitions are to occur; e.g. to express "3 times per day", 3 would be the frequency and "1 day" would be the period. If periodMax is present, this element indicates the lower bound of the allowed range of the period length.

        ShortThe minimal duration to which the frequency applies. I.e. Event occurs frequency times per periodThe duration to which the frequency applies. I.e. Event occurs frequency times per period
        Control0..1
        This element is affected by the following invariants: tim-6, tim-5, tim-2
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        134. ActivityDefinition.dosage.timing.repeat.periodMax
        Definition

        If present, indicates that the period is a range from [period] to [periodMax], allowing expressing concepts such as "do this once every 3-5 days.

        ShortThe maximum duration to which the frequency applies. I.e. Event occurs frequency times per periodUpper limit of period (3-4 hours)
        Control0..1
        This element is affected by the following invariants: tim-6
        Typedecimal
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        136. ActivityDefinition.dosage.timing.repeat.when
        Definition

        An approximate time period during the day, potentially linked to an event of daily living that indicates when the action should occur.

        ShortCode for time period of occurrence
        Comments

        When more than one event is listed, the event is tied to the union of the specified events.

        Control0..*
        This element is affected by the following invariants: tim-9, tim-10
        BindingThe codes SHALL be taken from EventTiminghttp://hl7.org/fhir/ValueSet/event-timing|5.0.0
        (required to http://hl7.org/fhir/ValueSet/event-timing|5.0.0)

        Real-world event relating to the schedule.

        Typecode
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summarytrue
        Requirements

        Timings are frequently determined by occurrences such as waking, eating and sleep.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        138. ActivityDefinition.bodySite
        Definition

        Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).

        ShortWhat part of body to perform on
        Comments

        Only used if not implicit in the code found in ServiceRequest.type.

        Control0..*
        BindingFor example codes, see SNOMEDCTBodyStructureshttp://hl7.org/fhir/ValueSet/body-site
        (example to http://hl7.org/fhir/ValueSet/body-site)

        A code that identifies the anatomical location.

        TypeCodeableConcept
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Requirements

        Knowing where the procedure is made is important for tracking if multiple sites are possible.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        140. ActivityDefinition.dynamicValue
        Definition

        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 request resource that would contain the result.

        ShortDynamic aspects of the definition
        Comments

        Dynamic values are applied in the order in which they are defined in the ActivityDefinition. Note that if both a transform and dynamic values are specified, the dynamic values will be applied to the result of the transform.

        Control0..*
        TypeBackboneElement
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        142. ActivityDefinition.dynamicValue.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).


        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.


        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        144. ActivityDefinition.dynamicValue.path
        Definition

        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 expression. The specified path SHALL be a FHIRPath resolveable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the Simple FHIRPath Profile for full details).


        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 expression. The specified path SHALL be a FHIRPath resolvable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the Simple FHIRPath Profile for full details).

        ShortThe path to the element to be set dynamically
        Comments

        The path attribute contains a Simple FHIRPath Subset that allows path traversal, but not calculation.


        The path attribute contains a Simple FHIRPath Subset that allows path traversal, but not calculation.

        Control1..1
        Typestring
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Must Supporttrue
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        146. ActivityDefinition.dynamicValue.expression
        Definition

        An expression specifying the value of the customized element.

        ShortAn expression that provides the dynamic value for the customization
        Comments

        The expression may be inlined, or may be a reference to a named expression within a logic library referenced by the library element.

        Control1..1
        TypeExpression
        Is Modifierfalse
        Must Supporttrue
        Summaryfalse
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))

        Guidance on how to interpret the contents of this table can be found here

        0. ActivityDefinition
        Definition

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

        ShortThe definition of a specific activity to be taken, independent of any particular patient or context
        Control1..1
        Is Modifierfalse
        Must Supportfalse
        Summaryfalse
        Invariantsadf-0: Name should be usable as an identifier for the module by machine processing applications such as code generation (name.matches('[A-Z]([A-Za-z0-9_]){0,254}'))
        dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
        dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty())
        dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (contained.meta.versionId.empty() and contained.meta.lastUpdated.empty())
        dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
        dom-6: A resource should have narrative for robust management (text.`div`.exists())
        no-timing-if-dosage-specified: If a dosage is specified, there SHALL be no timing element at the same level (instead the timing element of dosage should be used) (dosage.exists() implies timing.exists().not())
        2. ActivityDefinition.id
        Definition

        The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

        ShortLogical id of this artifact
        Comments

        The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

        Control0..1
        Typeid
        Is Modifierfalse
        Summarytrue
        4. ActivityDefinition.meta
        Definition

        The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

        ShortMetadata about the resource
        Control1..1
        TypeMeta
        Is Modifierfalse
        Must Supporttrue
        Summarytrue
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        6. ActivityDefinition.meta.id
        Definition

        Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

        ShortUnique id for inter-element referencing
        Control0..1
        This element is affected by the following invariants: ele-1
        Typeid
        Is Modifierfalse
        XML FormatIn the XML format, this property is represented as an attribute.
        Summaryfalse
        8. ActivityDefinition.meta.extension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

        ShortAdditional content defined by implementations
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifierfalse
        Summaryfalse
        Alternate Namesextensions, user content
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        SlicingThis element introduces a set of slices on ActivityDefinition.meta.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
        • value @ url
        • 10. ActivityDefinition.meta.versionId
          Definition

          The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.

          ShortVersion specific identifier
          Comments

          The server assigns this value, and ignores what the client specifies, except in the case that the server is imposing version integrity on updates/deletes.

          Control0..1
          Typeid
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          12. ActivityDefinition.meta.lastUpdated
          Definition

          When the resource last changed - e.g. when the version changed.

          ShortWhen the resource version last changed
          Comments

          This element is generally omitted in instances submitted in a PUT or POST. Instead, it is populated in the response instance and when retrieving information using a GET. The server / resource manager sets this value; what a client provides is irrelevant. This is equivalent to the HTTP Last-Modified and SHOULD have the same value on a read interaction.

          Control0..1
          Typeinstant
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          14. ActivityDefinition.meta.source
          Definition

          A uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.

          ShortIdentifies where the resource comes from
          Comments

          The exact use of the source (and the possible implied Provenance.entity.role and agent.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used. The source may correspond to Provenance.entity.what[x] or Provenance.agent.who[x], though it may be a more general or abstract reference.

          This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.

          Control0..1
          Typeuri
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Must Supporttrue
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          16. ActivityDefinition.meta.profile
          Definition

          A list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.

          ShortProfiles this resource claims to conform to
          Comments

          It is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time. The list of profile URLs is a set.

          Control1..*
          Typecanonical(StructureDefinition)
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Must Supporttrue
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          18. ActivityDefinition.meta.security
          Definition

          Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.

          ShortSecurity Labels applied to this resource
          Comments

          The security labels can be updated without changing the stated version of the resource. The list of security labels is a set. Uniqueness is based the system/code, and version and display are ignored.

          Control0..*
          BindingUnless not suitable, these codes SHALL be taken from AllSecurityLabels
          (extensible to http://hl7.org/fhir/ValueSet/security-labels)

          Security Labels from the Healthcare Privacy and Security Classification System.

          TypeCoding
          Is Modifierfalse
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          20. ActivityDefinition.meta.tag
          Definition

          Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.

          ShortTags applied to this resource
          Comments

          The tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.

          Control0..*
          BindingFor example codes, see CommonTags
          (example to http://hl7.org/fhir/ValueSet/common-tags)

          Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".

          TypeCoding
          Is Modifierfalse
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          22. ActivityDefinition.implicitRules
          Definition

          A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

          ShortA set of rules under which this content was created
          Comments

          Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

          Control0..1
          Typeuri
          Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summarytrue
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          24. ActivityDefinition.language
          Definition

          The base language in which the resource is written.

          ShortLanguage of the resource content
          Comments

          Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

          Control0..1
          BindingThe codes SHOULD be taken from CommonLanguages
          (preferred to http://hl7.org/fhir/ValueSet/languages)

          A human language.

          Additional BindingsPurpose
          AllLanguagesMax Binding
          Typecode
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          26. ActivityDefinition.text
          Definition

          A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

          ShortText summary of the resource, for human interpretation
          Comments

          Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

          Control0..1
          TypeNarrative
          Is Modifierfalse
          Summaryfalse
          Alternate Namesnarrative, html, xhtml, display
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          28. ActivityDefinition.contained
          Definition

          These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

          ShortContained, inline Resources
          Comments

          This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

          Control0..*
          TypeResource
          Is Modifierfalse
          Summaryfalse
          Alternate Namesinline resources, anonymous resources, contained resources
          30. ActivityDefinition.extension
          Definition

          An Extension

          ShortExtension
          Control2..*
          TypeExtension
          Is Modifierfalse
          Summaryfalse
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          SlicingThis element introduces a set of slices on ActivityDefinition.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
          • value @ url
          • 32. ActivityDefinition.extension:knowledgeCapability
            Slice NameknowledgeCapability
            Definition

            Defines a knowledge capability afforded by this knowledge artifact.

            Shortshareable | computable | publishable | executable
            Control1..1
            This element is affected by the following invariants: ele-1
            TypeExtension(knowledgeCapability) (Extension Type: code)
            Is Modifierfalse
            Must Supporttrue
            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
            34. ActivityDefinition.extension:knowledgeCapability.id
            Definition

            Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

            ShortUnique id for inter-element referencing
            Control0..1
            Typestring
            Is Modifierfalse
            XML FormatIn the XML format, this property is represented as an attribute.
            Summaryfalse
            36. ActivityDefinition.extension:knowledgeCapability.extension
            Definition

            An Extension

            ShortExtension
            Control0..0
            TypeExtension
            Is Modifierfalse
            Summaryfalse
            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
            SlicingThis element introduces a set of slices on ActivityDefinition.extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
            • value @ url
            • 38. ActivityDefinition.extension:knowledgeCapability.url
              Definition

              Source of the definition for the extension code - a logical name or a URL.

              Shortidentifies the meaning of the extension
              Comments

              The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

              Control1..1
              Typeuri
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              XML FormatIn the XML format, this property is represented as an attribute.
              Summaryfalse
              Fixed Valuehttp://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability
              40. ActivityDefinition.extension:knowledgeCapability.value[x]
              Definition

              Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

              ShortValue of extension
              Control1..1
              BindingThe codes SHALL be taken from CPG Knowledge Capability
              (required to http://hl7.org/fhir/uv/cpg/ValueSet/cpg-knowledge-capability)

              A knowledge capability provided by a knowledge artifact

              Typecode
              [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
              Is Modifierfalse
              Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
              Summaryfalse
              Pattern Valuecomputable
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              42. ActivityDefinition.extension:knowledgeRepresentationLevel
              Slice NameknowledgeRepresentationLevel
              Definition

              Defines a knowledge representation level provided by this knowledge artifact.

              Shortnarrative | semi-structured | structured | executable
              Control1..1
              This element is affected by the following invariants: ele-1
              TypeExtension(knowledgeRepresentationLevel) (Extension Type: code)
              Is Modifierfalse
              Must Supporttrue
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
              44. ActivityDefinition.extension:knowledgeRepresentationLevel.id
              Definition

              Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

              ShortUnique id for inter-element referencing
              Control0..1
              Typestring
              Is Modifierfalse
              XML FormatIn the XML format, this property is represented as an attribute.
              Summaryfalse
              46. ActivityDefinition.extension:knowledgeRepresentationLevel.extension
              Definition

              An Extension

              ShortExtension
              Control0..0
              TypeExtension
              Is Modifierfalse
              Summaryfalse
              Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
              ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
              SlicingThis element introduces a set of slices on ActivityDefinition.extension.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
              • value @ url
              • 48. ActivityDefinition.extension:knowledgeRepresentationLevel.url
                Definition

                Source of the definition for the extension code - a logical name or a URL.

                Shortidentifies the meaning of the extension
                Comments

                The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.

                Control1..1
                Typeuri
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                XML FormatIn the XML format, this property is represented as an attribute.
                Summaryfalse
                Fixed Valuehttp://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeRepresentationLevel
                50. ActivityDefinition.extension:knowledgeRepresentationLevel.value[x]
                Definition

                Value of extension - must be one of a constrained set of the data types (see Extensibility for a list).

                ShortValue of extension
                Control1..1
                BindingThe codes SHALL be taken from CPG Knowledge Representation Level
                (required to http://hl7.org/fhir/uv/cpg/ValueSet/cpg-knowledge-representation-level)

                A level of knowledge representation provided by this artifact

                Typecode
                [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Pattern Valuestructured
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                52. ActivityDefinition.modifierExtension
                Definition

                May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                ShortExtensions that cannot be ignored
                Comments

                There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                Control0..*
                TypeExtension
                Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
                Summaryfalse
                Requirements

                Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                Alternate Namesextensions, user content
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                54. ActivityDefinition.url
                Definition

                An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this activity definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the activity definition is stored on different servers.

                ShortCanonical identifier for this activity definition, represented as a URI (globally unique)
                Comments

                Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.

                The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions.

                In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found.

                Control1..1
                Typeuri
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summarytrue
                Requirements

                Allows the activity definition to be referenced by a single globally unique identifier.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                56. ActivityDefinition.identifier
                Definition

                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 instance.

                ShortAdditional identifier for the activity definition
                Comments

                Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this activity definition outside of FHIR, where it is not possible to use the logical URI.

                NoteThis is a business identifier, not a resource identifier (see discussion)
                Control0..*
                TypeIdentifier
                Is Modifierfalse
                Must Supporttrue
                Summarytrue
                Requirements

                Allows externally provided and/or usable business identifiers to be easily associated with the module.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                58. ActivityDefinition.version
                Definition

                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 assets.

                ShortBusiness version of the activity definition
                Comments

                There may be different activity definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the activity definition with the format [url]|[version].

                NoteThis is a business version Id, not a resource version Id (see discussion)
                Control1..1
                Typestring
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                60. ActivityDefinition.name
                Definition

                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 generation.

                ShortName for this activity definition (computer friendly)
                Comments

                The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.

                Control1..1
                This element is affected by the following invariants: inv-0
                Typestring
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summarytrue
                Requirements

                Support human navigation and code generation.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                62. ActivityDefinition.title
                Definition

                A short, descriptive, user-friendly title for the activity definition.

                ShortName for this activity definition (human friendly)
                Comments

                This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.

                Control0..1
                Typestring
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                64. ActivityDefinition.subtitle
                Definition

                An explanatory or alternate title for the activity definition giving additional information about its content.

                ShortSubordinate title of the activity definition
                Control0..1
                Typestring
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                66. ActivityDefinition.status
                Definition

                The status of this activity definition. Enables tracking the life-cycle of the content.

                Shortdraft | active | retired | unknown
                Comments

                Allows filtering of activity definitions that are appropriate for use versus not.

                Control1..1
                BindingThe codes SHALL be taken from publication-status|4.0.1
                (required to http://hl7.org/fhir/ValueSet/publication-status|4.0.1)

                The lifecycle status of an artifact.

                Typecode
                Is Modifiertrue because This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                68. ActivityDefinition.experimental
                Definition

                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.

                ShortFor testing purposes, not real usage
                Comments

                Allows filtering of activity definitions that are appropriate for use versus not.

                Control1..1
                Typeboolean
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summarytrue
                Requirements

                Enables experimental content to be developed following the same lifecycle that would be used for a production-level activity definition.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                70. ActivityDefinition.subject[x]
                Definition

                A code or group definition that describes the intended subject of the activity being defined.

                ShortType of individual the activity definition is intended for
                Control1..1
                BindingUnless not suitable, these codes SHALL be taken from subject-type
                (extensible to http://hl7.org/fhir/ValueSet/subject-type)

                The possible types of subjects for an activity (E.g. Patient, Practitioner, Organization, Location, etc.).

                TypeCodeableConcept
                [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                Is Modifierfalse
                Must Supporttrue
                Summaryfalse
                Meaning if MissingPatient
                Pattern Value{
                  "coding" : [{
                    "system" : "http://hl7.org/fhir/fhir-types",
                    "code" : "Patient"
                  }]
                }
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                72. ActivityDefinition.date
                Definition

                The date (and optionally time) when the activity definition was published. The date must change 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 changes.

                ShortDate last changed
                Comments

                Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the activity definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.

                Control0..1
                TypedateTime
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summarytrue
                Alternate NamesRevision Date
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                74. ActivityDefinition.publisher
                Definition

                The name of the organization or individual that published the activity definition.

                ShortName of the publisher (organization or individual)
                Comments

                Usually an organization but may be an individual. The publisher (or steward) of the activity definition is the organization or individual primarily responsible for the maintenance and upkeep of the activity definition. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the activity definition. This item SHOULD be populated unless the information is available from context.

                Control1..1
                Typestring
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summarytrue
                Requirements

                Helps establish the "authority/credibility" of the activity definition. May also allow for contact.

                Alternate Namessteward
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                76. ActivityDefinition.contact
                Definition

                Contact details to assist a user in finding and communicating with the publisher.

                ShortContact details for the publisher
                Comments

                May be a web site, an email address, a telephone number, etc.

                Control0..*
                TypeContactDetail
                Is Modifierfalse
                Must Supporttrue
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                78. ActivityDefinition.description
                Definition

                A free text natural language description of the activity definition from a consumer's perspective.

                ShortNatural language description of the activity definition
                Comments

                This description can be used to capture details such as why the activity definition was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the activity definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the activity definition is presumed to be the predominant language in the place the activity definition was created).

                Control1..1
                Typemarkdown
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summarytrue
                Alternate Namesscope
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                80. ActivityDefinition.useContext
                Definition

                The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate activity definition instances.

                ShortThe context that the content is intended to support
                Comments

                When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.

                Control0..*
                TypeUsageContext
                Is Modifierfalse
                Must Supporttrue
                Summarytrue
                Requirements

                Assist in searching for appropriate content.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                82. ActivityDefinition.jurisdiction
                Definition

                A legal or geographic region in which the activity definition is intended to be used.

                ShortIntended jurisdiction for activity definition (if applicable)
                Comments

                It may be possible for the activity definition to be used in jurisdictions other than those for which it was originally designed or intended.

                Control0..*
                BindingUnless not suitable, these codes SHALL be taken from JurisdictionValueSet
                (extensible to http://hl7.org/fhir/ValueSet/jurisdiction)

                Countries and regions within which this artifact is targeted for use.

                TypeCodeableConcept
                Is Modifierfalse
                Must Supporttrue
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                84. ActivityDefinition.purpose
                Definition

                Explanation of why this activity definition is needed and why it has been designed as it has.

                ShortWhy this activity definition is defined
                Comments

                This element does not describe the usage of the activity definition. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this activity definition.

                Control0..1
                Typemarkdown
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                86. ActivityDefinition.usage
                Definition

                A detailed description of how the activity definition is used from a clinical perspective.

                ShortDescribes the clinical usage of the activity definition
                Control0..1
                Typestring
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                88. ActivityDefinition.copyright
                Definition

                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 definition.

                ShortUse and/or publishing restrictions
                Control0..1
                Typemarkdown
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Requirements

                Consumers must be able to determine any legal restrictions on the use of the activity definition and/or its content.

                Alternate NamesLicense, Restrictions
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                90. ActivityDefinition.approvalDate
                Definition

                The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.

                ShortWhen the activity definition was approved by publisher
                Comments

                The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.

                Control0..1
                Typedate
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                92. ActivityDefinition.lastReviewDate
                Definition

                The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.

                ShortWhen the activity definition was last reviewed
                Comments

                If specified, this date follows the original approval date.

                Control0..1
                Typedate
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Requirements

                Gives a sense of how "current" the content is. Resources that have not been reviewed in a long time may have a risk of being less appropriate/relevant.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                94. ActivityDefinition.effectivePeriod
                Definition

                The period during which the activity definition content was or is planned to be in active use.

                ShortWhen the activity definition is expected to be used
                Comments

                The effective period for a activity definition determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.

                Control0..1
                TypePeriod
                Is Modifierfalse
                Summarytrue
                Requirements

                Allows establishing a transition before a resource comes into effect and also allows for a sunsetting process when new versions of the activity definition are or are expected to be used instead.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                96. ActivityDefinition.topic
                Definition

                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 searching.

                ShortE.g. Education, Treatment, Assessment, etc.
                Control0..*
                BindingFor example codes, see DefinitionTopic
                (example to http://hl7.org/fhir/ValueSet/definition-topic)

                High-level categorization of the definition, used for searching, sorting, and filtering.

                TypeCodeableConcept
                Is Modifierfalse
                Summaryfalse
                Requirements

                Repositories must be able to determine how to categorize the activity definition so that it can be found by topical searches.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                98. ActivityDefinition.author
                Definition

                An individiual or organization primarily involved in the creation and maintenance of the content.

                ShortWho authored the content
                Control0..*
                TypeContactDetail
                Is Modifierfalse
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                100. ActivityDefinition.editor
                Definition

                An individual or organization primarily responsible for internal coherence of the content.

                ShortWho edited the content
                Control0..*
                TypeContactDetail
                Is Modifierfalse
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                102. ActivityDefinition.reviewer
                Definition

                An individual or organization primarily responsible for review of some aspect of the content.

                ShortWho reviewed the content
                Control0..*
                TypeContactDetail
                Is Modifierfalse
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                104. ActivityDefinition.endorser
                Definition

                An individual or organization responsible for officially endorsing the content for use in some setting.

                ShortWho endorsed the content
                Control0..*
                TypeContactDetail
                Is Modifierfalse
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                106. ActivityDefinition.relatedArtifact
                Definition

                Related artifacts such as additional documentation, justification, or bibliographic references.

                ShortAdditional documentation, citations, etc.
                Comments

                Each related artifact is either an attachment, or a reference to another resource, but not both.

                Control0..*
                TypeRelatedArtifact
                Is Modifierfalse
                Summaryfalse
                Requirements

                Activity definitions must be able to provide enough information for consumers of the content (and/or interventions or results produced by the content) to be able to determine and understand the justification for and evidence in support of the content.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                108. ActivityDefinition.library
                Definition

                A reference to a Library resource containing any formal logic used by the activity definition.

                ShortLogic used by the activity definition
                Control0..1
                Typecanonical(Library)
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                110. ActivityDefinition.kind
                Definition

                A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest. Typically, but not always, this is a Request resource.

                ShortKind of resource
                Comments

                May determine what types of extensions are permitted.

                Control1..1
                BindingThe codes SHALL be taken from request-resource-types|4.0.1
                (required to http://hl7.org/fhir/ValueSet/request-resource-types|4.0.1)

                The kind of activity the definition is describing.

                Typecode
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                112. ActivityDefinition.profile
                Definition

                A profile to which the target of the activity definition is expected to conform.

                ShortWhat profile the resource needs to conform to
                Control0..1
                Typecanonical(StructureDefinition)
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summaryfalse
                Requirements

                Allows profiles to be used to describe the types of activities that can be performed within a workflow, protocol, or order set.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                114. ActivityDefinition.code
                Definition

                Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.

                ShortDetail type of activity
                Comments

                Tends to be less relevant for activities involving particular products.

                Control1..1
                BindingFor example codes, see ProcedureCodesSNOMEDCT
                (example to http://hl7.org/fhir/ValueSet/procedure-code)

                Detailed type of the activity; e.g. CBC.

                TypeCodeableConcept
                Is Modifierfalse
                Must Supporttrue
                Summarytrue
                Requirements

                Allows matching performed to planned as well as validation against protocols.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                116. ActivityDefinition.intent
                Definition

                Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.

                Shortproposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
                Control0..1
                BindingThe codes SHALL be taken from request-intent|4.0.1
                (required to http://hl7.org/fhir/ValueSet/request-intent|4.0.1)

                Codes indicating the degree of authority/intentionality associated with a request.

                Typecode
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                118. ActivityDefinition.priority
                Definition

                Indicates how quickly the activity should be addressed with respect to other requests.

                Shortroutine | urgent | asap | stat
                Control0..1
                BindingThe codes SHALL be taken from request-priority|4.0.1
                (required to http://hl7.org/fhir/ValueSet/request-priority|4.0.1)

                Identifies the level of importance to be assigned to actioning the request.

                Typecode
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                120. ActivityDefinition.doNotPerform
                Definition

                Set this to true if the definition is to indicate that a particular activity should NOT be performed. If true, this element should be interpreted to reinforce a negative coding. For example NPO as a code with a doNotPerform of true would still indicate to NOT perform the action.

                ShortTrue if the activity should not be performed
                Comments

                This element is not intended to be used to communicate a decision support response to cancel an order in progress. That should be done with the "remove" type of a PlanDefinition or RequestGroup.

                Control0..1
                Typeboolean
                Is Modifiertrue because If true this element negates the specified action. For Example, instead of a request for a procedure, it is a request for the procedure to not occur.
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supporttrue
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                122. ActivityDefinition.timing[x]
                Definition

                The period, timing or frequency upon which the described activity is to occur.

                ShortWhen activity is to occur
                Control0..1
                TypeTiming
                [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                Is Modifierfalse
                Must Supporttrue
                Summaryfalse
                Requirements

                Allows prompting for activities and detection of missed planned activities.

                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                code-xor-repeat: Either a code or a repeat structure should be defined, but not both (code.empty() or repeat.empty())
                124. ActivityDefinition.timing[x].id
                Definition

                Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                ShortUnique id for inter-element referencing
                Control0..1
                This element is affected by the following invariants: ele-1
                Typeid
                Is Modifierfalse
                XML FormatIn the XML format, this property is represented as an attribute.
                Summaryfalse
                126. ActivityDefinition.timing[x].extension
                Definition

                May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                ShortAdditional content defined by implementations
                Comments

                There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                Control0..*
                TypeExtension
                Is Modifierfalse
                Summaryfalse
                Alternate Namesextensions, user content
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                SlicingThis element introduces a set of slices on ActivityDefinition.timing[x].extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                • value @ url
                • 128. ActivityDefinition.timing[x].extension:relativeTime
                  Slice NamerelativeTime
                  Definition

                  Timing in which the characteristic is determined.

                  ShortTiming in which the characteristic is determined
                  Control0..*
                  TypeExtension(RelativeTime) (Complex Extension)
                  Is Modifierfalse
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  130. ActivityDefinition.timing[x].modifierExtension
                  Definition

                  May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                  Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                  ShortExtensions that cannot be ignored even if unrecognized
                  Comments

                  There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                  Control0..*
                  TypeExtension
                  Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                  Summarytrue
                  Requirements

                  Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                  Alternate Namesextensions, user content, modifiers
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  132. ActivityDefinition.timing[x].event
                  Definition

                  Identifies specific times when the event occurs.

                  ShortWhen the event occurs
                  Control0..*
                  TypedateTime
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Summarytrue
                  Requirements

                  In a Medication Administration Record, for instance, you need to take a general specification, and turn it into a precise specification.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  134. ActivityDefinition.timing[x].repeat
                  Definition

                  A set of rules that describe when the event is scheduled.

                  ShortWhen the event is to occur
                  Control1..1
                  TypeElement
                  Is Modifierfalse
                  Must Supporttrue
                  Summarytrue
                  Requirements

                  Many timing schedules are determined by regular repetitions.

                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  tim-1: if there's a duration, there needs to be duration units (duration.empty() or durationUnit.exists())
                  tim-2: if there's a period, there needs to be period units (period.empty() or periodUnit.exists())
                  tim-4: duration SHALL be a non-negative value (duration.exists() implies duration >= 0)
                  tim-5: period SHALL be a non-negative value (period.exists() implies period >= 0)
                  tim-6: If there's a periodMax, there must be a period (periodMax.empty() or period.exists())
                  tim-7: If there's a durationMax, there must be a duration (durationMax.empty() or duration.exists())
                  tim-8: If there's a countMax, there must be a count (countMax.empty() or count.exists())
                  tim-9: If there's an offset, there must be a when (and not C, CM, CD, CV) (offset.empty() or (when.exists() and when.select($this in ('C' | 'CM' | 'CD' | 'CV')).allFalse()))
                  tim-10: If there's a timeOfDay, there cannot be a when, or vice versa (timeOfDay.empty() or when.empty())
                  136. ActivityDefinition.timing[x].repeat.id
                  Definition

                  Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                  ShortUnique id for inter-element referencing
                  Control0..1
                  This element is affected by the following invariants: ele-1
                  Typestring
                  Is Modifierfalse
                  XML FormatIn the XML format, this property is represented as an attribute.
                  Summaryfalse
                  138. ActivityDefinition.timing[x].repeat.extension
                  Definition

                  May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                  ShortAdditional content defined by implementations
                  Comments

                  There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                  Control0..*
                  TypeExtension
                  Is Modifierfalse
                  Summaryfalse
                  Alternate Namesextensions, user content
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  SlicingThis element introduces a set of slices on ActivityDefinition.timing[x].repeat.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                  • value @ url
                  • 140. ActivityDefinition.timing[x].repeat.bounds[x]
                    Definition

                    Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule.

                    ShortLength/Range of lengths, or (Start and/or end) limits
                    Control0..0
                    TypeChoice of: Duration, Range, Period
                    Is Modifierfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    142. ActivityDefinition.timing[x].repeat.count
                    Definition

                    A total count of the desired number of repetitions across the duration of the entire timing specification. If countMax is present, this element indicates the lower bound of the allowed range of count values.

                    ShortMinimal number of times this event should be repeated
                    Comments

                    If you have both bounds and count, then this should be understood as within the bounds period, until count times happens.

                    Control0..1
                    This element is affected by the following invariants: tim-8
                    TypepositiveInt
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Requirements

                    Repetitions may be limited by end time or total occurrences.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    144. ActivityDefinition.timing[x].repeat.countMax
                    Definition

                    If present, indicates that the count is a range - so to perform the action between [count] and [countMax] times.

                    ShortMaximum number of times this event should be repeated
                    Control0..1
                    This element is affected by the following invariants: tim-8
                    TypepositiveInt
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    146. ActivityDefinition.timing[x].repeat.duration
                    Definition

                    How long this thing happens for when it happens. If durationMax is present, this element indicates the lower bound of the allowed range of the duration.

                    ShortMinimal duration this event should last
                    Comments

                    For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

                    Control0..1
                    This element is affected by the following invariants: tim-7, tim-1, tim-4
                    Typedecimal
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Requirements

                    Some activities are not instantaneous and need to be maintained for a period of time.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    148. ActivityDefinition.timing[x].repeat.durationMax
                    Definition

                    If present, indicates that the duration is a range - so to perform the action between [duration] and [durationMax] time length.

                    ShortMaximal duration this event should last
                    Comments

                    For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

                    Control0..1
                    This element is affected by the following invariants: tim-7
                    Typedecimal
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Requirements

                    Some activities are not instantaneous and need to be maintained for a period of time.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    150. ActivityDefinition.timing[x].repeat.durationUnit
                    Definition

                    The units of time for the duration, in UCUM units Normal practice is to use the 'mo' code as a calendar month when calculating the next occurrence.

                    Shorts | min | h | d | wk | mo | a - unit of time (UCUM)
                    Control0..1
                    This element is affected by the following invariants: tim-1
                    BindingThe codes SHALL be taken from UnitsOfTime
                    (required to http://hl7.org/fhir/ValueSet/units-of-time|5.0.0)

                    A unit of time (units from UCUM).

                    Typecode
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    152. ActivityDefinition.timing[x].repeat.frequency
                    Definition

                    The number of times to repeat the action within the specified period. If frequencyMax is present, this element indicates the lower bound of the allowed range of the frequency.

                    ShortIndicates the minimal number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
                    Control0..1
                    TypepositiveInt
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Meaning if MissingIf no frequency is stated, the assumption is that the event occurs once per period, but systems SHOULD always be specific about this
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    154. ActivityDefinition.timing[x].repeat.frequencyMax
                    Definition

                    If present, indicates that the frequency is a range - so to repeat between [frequency] and [frequencyMax] times within the period or period range.

                    ShortIndicates the maximum number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
                    Control0..1
                    TypepositiveInt
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    156. ActivityDefinition.timing[x].repeat.period
                    Definition

                    Indicates the duration of time over which repetitions are to occur; e.g. to express "3 times per day", 3 would be the frequency and "1 day" would be the period. If periodMax is present, this element indicates the lower bound of the allowed range of the period length.

                    ShortThe minimal duration to which the frequency applies. I.e. Event occurs frequency times per period
                    Control0..1
                    This element is affected by the following invariants: tim-6, tim-5, tim-2
                    Typedecimal
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    158. ActivityDefinition.timing[x].repeat.periodMax
                    Definition

                    If present, indicates that the period is a range from [period] to [periodMax], allowing expressing concepts such as "do this once every 3-5 days.

                    ShortThe maximum duration to which the frequency applies. I.e. Event occurs frequency times per period
                    Control0..1
                    This element is affected by the following invariants: tim-6
                    Typedecimal
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    160. ActivityDefinition.timing[x].repeat.periodUnit
                    Definition

                    The units of time for the period in UCUM units Normal practice is to use the 'mo' code as a calendar month when calculating the next occurrence.

                    Shorts | min | h | d | wk | mo | a - unit of time (UCUM)
                    Control0..1
                    This element is affected by the following invariants: tim-2
                    BindingThe codes SHALL be taken from UnitsOfTime
                    (required to http://hl7.org/fhir/ValueSet/units-of-time|5.0.0)

                    A unit of time (units from UCUM).

                    Typecode
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    162. ActivityDefinition.timing[x].repeat.dayOfWeek
                    Definition

                    If one or more days of week is provided, then the action happens only on the specified day(s).

                    Shortmon | tue | wed | thu | fri | sat | sun
                    Comments

                    If no days are specified, the action is assumed to happen every day as otherwise specified.

                    Control0..*
                    BindingThe codes SHALL be taken from DaysOfWeek
                    (required to http://hl7.org/fhir/ValueSet/days-of-week|5.0.0)
                    Typecode
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    164. ActivityDefinition.timing[x].repeat.timeOfDay
                    Definition

                    Specified time of day for action to take place.

                    ShortTime of day for action
                    Comments

                    When time of day is specified, it is inferred that the action happens every day (as filtered by dayofWeek) on the specified times. If there's a timeOfDay, there cannot be a when, or vice versa.

                    Control0..*
                    This element is affected by the following invariants: tim-10
                    Typetime
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    166. ActivityDefinition.timing[x].repeat.when
                    Definition

                    An approximate time period during the day, potentially linked to an event of daily living that indicates when the action should occur.

                    ShortCode for time period of occurrence
                    Comments

                    When more than one event is listed, the event is tied to the union of the specified events.

                    Control0..*
                    This element is affected by the following invariants: tim-9, tim-10
                    BindingThe codes SHALL be taken from EventTiming
                    (required to http://hl7.org/fhir/ValueSet/event-timing|5.0.0)

                    Real-world event relating to the schedule.

                    Typecode
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Requirements

                    Timings are frequently determined by occurrences such as waking, eating and sleep.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    168. ActivityDefinition.timing[x].repeat.offset
                    Definition

                    The number of minutes from the event. If the event code does not indicate whether the minutes is before or after the event, then the offset is assumed to be after the event.

                    ShortMinutes from event (before or after)
                    Control0..1
                    This element is affected by the following invariants: tim-9
                    TypeunsignedInt
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    170. ActivityDefinition.timing[x].code
                    Definition

                    A code for the timing schedule (or just text in code.text). Some codes such as BID are ubiquitous, but many institutions define their own additional codes. If a code is provided, the code is understood to be a complete statement of whatever is specified in the structured timing data, and either the code or the data may be used to interpret the Timing, with the exception that .repeat.bounds still applies over the code (and is not contained in the code).

                    ShortC | BID | TID | QID | AM | PM | QD | QOD | +
                    Comments

                    BID etc. are defined as 'at institutionally specified times'. For example, an institution may choose that BID is "always at 7am and 6pm". If it is inappropriate for this choice to be made, the code BID should not be used. Instead, a distinct organization-specific code should be used in place of the HL7-defined BID code and/or a structured representation should be used (in this case, specifying the two event times).

                    Control0..1
                    BindingThe codes SHOULD be taken from TimingAbbreviation
                    (preferred to http://hl7.org/fhir/ValueSet/timing-abbreviation)

                    Code for a known / defined timing pattern.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    172. ActivityDefinition.location
                    Definition

                    Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.

                    ShortWhere it should happen
                    Comments

                    May reference a specific clinical location or may just identify a type of location.

                    Control0..1
                    TypeReference(Location)
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Requirements

                    Helps in planning of activity.

                    Alternate Namesfacility
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    174. ActivityDefinition.participant
                    Definition

                    Indicates who should participate in performing the action described.

                    ShortWho should participate in the action
                    Control0..*
                    TypeBackboneElement
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    176. ActivityDefinition.participant.id
                    Definition

                    Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                    ShortUnique id for inter-element referencing
                    Control0..1
                    Typestring
                    Is Modifierfalse
                    XML FormatIn the XML format, this property is represented as an attribute.
                    Summaryfalse
                    178. ActivityDefinition.participant.extension
                    Definition

                    May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                    ShortAdditional content defined by implementations
                    Comments

                    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                    Control0..*
                    TypeExtension
                    Is Modifierfalse
                    Summaryfalse
                    Alternate Namesextensions, user content
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    180. ActivityDefinition.participant.modifierExtension
                    Definition

                    May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                    Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                    ShortExtensions that cannot be ignored even if unrecognized
                    Comments

                    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                    Control0..*
                    TypeExtension
                    Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                    Summarytrue
                    Requirements

                    Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                    Alternate Namesextensions, user content, modifiers
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    182. ActivityDefinition.participant.type
                    Definition

                    The type of participant in the action.

                    Shortpatient | practitioner | related-person | device
                    Control1..1
                    BindingThe codes SHALL be taken from action-participant-type|4.0.1
                    (required to http://hl7.org/fhir/ValueSet/action-participant-type|4.0.1)

                    The type of participant in the activity.

                    Typecode
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    184. ActivityDefinition.participant.role
                    Definition

                    The role the participant should play in performing the described action.

                    ShortE.g. Nurse, Surgeon, Parent, etc.
                    Control0..1
                    BindingFor example codes, see action-participant-role
                    (example to http://hl7.org/fhir/ValueSet/action-participant-role)

                    Defines roles played by participants for the action.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    186. ActivityDefinition.product[x]
                    Definition

                    Identifies the food, drug or other product being consumed or supplied in the activity.

                    ShortWhat's administered/supplied
                    Control0..1
                    BindingFor example codes, see SNOMEDCTMedicationCodes
                    (example to http://hl7.org/fhir/ValueSet/medication-codes)

                    Code describing the type of substance or medication.

                    TypeChoice of: Reference(Medication, Substance), CodeableConcept
                    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                    Is Modifierfalse
                    Must Supporttrue
                    Must Support TypesNo must-support rules about the choice of types/profiles
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    188. ActivityDefinition.quantity
                    Definition

                    Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).

                    ShortHow much is administered/consumed/supplied
                    Control0..1
                    TypeQuantity(SimpleQuantity)
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Alternate Namesdose
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    190. ActivityDefinition.dosage
                    Definition

                    Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.

                    ShortDetailed dosage instructions
                    Comments

                    If a dosage instruction is used, the definition should not specify timing or quantity.

                    Control0..*
                    TypeDosage
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    192. ActivityDefinition.dosage.id
                    Definition

                    Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                    ShortUnique id for inter-element referencing
                    Control0..1
                    This element is affected by the following invariants: ele-1
                    Typeid
                    Is Modifierfalse
                    XML FormatIn the XML format, this property is represented as an attribute.
                    Summaryfalse
                    194. ActivityDefinition.dosage.extension
                    Definition

                    May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                    ShortAdditional content defined by implementations
                    Comments

                    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                    Control0..*
                    TypeExtension
                    Is Modifierfalse
                    Summaryfalse
                    Alternate Namesextensions, user content
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    SlicingThis element introduces a set of slices on ActivityDefinition.dosage.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                    • value @ url
                    • 196. ActivityDefinition.dosage.modifierExtension
                      Definition

                      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                      ShortExtensions that cannot be ignored even if unrecognized
                      Comments

                      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                      Control0..*
                      TypeExtension
                      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                      Summarytrue
                      Requirements

                      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                      Alternate Namesextensions, user content, modifiers
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      198. ActivityDefinition.dosage.sequence
                      Definition

                      Indicates the order in which the dosage instructions should be applied or interpreted.

                      ShortThe order of the dosage instructions
                      Control0..1
                      Typeinteger
                      Is Modifierfalse
                      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                      Summarytrue
                      Requirements

                      If the sequence number of multiple Dosages is the same, then it is implied that the instructions are to be treated as concurrent. If the sequence number is different, then the Dosages are intended to be sequential.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      200. ActivityDefinition.dosage.text
                      Definition

                      Free text dosage instructions e.g. SIG.

                      ShortFree text dosage instructions e.g. SIG
                      Control0..1
                      Typestring
                      Is Modifierfalse
                      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                      Summarytrue
                      Requirements

                      Free text dosage instructions can be used for cases where the instructions are too complex to code. The content of this attribute does not include the name or description of the medication. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. It is expected that the text instructions will always be populated. If the dosage.timing attribute is also populated, then the dosage.text should reflect the same information as the timing. Additional information about administration or preparation of the medication should be included as text.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      202. ActivityDefinition.dosage.additionalInstruction
                      Definition

                      Supplemental instructions to the patient on how to take the medication (e.g. "with meals" or"take half to one hour before food") or warnings for the patient about the medication (e.g. "may cause drowsiness" or "avoid exposure of skin to direct sunlight or sunlamps").

                      ShortSupplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
                      Comments

                      Information about administration or preparation of the medication (e.g. "infuse as rapidly as possibly via intraperitoneal port" or take "immediately following drug x") should be populated in dosage.text.

                      Control0..*
                      BindingFor example codes, see SNOMEDCTAdditionalDosageInstructions
                      (example to http://hl7.org/fhir/ValueSet/additional-instruction-codes)

                      A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery".

                      TypeCodeableConcept
                      Is Modifierfalse
                      Summarytrue
                      Requirements

                      Additional instruction is intended to be coded, but where no code exists, the element could include text. For example, "Swallow with plenty of water" which might or might not be coded.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      204. ActivityDefinition.dosage.patientInstruction
                      Definition

                      Instructions in terms that are understood by the patient or consumer.

                      ShortPatient or consumer oriented instructions
                      Control0..1
                      Typestring
                      Is Modifierfalse
                      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      206. ActivityDefinition.dosage.timing
                      Definition

                      When medication should be administered.

                      ShortWhen medication should be administered
                      Comments

                      This attribute might not always be populated while the Dosage.text is expected to be populated. If both are populated, then the Dosage.text should reflect the content of the Dosage.timing.

                      Control0..1
                      TypeTiming
                      Is Modifierfalse
                      Summarytrue
                      Requirements

                      The timing schedule for giving the medication to the patient. This data type allows many different expressions. For example: "Every 8 hours"; "Three times a day"; "1/2 an hour before breakfast for 10 days from 23-Dec 2011:"; "15 Oct 2013, 17 Oct 2013 and 1 Nov 2013". Sometimes, a rate can imply duration when expressed as total volume / duration (e.g. 500mL/2 hours implies a duration of 2 hours). However, when rate doesn't imply duration (e.g. 250mL/hour), then the timing.repeat.duration is needed to convey the infuse over time period.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      code-xor-repeat: Either a code or a repeat structure should be defined, but not both (code.empty() or repeat.empty())
                      208. ActivityDefinition.dosage.timing.id
                      Definition

                      Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                      ShortUnique id for inter-element referencing
                      Control0..1
                      This element is affected by the following invariants: ele-1
                      Typeid
                      Is Modifierfalse
                      XML FormatIn the XML format, this property is represented as an attribute.
                      Summaryfalse
                      210. ActivityDefinition.dosage.timing.extension
                      Definition

                      May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                      ShortAdditional content defined by implementations
                      Comments

                      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                      Control0..*
                      TypeExtension
                      Is Modifierfalse
                      Summaryfalse
                      Alternate Namesextensions, user content
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      SlicingThis element introduces a set of slices on ActivityDefinition.dosage.timing.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                      • value @ url
                      • 212. ActivityDefinition.dosage.timing.modifierExtension
                        Definition

                        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                        ShortExtensions that cannot be ignored even if unrecognized
                        Comments

                        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                        Control0..*
                        TypeExtension
                        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                        Summarytrue
                        Requirements

                        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                        Alternate Namesextensions, user content, modifiers
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                        214. ActivityDefinition.dosage.timing.event
                        Definition

                        Identifies specific times when the event occurs.

                        ShortWhen the event occurs
                        Control0..*
                        TypedateTime
                        Is Modifierfalse
                        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                        Summarytrue
                        Requirements

                        In a Medication Administration Record, for instance, you need to take a general specification, and turn it into a precise specification.

                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        216. ActivityDefinition.dosage.timing.repeat
                        Definition

                        A set of rules that describe when the event is scheduled.

                        ShortWhen the event is to occur
                        Control0..1
                        TypeElement
                        Is Modifierfalse
                        Must Supporttrue
                        Summarytrue
                        Requirements

                        Many timing schedules are determined by regular repetitions.

                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        tim-1: if there's a duration, there needs to be duration units (duration.empty() or durationUnit.exists())
                        tim-2: if there's a period, there needs to be period units (period.empty() or periodUnit.exists())
                        tim-4: duration SHALL be a non-negative value (duration.exists() implies duration >= 0)
                        tim-5: period SHALL be a non-negative value (period.exists() implies period >= 0)
                        tim-6: If there's a periodMax, there must be a period (periodMax.empty() or period.exists())
                        tim-7: If there's a durationMax, there must be a duration (durationMax.empty() or duration.exists())
                        tim-8: If there's a countMax, there must be a count (countMax.empty() or count.exists())
                        tim-9: If there's an offset, there must be a when (and not C, CM, CD, CV) (offset.empty() or (when.exists() and when.select($this in ('C' | 'CM' | 'CD' | 'CV')).allFalse()))
                        tim-10: If there's a timeOfDay, there cannot be a when, or vice versa (timeOfDay.empty() or when.empty())
                        218. ActivityDefinition.dosage.timing.repeat.id
                        Definition

                        Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                        ShortUnique id for inter-element referencing
                        Control0..1
                        This element is affected by the following invariants: ele-1
                        Typestring
                        Is Modifierfalse
                        XML FormatIn the XML format, this property is represented as an attribute.
                        Summaryfalse
                        220. ActivityDefinition.dosage.timing.repeat.extension
                        Definition

                        May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                        ShortAdditional content defined by implementations
                        Comments

                        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                        Control0..*
                        TypeExtension
                        Is Modifierfalse
                        Summaryfalse
                        Alternate Namesextensions, user content
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                        SlicingThis element introduces a set of slices on ActivityDefinition.dosage.timing.repeat.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                        • value @ url
                        • 222. ActivityDefinition.dosage.timing.repeat.bounds[x]
                          Definition

                          Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule.

                          ShortLength/Range of lengths, or (Start and/or end) limits
                          Control0..0
                          TypeChoice of: Duration, Range, Period
                          Is Modifierfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          224. ActivityDefinition.dosage.timing.repeat.count
                          Definition

                          A total count of the desired number of repetitions across the duration of the entire timing specification. If countMax is present, this element indicates the lower bound of the allowed range of count values.

                          ShortMinimal number of times this event should be repeated
                          Comments

                          If you have both bounds and count, then this should be understood as within the bounds period, until count times happens.

                          Control0..1
                          This element is affected by the following invariants: tim-8
                          TypepositiveInt
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Requirements

                          Repetitions may be limited by end time or total occurrences.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          226. ActivityDefinition.dosage.timing.repeat.countMax
                          Definition

                          If present, indicates that the count is a range - so to perform the action between [count] and [countMax] times.

                          ShortMaximum number of times this event should be repeated
                          Control0..1
                          This element is affected by the following invariants: tim-8
                          TypepositiveInt
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          228. ActivityDefinition.dosage.timing.repeat.duration
                          Definition

                          How long this thing happens for when it happens. If durationMax is present, this element indicates the lower bound of the allowed range of the duration.

                          ShortMinimal duration this event should last
                          Comments

                          For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

                          Control0..1
                          This element is affected by the following invariants: tim-7, tim-1, tim-4
                          Typedecimal
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Requirements

                          Some activities are not instantaneous and need to be maintained for a period of time.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          230. ActivityDefinition.dosage.timing.repeat.durationMax
                          Definition

                          If present, indicates that the duration is a range - so to perform the action between [duration] and [durationMax] time length.

                          ShortMaximal duration this event should last
                          Comments

                          For some events the duration is part of the definition of the event (e.g. IV infusions, where the duration is implicit in the specified quantity and rate). For others, it's part of the timing specification (e.g. exercise).

                          Control0..1
                          This element is affected by the following invariants: tim-7
                          Typedecimal
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Requirements

                          Some activities are not instantaneous and need to be maintained for a period of time.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          232. ActivityDefinition.dosage.timing.repeat.durationUnit
                          Definition

                          The units of time for the duration, in UCUM units Normal practice is to use the 'mo' code as a calendar month when calculating the next occurrence.

                          Shorts | min | h | d | wk | mo | a - unit of time (UCUM)
                          Control0..1
                          This element is affected by the following invariants: tim-1
                          BindingThe codes SHALL be taken from UnitsOfTime
                          (required to http://hl7.org/fhir/ValueSet/units-of-time|5.0.0)

                          A unit of time (units from UCUM).

                          Typecode
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          234. ActivityDefinition.dosage.timing.repeat.frequency
                          Definition

                          The number of times to repeat the action within the specified period. If frequencyMax is present, this element indicates the lower bound of the allowed range of the frequency.

                          ShortIndicates the minimal number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
                          Control0..1
                          TypepositiveInt
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Meaning if MissingIf no frequency is stated, the assumption is that the event occurs once per period, but systems SHOULD always be specific about this
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          236. ActivityDefinition.dosage.timing.repeat.frequencyMax
                          Definition

                          If present, indicates that the frequency is a range - so to repeat between [frequency] and [frequencyMax] times within the period or period range.

                          ShortIndicates the maximum number of repetitions that should occur within a period. I.e. Event occurs frequency times per period
                          Control0..1
                          TypepositiveInt
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          238. ActivityDefinition.dosage.timing.repeat.period
                          Definition

                          Indicates the duration of time over which repetitions are to occur; e.g. to express "3 times per day", 3 would be the frequency and "1 day" would be the period. If periodMax is present, this element indicates the lower bound of the allowed range of the period length.

                          ShortThe minimal duration to which the frequency applies. I.e. Event occurs frequency times per period
                          Control0..1
                          This element is affected by the following invariants: tim-6, tim-5, tim-2
                          Typedecimal
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          240. ActivityDefinition.dosage.timing.repeat.periodMax
                          Definition

                          If present, indicates that the period is a range from [period] to [periodMax], allowing expressing concepts such as "do this once every 3-5 days.

                          ShortThe maximum duration to which the frequency applies. I.e. Event occurs frequency times per period
                          Control0..1
                          This element is affected by the following invariants: tim-6
                          Typedecimal
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          242. ActivityDefinition.dosage.timing.repeat.periodUnit
                          Definition

                          The units of time for the period in UCUM units Normal practice is to use the 'mo' code as a calendar month when calculating the next occurrence.

                          Shorts | min | h | d | wk | mo | a - unit of time (UCUM)
                          Control0..1
                          This element is affected by the following invariants: tim-2
                          BindingThe codes SHALL be taken from UnitsOfTime
                          (required to http://hl7.org/fhir/ValueSet/units-of-time|5.0.0)

                          A unit of time (units from UCUM).

                          Typecode
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          244. ActivityDefinition.dosage.timing.repeat.dayOfWeek
                          Definition

                          If one or more days of week is provided, then the action happens only on the specified day(s).

                          Shortmon | tue | wed | thu | fri | sat | sun
                          Comments

                          If no days are specified, the action is assumed to happen every day as otherwise specified.

                          Control0..*
                          BindingThe codes SHALL be taken from DaysOfWeek
                          (required to http://hl7.org/fhir/ValueSet/days-of-week|5.0.0)
                          Typecode
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          246. ActivityDefinition.dosage.timing.repeat.timeOfDay
                          Definition

                          Specified time of day for action to take place.

                          ShortTime of day for action
                          Comments

                          When time of day is specified, it is inferred that the action happens every day (as filtered by dayofWeek) on the specified times. If there's a timeOfDay, there cannot be a when, or vice versa.

                          Control0..*
                          This element is affected by the following invariants: tim-10
                          Typetime
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          248. ActivityDefinition.dosage.timing.repeat.when
                          Definition

                          An approximate time period during the day, potentially linked to an event of daily living that indicates when the action should occur.

                          ShortCode for time period of occurrence
                          Comments

                          When more than one event is listed, the event is tied to the union of the specified events.

                          Control0..*
                          This element is affected by the following invariants: tim-9, tim-10
                          BindingThe codes SHALL be taken from EventTiming
                          (required to http://hl7.org/fhir/ValueSet/event-timing|5.0.0)

                          Real-world event relating to the schedule.

                          Typecode
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Requirements

                          Timings are frequently determined by occurrences such as waking, eating and sleep.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          250. ActivityDefinition.dosage.timing.repeat.offset
                          Definition

                          The number of minutes from the event. If the event code does not indicate whether the minutes is before or after the event, then the offset is assumed to be after the event.

                          ShortMinutes from event (before or after)
                          Control0..1
                          This element is affected by the following invariants: tim-9
                          TypeunsignedInt
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          252. ActivityDefinition.dosage.timing.code
                          Definition

                          A code for the timing schedule (or just text in code.text). Some codes such as BID are ubiquitous, but many institutions define their own additional codes. If a code is provided, the code is understood to be a complete statement of whatever is specified in the structured timing data, and either the code or the data may be used to interpret the Timing, with the exception that .repeat.bounds still applies over the code (and is not contained in the code).

                          ShortC | BID | TID | QID | AM | PM | QD | QOD | +
                          Comments

                          BID etc. are defined as 'at institutionally specified times'. For example, an institution may choose that BID is "always at 7am and 6pm". If it is inappropriate for this choice to be made, the code BID should not be used. Instead, a distinct organization-specific code should be used in place of the HL7-defined BID code and/or a structured representation should be used (in this case, specifying the two event times).

                          Control0..1
                          BindingThe codes SHOULD be taken from TimingAbbreviation
                          (preferred to http://hl7.org/fhir/ValueSet/timing-abbreviation)

                          Code for a known / defined timing pattern.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          254. ActivityDefinition.dosage.asNeeded
                          Definition

                          Indicates whether the Medication is only taken when needed within a specific dosing schedule (Boolean option).

                          ShortTake "as needed"
                          Comments

                          Can express "as needed" without a reason by setting the Boolean = True. In this case the CodeableConcept is not populated.

                          Control0..1
                          This element is affected by the following invariants: dos-1
                          Typeboolean
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          256. ActivityDefinition.dosage.asNeededFor
                          Definition

                          Indicates whether the Medication is only taken based on a precondition for taking the Medication (CodeableConcept).

                          ShortTake "as needed" (for x)
                          Comments

                          Can express "as needed" with a reason by including the CodeableConcept. In this case the Boolean is assumed to be False, then the dose is given according to the schedule and is not "prn" or "as needed".

                          Control0..*
                          This element is affected by the following invariants: dos-1
                          BindingFor example codes, see SNOMEDCTMedicationAsNeededReasonCodes
                          (example to http://hl7.org/fhir/ValueSet/medication-as-needed-reason)

                          A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          258. ActivityDefinition.dosage.site
                          Definition

                          Body site to administer to.

                          ShortBody site to administer to
                          Comments

                          If the use case requires attributes from the BodySite resource (e.g. to identify and track separately) then use the standard extension http://hl7.org/fhir/StructureDefinition/bodySite. May be a summary code, or a reference to a very precise definition of the location, or both.

                          Control0..1
                          BindingFor example codes, see SNOMEDCTAnatomicalStructureAdministrationSites
                          (example to http://hl7.org/fhir/ValueSet/approach-site-codes)

                          A coded concept describing the site location the medicine enters into or onto the body.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Summarytrue
                          Requirements

                          A coded specification of the anatomic site where the medication first enters the body.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          260. ActivityDefinition.dosage.route
                          Definition

                          How drug should enter body.

                          ShortHow drug should enter body
                          Control0..1
                          BindingFor example codes, see SNOMEDCTRouteCodes
                          (example to http://hl7.org/fhir/ValueSet/route-codes)

                          A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Summarytrue
                          Requirements

                          A code specifying the route or physiological path of administration of a therapeutic agent into or onto a patient's body.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          262. ActivityDefinition.dosage.method
                          Definition

                          Technique for administering medication.

                          ShortTechnique for administering medication
                          Comments

                          Terminologies used often pre-coordinate this term with the route and or form of administration.

                          Control0..1
                          BindingFor example codes, see SNOMEDCTAdministrationMethodCodes
                          (example to http://hl7.org/fhir/ValueSet/administration-method-codes)

                          A coded concept describing the technique by which the medicine is administered.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Summarytrue
                          Requirements

                          A coded value indicating the method by which the medication is introduced into or onto the body. Most commonly used for injections. For examples, Slow Push; Deep IV.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          264. ActivityDefinition.dosage.doseAndRate
                          Definition

                          Depending on the resource,this is the amount of medication administered, to be administered or typical amount to be administered.

                          ShortAmount of medication administered, to be administered or typical amount to be administered
                          Control0..*
                          TypeElement
                          Is Modifierfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          266. ActivityDefinition.dosage.doseAndRate.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          This element is affected by the following invariants: ele-1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          268. ActivityDefinition.dosage.doseAndRate.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          SlicingThis element introduces a set of slices on ActivityDefinition.dosage.doseAndRate.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                          • value @ url
                          • 270. ActivityDefinition.dosage.doseAndRate.type
                            Definition

                            The kind of dose or rate specified, for example, ordered or calculated.

                            ShortThe kind of dose or rate specified
                            Control0..1
                            BindingFor example codes, see DoseAndRateType
                            (example to http://terminology.hl7.org/ValueSet/dose-rate-type)

                            The kind of dose or rate specified.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Summarytrue
                            Requirements

                            If the type is not populated, assume to be "ordered".

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            272. ActivityDefinition.dosage.doseAndRate.dose[x]
                            Definition

                            Amount of medication per dose.

                            ShortAmount of medication per dose
                            Comments

                            Note that this specifies the quantity of the specified medication, not the quantity for each active ingredient(s). Each ingredient amount can be communicated in the Medication resource. For example, if one wants to communicate that a tablet was 375 mg, where the dose was one tablet, you can use the Medication resource to document that the tablet was comprised of 375 mg of drug XYZ. Alternatively if the dose was 375 mg, then you may only need to use the Medication resource to indicate this was a tablet. If the example were an IV such as dopamine and you wanted to communicate that 400mg of dopamine was mixed in 500 ml of some IV solution, then this would all be communicated in the Medication resource. If the administration is not intended to be instantaneous (rate is present or timing has a duration), this can be specified to convey the total amount to be administered over the period of time as indicated by the schedule e.g. 500 ml in dose, with timing used to convey that this should be done over 4 hours.

                            Control0..1
                            TypeChoice of: Range, Quantity(SimpleQuantity)
                            [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                            Is Modifierfalse
                            Summarytrue
                            Requirements

                            The amount of therapeutic or other substance given at one administration event.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            274. ActivityDefinition.dosage.doseAndRate.rate[x]
                            Definition

                            Amount of medication per unit of time.

                            ShortAmount of medication per unit of time
                            Comments

                            It is possible to supply both a rate and a doseQuantity to provide full details about how the medication is to be administered and supplied. If the rate is intended to change over time, depending on local rules/regulations, each change should be captured as a new version of the MedicationRequest with an updated rate, or captured with a new MedicationRequest with the new rate.

                            It is possible to specify a rate over time (for example, 100 ml/hour) using either the rateRatio and rateQuantity. The rateQuantity approach requires systems to have the capability to parse UCUM grammar where ml/hour is included rather than a specific ratio where the time is specified as the denominator. Where a rate such as 500ml over 2 hours is specified, the use of rateRatio may be more semantically correct than specifying using a rateQuantity of 250 mg/hour.

                            Control0..1
                            TypeChoice of: Ratio, Range, Quantity(SimpleQuantity)
                            [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                            Is Modifierfalse
                            Summarytrue
                            Requirements

                            Identifies the speed with which the medication was or will be introduced into the patient. Typically the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time e.g. 500 ml per 2 hours. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours. Sometimes, a rate can imply duration when expressed as total volume / duration (e.g. 500mL/2 hours implies a duration of 2 hours). However, when rate doesn't imply duration (e.g. 250mL/hour), then the timing.repeat.duration is needed to convey the infuse over time period.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            276. ActivityDefinition.dosage.maxDosePerPeriod
                            Definition

                            Upper limit on medication per unit of time.

                            ShortUpper limit on medication per unit of time
                            Comments

                            This is intended for use as an adjunct to the dosage when there is an upper cap. For example "2 tablets every 4 hours to a maximum of 8/day".

                            Control0..*
                            TypeRatio
                            Is Modifierfalse
                            Summarytrue
                            Requirements

                            The maximum total quantity of a therapeutic substance that may be administered to a subject over the period of time. For example, 1000mg in 24 hours.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            278. ActivityDefinition.dosage.maxDosePerAdministration
                            Definition

                            Upper limit on medication per administration.

                            ShortUpper limit on medication per administration
                            Comments

                            This is intended for use as an adjunct to the dosage when there is an upper cap. For example, a body surface area related dose with a maximum amount, such as 1.5 mg/m2 (maximum 2 mg) IV over 5 – 10 minutes would have doseQuantity of 1.5 mg/m2 and maxDosePerAdministration of 2 mg.

                            Control0..1
                            TypeQuantity(SimpleQuantity)
                            Is Modifierfalse
                            Summarytrue
                            Requirements

                            The maximum total quantity of a therapeutic substance that may be administered to a subject per administration.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            280. ActivityDefinition.dosage.maxDosePerLifetime
                            Definition

                            Upper limit on medication per lifetime of the patient.

                            ShortUpper limit on medication per lifetime of the patient
                            Control0..1
                            TypeQuantity(SimpleQuantity)
                            Is Modifierfalse
                            Summarytrue
                            Requirements

                            The maximum total quantity of a therapeutic substance that may be administered per lifetime of the subject.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            282. ActivityDefinition.bodySite
                            Definition

                            Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).

                            ShortWhat part of body to perform on
                            Comments

                            Only used if not implicit in the code found in ServiceRequest.type.

                            Control0..*
                            BindingFor example codes, see SNOMEDCTBodyStructures
                            (example to http://hl7.org/fhir/ValueSet/body-site)

                            A code that identifies the anatomical location.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supporttrue
                            Summaryfalse
                            Requirements

                            Knowing where the procedure is made is important for tracking if multiple sites are possible.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            284. ActivityDefinition.specimenRequirement
                            Definition

                            Defines specimen requirements for the action to be performed, such as required specimens for a lab test.

                            ShortWhat specimens are required to perform this action
                            Control0..*
                            TypeReference(SpecimenDefinition)
                            Is Modifierfalse
                            Summaryfalse
                            Requirements

                            Needed to represent lab order definitions.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            286. ActivityDefinition.observationRequirement
                            Definition

                            Defines observation requirements for the action to be performed, such as body weight or surface area.

                            ShortWhat observations are required to perform this action
                            Control0..*
                            TypeReference(ObservationDefinition)
                            Is Modifierfalse
                            Summaryfalse
                            Requirements

                            Needed to represent observation definitions.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            288. ActivityDefinition.observationResultRequirement
                            Definition

                            Defines the observations that are expected to be produced by the action.

                            ShortWhat observations must be produced by this action
                            Control0..*
                            TypeReference(ObservationDefinition)
                            Is Modifierfalse
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            290. ActivityDefinition.transform
                            Definition

                            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 input.

                            ShortTransform to apply the template
                            Comments

                            Note that if both a transform and dynamic values are specified, the dynamic values will be applied to the result of the transform.

                            Control0..1
                            Typecanonical(StructureMap)
                            Is Modifierfalse
                            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            292. ActivityDefinition.dynamicValue
                            Definition

                            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 request resource that would contain the result.

                            ShortDynamic aspects of the definition
                            Comments

                            Dynamic values are applied in the order in which they are defined in the ActivityDefinition. Note that if both a transform and dynamic values are specified, the dynamic values will be applied to the result of the transform.

                            Control0..*
                            TypeBackboneElement
                            Is Modifierfalse
                            Must Supporttrue
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            294. ActivityDefinition.dynamicValue.id
                            Definition

                            Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                            ShortUnique id for inter-element referencing
                            Control0..1
                            Typestring
                            Is Modifierfalse
                            XML FormatIn the XML format, this property is represented as an attribute.
                            Summaryfalse
                            296. ActivityDefinition.dynamicValue.extension
                            Definition

                            May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                            ShortAdditional content defined by implementations
                            Comments

                            There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                            Control0..*
                            TypeExtension
                            Is Modifierfalse
                            Summaryfalse
                            Alternate Namesextensions, user content
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            298. ActivityDefinition.dynamicValue.modifierExtension
                            Definition

                            May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                            Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                            ShortExtensions that cannot be ignored even if unrecognized
                            Comments

                            There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                            Control0..*
                            TypeExtension
                            Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                            Summarytrue
                            Requirements

                            Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                            Alternate Namesextensions, user content, modifiers
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            300. ActivityDefinition.dynamicValue.path
                            Definition

                            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 expression. The specified path SHALL be a FHIRPath resolveable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the Simple FHIRPath Profile for full details).

                            ShortThe path to the element to be set dynamically
                            Comments

                            The path attribute contains a Simple FHIRPath Subset that allows path traversal, but not calculation.

                            Control1..1
                            Typestring
                            Is Modifierfalse
                            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                            Must Supporttrue
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            302. ActivityDefinition.dynamicValue.expression
                            Definition

                            An expression specifying the value of the customized element.

                            ShortAn expression that provides the dynamic value for the customization
                            Comments

                            The expression may be inlined, or may be a reference to a named expression within a logic library referenced by the library element.

                            Control1..1
                            TypeExpression
                            Is Modifierfalse
                            Must Supporttrue
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))