SGHI FHIR Profile Implementation Guide
0.1.0 - ci-build

SGHI FHIR Profile Implementation Guide, published by Kathurima Kimathi. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/savannahghi/sil_fhir_profile_ig/ and changes regularly. See the Directory of published versions

## Resource Profile: SGHI Activity Defintion Profile

Official URL: https://fhir.slade360.co.ke/fhir/StructureDefinition/activitydefinition | Version: 0.1.0
Draft as of 2026-04-27 | Computable Name: SGHIActivityDefinition

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

Usages:

- Examples for this Profile: Example ActivityDefition Name

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ActivityDefinition | C | 0..* | ActivityDefinition | The definition of a specific activity to be taken, independent of any particular patient or context Interfaces Implemented: MetadataResource Constraints: cnl-0
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained |  | 0..* | Resource | Contained, inline Resources
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 1..* | Identifier | Additional identifier for the activity definition
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required)
type | Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required)
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ C | 1..1 | string | The value that is unique Example General: 123456
assigner | Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text)
name | Σ C | 1..1 | string | Name for this activity definition (computer friendly)
title | Σ | 1..1 | string | Name for this activity definition (human friendly)
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
doNotPerform | ?!Σ | 0..1 | boolean | True if the activity should not be performed
dosage |  | 0..* | SGHIDosage | Detailed dosage instructions
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ActivityDefinition.identifier.​use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std.
ActivityDefinition.identifier.​type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG
ActivityDefinition.status | Base | required | PublicationStatus | 📍5.0.0 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cnl-0 | warning | ActivityDefinition | 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}$')`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from ActivityDefinition

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ActivityDefinition |  | 0..* | ActivityDefinition | The definition of a specific activity to be taken, independent of any particular patient or context Interfaces Implemented: MetadataResource
identifier |  | 1..* | Identifier | Additional identifier for the activity definition
use |  | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required)
type |  | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required)
system |  | 1..1 | uri | The namespace for the identifier value
value |  | 1..1 | string | The value that is unique
assigner |  | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text)
name |  | 1..1 | string | Name for this activity definition (computer friendly)
title |  | 1..1 | string | Name for this activity definition (human friendly)
dosage |  | 0..* | SGHIDosage | Detailed dosage instructions
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
ActivityDefinition.identifier.​use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std.
ActivityDefinition.identifier.​type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ActivityDefinition | C | 0..* | ActivityDefinition | The definition of a specific activity to be taken, independent of any particular patient or context Interfaces Implemented: MetadataResource Constraints: cnl-0
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
Additional Bindings | Purpose
CommonLanguages | Starter
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
url | Σ C | 0..1 | uri | Canonical identifier for this activity definition, represented as a URI (globally unique) Constraints: cnl-1
identifier | Σ | 1..* | Identifier | Additional identifier for the activity definition
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required)
type | Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required)
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ C | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text)
version | Σ | 0..1 | string | Business version of the activity definition
versionAlgorithm[x] | Σ | 0..1 |  | How to compare versions Binding: VersionAlgorithm (extensible)
versionAlgorithmString |  |  | string |
versionAlgorithmCoding |  |  | Coding |
name | Σ C | 1..1 | string | Name for this activity definition (computer friendly)
title | Σ | 1..1 | string | Name for this activity definition (human friendly)
subtitle |  | 0..1 | string | Subordinate title of the activity definition
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage
subject[x] |  | 0..1 |  | Type of individual the activity definition is intended for Binding: ParticipantResourceTypes (extensible): The possible types of subjects for an activity (E.g. Patient, Practitioner, Organization, Location, etc.).
subjectCodeableConcept |  |  | CodeableConcept |
subjectReference |  |  | Reference(Group | MedicinalProductDefinition | SubstanceDefinition | AdministrableProductDefinition | ManufacturedItemDefinition | PackagedProductDefinition) |
subjectCanonical |  |  | canonical(EvidenceVariable) |
date | Σ | 0..1 | dateTime | Date last changed
publisher | Σ | 0..1 | string | Name of the publisher/steward (organization or individual)
contact | Σ | 0..* | ContactDetail | Contact details for the publisher
description | Σ | 0..1 | markdown | Natural language description of the activity definition
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for activity definition (if applicable) Binding: JurisdictionValueSet (extensible): Countries and regions within which this artifact is targeted for use.
purpose |  | 0..1 | markdown | Why this activity definition is defined
usage |  | 0..1 | markdown | Describes the clinical usage of the activity definition
copyright |  | 0..1 | markdown | Use and/or publishing restrictions
copyrightLabel |  | 0..1 | string | Copyright holder and year(s)
approvalDate |  | 0..1 | date | When the activity definition was approved by publisher
lastReviewDate |  | 0..1 | date | When the activity definition was last reviewed by the publisher
effectivePeriod | Σ | 0..1 | Period | When the activity definition is expected to be used
topic |  | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment, etc Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.
author |  | 0..* | ContactDetail | Who authored the content
editor |  | 0..* | ContactDetail | Who edited the content
reviewer |  | 0..* | ContactDetail | Who reviewed the content
endorser |  | 0..* | ContactDetail | Who endorsed the content
relatedArtifact |  | 0..* | RelatedArtifact | Additional documentation, citations, etc
library |  | 0..* | canonical(Library) | Logic used by the activity definition
kind | Σ | 0..1 | code | Kind of resource Binding: RequestResourceTypes (required): The kind of activity the definition is describing.
profile |  | 0..1 | canonical(StructureDefinition) | What profile the resource needs to conform to
code | Σ | 0..1 | CodeableConcept | Detail type of activity Binding: ProcedureCodesSNOMEDCT (example): Detailed type of the activity; e.g. CBC.
intent |  | 0..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): Codes indicating the degree of authority/intentionality associated with a request.
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
doNotPerform | ?!Σ | 0..1 | boolean | True if the activity should not be performed
timing[x] |  | 0..1 |  | When activity is to occur
timingTiming |  |  | Timing |
timingAge |  |  | Age |
timingRange |  |  | Range |
timingDuration |  |  | Duration |
asNeeded[x] | Σ | 0..1 |  | Preconditions for service Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc.
asNeededBoolean |  |  | boolean |
asNeededCodeableConcept |  |  | CodeableConcept |
location |  | 0..1 | CodeableReference(Location) | Where it should happen
participant |  | 0..* | BackboneElement | Who should participate in the action
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 0..1 | code | careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson Binding: ActionParticipantType (required): The type of participant in the activity.
typeCanonical |  | 0..1 | canonical(CapabilityStatement) | Who or what can participate
typeReference |  | 0..1 | Reference(CareTeam | Device | DeviceDefinition | Endpoint | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | Who or what can participate
role |  | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent, etc Binding: Action Participant Role (example): Defines roles played by participants for the action.
function |  | 0..1 | CodeableConcept | E.g. Author, Reviewer, Witness, etc Binding: ActionParticipantFunction (example)
product[x] |  | 0..1 |  | What's administered/supplied Binding: SNOMEDCTMedicationCodes (example): Code describing the type of substance or medication.
productReference |  |  | Reference(Medication | Ingredient | Substance | SubstanceDefinition) |
productCodeableConcept |  |  | CodeableConcept |
quantity |  | 0..1 | SimpleQuantity(5.0.0) | How much is administered/consumed/supplied
dosage |  | 0..* | SGHIDosage | Detailed dosage instructions
bodySite |  | 0..* | CodeableConcept | What part of body to perform on Binding: SNOMEDCTBodyStructures (example): A code that identifies the anatomical location.
specimenRequirement |  | 0..* | canonical(SpecimenDefinition) | What specimens are required to perform this action
observationRequirement |  | 0..* | canonical(ObservationDefinition) | What observations are required to perform this action
observationResultRequirement |  | 0..* | canonical(ObservationDefinition) | What observations must be produced by this action
transform |  | 0..1 | canonical(StructureMap) | Transform to apply the template
dynamicValue |  | 0..* | BackboneElement | Dynamic aspects of the definition
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
path |  | 1..1 | string | The path to the element to be set dynamically
expression |  | 1..1 | Expression | An expression that provides the dynamic value for the customization
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ActivityDefinition.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
ActivityDefinition.identifier.​use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std.
ActivityDefinition.identifier.​type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG
ActivityDefinition.versionAlgorithm[x] | Base | extensible | Version Algorithm | 📍5.0.0 | FHIR Std.
ActivityDefinition.status | Base | required | PublicationStatus | 📍5.0.0 | FHIR Std.
ActivityDefinition.subject[x] | Base | extensible | Participant Resource Types | 📍5.0.0 | FHIR Std.
ActivityDefinition.jurisdiction | Base | extensible | Jurisdiction ValueSet | 📍5.0.0 | FHIR Std.
ActivityDefinition.topic | Base | example | Definition Topic | 📍5.0.0 | FHIR Std.
ActivityDefinition.kind | Base | required | Request Resource Types | 📍5.0.0 | FHIR Std.
ActivityDefinition.code | Base | example | Procedure Codes (SNOMED CT) | 📍5.0.0 | FHIR Std.
ActivityDefinition.intent | Base | required | RequestIntent | 📍5.0.0 | FHIR Std.
ActivityDefinition.priority | Base | required | RequestPriority | 📍5.0.0 | FHIR Std.
ActivityDefinition.asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍5.0.0 | FHIR Std.
ActivityDefinition.participant.​type | Base | required | Action Participant Type | 📍5.0.0 | FHIR Std.
ActivityDefinition.participant.​role | Base | example | Action Participant Role | 📦2.0.0 | THO v7.1
ActivityDefinition.participant.​function | Base | example | Action Participant Function | 📍5.0.0 | FHIR Std.
ActivityDefinition.product[x] | Base | example | SNOMED CT Medication Codes | 📍5.0.0 | FHIR Std.
ActivityDefinition.bodySite | Base | example | SNOMED CT Body Structures | 📍5.0.0 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cnl-0 | warning | ActivityDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation | `name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$')`
cnl-1 | warning | ActivityDefinition.url | URL should not contain | or # - these characters make processing canonical references problematic | `exists() implies matches('^[^|# ]+$')`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from ActivityDefinition

Summary

Mandatory: 6 elements

Structures

This structure refers to these other structures:

- SGHI CodeableConcept (https://fhir.slade360.co.ke/fhir/StructureDefinition/codeableconcept)
- SGHI Reference (https://fhir.slade360.co.ke/fhir/StructureDefinition/reference)
- SGHI Organization (https://fhir.slade360.co.ke/fhir/StructureDefinition/organization)
- SGHI Dosage (https://fhir.slade360.co.ke/fhir/StructureDefinition/dosage)

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ActivityDefinition | C | 0..* | ActivityDefinition | The definition of a specific activity to be taken, independent of any particular patient or context Interfaces Implemented: MetadataResource Constraints: cnl-0
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained |  | 0..* | Resource | Contained, inline Resources
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 1..* | Identifier | Additional identifier for the activity definition
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required)
type | Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required)
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ C | 1..1 | string | The value that is unique Example General: 123456
assigner | Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text)
name | Σ C | 1..1 | string | Name for this activity definition (computer friendly)
title | Σ | 1..1 | string | Name for this activity definition (human friendly)
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
doNotPerform | ?!Σ | 0..1 | boolean | True if the activity should not be performed
dosage |  | 0..* | SGHIDosage | Detailed dosage instructions
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ActivityDefinition.identifier.​use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std.
ActivityDefinition.identifier.​type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG
ActivityDefinition.status | Base | required | PublicationStatus | 📍5.0.0 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cnl-0 | warning | ActivityDefinition | 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}$')`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Differential View

This structure is derived from ActivityDefinition

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ActivityDefinition |  | 0..* | ActivityDefinition | The definition of a specific activity to be taken, independent of any particular patient or context Interfaces Implemented: MetadataResource
identifier |  | 1..* | Identifier | Additional identifier for the activity definition
use |  | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required)
type |  | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required)
system |  | 1..1 | uri | The namespace for the identifier value
value |  | 1..1 | string | The value that is unique
assigner |  | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text)
name |  | 1..1 | string | Name for this activity definition (computer friendly)
title |  | 1..1 | string | Name for this activity definition (human friendly)
dosage |  | 0..* | SGHIDosage | Detailed dosage instructions
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
ActivityDefinition.identifier.​use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std.
ActivityDefinition.identifier.​type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ActivityDefinition | C | 0..* | ActivityDefinition | The definition of a specific activity to be taken, independent of any particular patient or context Interfaces Implemented: MetadataResource Constraints: cnl-0
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
Additional Bindings | Purpose
CommonLanguages | Starter
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
url | Σ C | 0..1 | uri | Canonical identifier for this activity definition, represented as a URI (globally unique) Constraints: cnl-1
identifier | Σ | 1..* | Identifier | Additional identifier for the activity definition
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required)
type | Σ | 0..1 | SGHICodeableConcept | Description of identifier Binding: SGHI Default Identifier Types (required)
system | Σ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient
value | Σ C | 1..1 | string | The value that is unique Example General: 123456
period | Σ | 0..1 | Period | Time period when id is/was valid for use
assigner | Σ | 1..1 | SGHIReference(SGHI Organization) | Organization that issued id (may be just text)
version | Σ | 0..1 | string | Business version of the activity definition
versionAlgorithm[x] | Σ | 0..1 |  | How to compare versions Binding: VersionAlgorithm (extensible)
versionAlgorithmString |  |  | string |
versionAlgorithmCoding |  |  | Coding |
name | Σ C | 1..1 | string | Name for this activity definition (computer friendly)
title | Σ | 1..1 | string | Name for this activity definition (human friendly)
subtitle |  | 0..1 | string | Subordinate title of the activity definition
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact.
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage
subject[x] |  | 0..1 |  | Type of individual the activity definition is intended for Binding: ParticipantResourceTypes (extensible): The possible types of subjects for an activity (E.g. Patient, Practitioner, Organization, Location, etc.).
subjectCodeableConcept |  |  | CodeableConcept |
subjectReference |  |  | Reference(Group | MedicinalProductDefinition | SubstanceDefinition | AdministrableProductDefinition | ManufacturedItemDefinition | PackagedProductDefinition) |
subjectCanonical |  |  | canonical(EvidenceVariable) |
date | Σ | 0..1 | dateTime | Date last changed
publisher | Σ | 0..1 | string | Name of the publisher/steward (organization or individual)
contact | Σ | 0..* | ContactDetail | Contact details for the publisher
description | Σ | 0..1 | markdown | Natural language description of the activity definition
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for activity definition (if applicable) Binding: JurisdictionValueSet (extensible): Countries and regions within which this artifact is targeted for use.
purpose |  | 0..1 | markdown | Why this activity definition is defined
usage |  | 0..1 | markdown | Describes the clinical usage of the activity definition
copyright |  | 0..1 | markdown | Use and/or publishing restrictions
copyrightLabel |  | 0..1 | string | Copyright holder and year(s)
approvalDate |  | 0..1 | date | When the activity definition was approved by publisher
lastReviewDate |  | 0..1 | date | When the activity definition was last reviewed by the publisher
effectivePeriod | Σ | 0..1 | Period | When the activity definition is expected to be used
topic |  | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment, etc Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.
author |  | 0..* | ContactDetail | Who authored the content
editor |  | 0..* | ContactDetail | Who edited the content
reviewer |  | 0..* | ContactDetail | Who reviewed the content
endorser |  | 0..* | ContactDetail | Who endorsed the content
relatedArtifact |  | 0..* | RelatedArtifact | Additional documentation, citations, etc
library |  | 0..* | canonical(Library) | Logic used by the activity definition
kind | Σ | 0..1 | code | Kind of resource Binding: RequestResourceTypes (required): The kind of activity the definition is describing.
profile |  | 0..1 | canonical(StructureDefinition) | What profile the resource needs to conform to
code | Σ | 0..1 | CodeableConcept | Detail type of activity Binding: ProcedureCodesSNOMEDCT (example): Detailed type of the activity; e.g. CBC.
intent |  | 0..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): Codes indicating the degree of authority/intentionality associated with a request.
priority |  | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
doNotPerform | ?!Σ | 0..1 | boolean | True if the activity should not be performed
timing[x] |  | 0..1 |  | When activity is to occur
timingTiming |  |  | Timing |
timingAge |  |  | Age |
timingRange |  |  | Range |
timingDuration |  |  | Duration |
asNeeded[x] | Σ | 0..1 |  | Preconditions for service Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc.
asNeededBoolean |  |  | boolean |
asNeededCodeableConcept |  |  | CodeableConcept |
location |  | 0..1 | CodeableReference(Location) | Where it should happen
participant |  | 0..* | BackboneElement | Who should participate in the action
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
type |  | 0..1 | code | careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson Binding: ActionParticipantType (required): The type of participant in the activity.
typeCanonical |  | 0..1 | canonical(CapabilityStatement) | Who or what can participate
typeReference |  | 0..1 | Reference(CareTeam | Device | DeviceDefinition | Endpoint | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | Who or what can participate
role |  | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent, etc Binding: Action Participant Role (example): Defines roles played by participants for the action.
function |  | 0..1 | CodeableConcept | E.g. Author, Reviewer, Witness, etc Binding: ActionParticipantFunction (example)
product[x] |  | 0..1 |  | What's administered/supplied Binding: SNOMEDCTMedicationCodes (example): Code describing the type of substance or medication.
productReference |  |  | Reference(Medication | Ingredient | Substance | SubstanceDefinition) |
productCodeableConcept |  |  | CodeableConcept |
quantity |  | 0..1 | SimpleQuantity(5.0.0) | How much is administered/consumed/supplied
dosage |  | 0..* | SGHIDosage | Detailed dosage instructions
bodySite |  | 0..* | CodeableConcept | What part of body to perform on Binding: SNOMEDCTBodyStructures (example): A code that identifies the anatomical location.
specimenRequirement |  | 0..* | canonical(SpecimenDefinition) | What specimens are required to perform this action
observationRequirement |  | 0..* | canonical(ObservationDefinition) | What observations are required to perform this action
observationResultRequirement |  | 0..* | canonical(ObservationDefinition) | What observations must be produced by this action
transform |  | 0..1 | canonical(StructureMap) | Transform to apply the template
dynamicValue |  | 0..* | BackboneElement | Dynamic aspects of the definition
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
path |  | 1..1 | string | The path to the element to be set dynamically
expression |  | 1..1 | Expression | An expression that provides the dynamic value for the customization
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ActivityDefinition.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
ActivityDefinition.identifier.​use | Base | required | IdentifierUse | 📦5.0.0 | FHIR Std.
ActivityDefinition.identifier.​type | Base | required | SGHI Default Identifier Types | 📦0.1.0 | This IG
ActivityDefinition.versionAlgorithm[x] | Base | extensible | Version Algorithm | 📍5.0.0 | FHIR Std.
ActivityDefinition.status | Base | required | PublicationStatus | 📍5.0.0 | FHIR Std.
ActivityDefinition.subject[x] | Base | extensible | Participant Resource Types | 📍5.0.0 | FHIR Std.
ActivityDefinition.jurisdiction | Base | extensible | Jurisdiction ValueSet | 📍5.0.0 | FHIR Std.
ActivityDefinition.topic | Base | example | Definition Topic | 📍5.0.0 | FHIR Std.
ActivityDefinition.kind | Base | required | Request Resource Types | 📍5.0.0 | FHIR Std.
ActivityDefinition.code | Base | example | Procedure Codes (SNOMED CT) | 📍5.0.0 | FHIR Std.
ActivityDefinition.intent | Base | required | RequestIntent | 📍5.0.0 | FHIR Std.
ActivityDefinition.priority | Base | required | RequestPriority | 📍5.0.0 | FHIR Std.
ActivityDefinition.asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍5.0.0 | FHIR Std.
ActivityDefinition.participant.​type | Base | required | Action Participant Type | 📍5.0.0 | FHIR Std.
ActivityDefinition.participant.​role | Base | example | Action Participant Role | 📦2.0.0 | THO v7.1
ActivityDefinition.participant.​function | Base | example | Action Participant Function | 📍5.0.0 | FHIR Std.
ActivityDefinition.product[x] | Base | example | SNOMED CT Medication Codes | 📍5.0.0 | FHIR Std.
ActivityDefinition.bodySite | Base | example | SNOMED CT Body Structures | 📍5.0.0 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cnl-0 | warning | ActivityDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation | `name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$')`
cnl-1 | warning | ActivityDefinition.url | URL should not contain | or # - these characters make processing canonical references problematic | `exists() implies matches('^[^|# ]+$')`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from ActivityDefinition

Summary

Mandatory: 6 elements

Structures

This structure refers to these other structures:

- SGHI CodeableConcept (https://fhir.slade360.co.ke/fhir/StructureDefinition/codeableconcept)
- SGHI Reference (https://fhir.slade360.co.ke/fhir/StructureDefinition/reference)
- SGHI Organization (https://fhir.slade360.co.ke/fhir/StructureDefinition/organization)
- SGHI Dosage (https://fhir.slade360.co.ke/fhir/StructureDefinition/dosage)

Other representations of profile: CSV, Excel, Schematron