0.1.0 - ci-build

oncologyfhirigkenya - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: Oncology Kenya Supply Request

Official URL: http://example.org/StructureDefinition/oncology-kenya-supplyrequest Version: 0.1.0
Draft as of 2025-06-24 Computable Name: OncologyKenyaSupplyRequest

A FHIR R4-based SupplyRequest profile for cancer-specific medical supplies in Kenya. Supports drug procurement, diagnostic supply needs, and inventory tracking aligned with Kenya’s National Cancer Control Strategy (2023–2027), Kenya Cancer Policy (2020–2030), and practical needs of facilities reporting to the KEMRI registry and SHA ecosystem.

Usages:

Formal Views of Profile Content

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

This structure is derived from SupplyRequest

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. SupplyRequest 0..* SupplyRequest Request for a medication, substance or device
... status S 1..1 code draft | active | suspended +
... item[x] S 1..1 CodeableConcept, Reference(Medication | Substance | Device) Medication, Substance, or Device requested to be supplied
... quantity S 1..1 Quantity The requested amount of the item indicated
... requester S 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Individual making the request
... supplier S 0..1 Reference(Organization | HealthcareService) Who is intended to fulfill the request
... reasonCode 0..1 CodeableConcept The reason why the supply item was requested

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. SupplyRequest 0..* SupplyRequest Request for a medication, substance or device
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code draft | active | suspended +
Binding: SupplyRequestStatus (required): Status of the supply request.
.... itemCodeableConcept CodeableConcept
.... itemReference Reference(Medication | Substance | Device)
... quantity SΣ 1..1 Quantity The requested amount of the item indicated
... authoredOn SΣ 0..1 dateTime When the request was made
... requester SΣ 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Individual making the request
... supplier SΣ 0..1 Reference(Organization | HealthcareService) Who is intended to fulfill the request
... reasonCode 0..1 CodeableConcept The reason why the supply item was requested
Binding: SupplyRequestReason (example): The reason why the supply item was requested.

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
SupplyRequest.statusrequiredSupplyRequestStatus
http://hl7.org/fhir/ValueSet/supplyrequest-status|4.0.1
From the FHIR Standard
SupplyRequest.item[x]exampleSNOMEDCTSupplyItem
http://hl7.org/fhir/ValueSet/supply-item
From the FHIR Standard
SupplyRequest.reasonCodeexampleSupplyRequestReason
http://hl7.org/fhir/ValueSet/supplyrequest-reason
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSupplyRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSupplyRequestIf 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-4errorSupplyRequestIf 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-5errorSupplyRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSupplyRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. SupplyRequest 0..* SupplyRequest Request for a medication, substance or device
... 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
... 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
... identifier Σ 0..* Identifier Business Identifier for SupplyRequest
... status ?!SΣ 1..1 code draft | active | suspended +
Binding: SupplyRequestStatus (required): Status of the supply request.
... category Σ 0..1 CodeableConcept The kind of supply (central, non-stock, etc.)
Binding: SupplyType (example): Category of supply request.
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
... item[x] SΣ 1..1 Medication, Substance, or Device requested to be supplied
Binding: SNOMEDCTSupplyItem (example): The item that was requested.
.... itemCodeableConcept CodeableConcept
.... itemReference Reference(Medication | Substance | Device)
... quantity SΣ 1..1 Quantity The requested amount of the item indicated
... parameter 0..* BackboneElement Ordered item details
.... 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
.... code 0..1 CodeableConcept Item detail
Binding Description: (example): A code that identifies the device detail.
.... value[x] 0..1 Value of detail
..... valueCodeableConcept CodeableConcept
..... valueQuantity Quantity
..... valueRange Range
..... valueBoolean boolean
... occurrence[x] Σ 0..1 When the request should be fulfilled
.... occurrenceDateTime dateTime
.... occurrencePeriod Period
.... occurrenceTiming Timing
... authoredOn SΣ 0..1 dateTime When the request was made
... requester SΣ 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Individual making the request
... supplier SΣ 0..1 Reference(Organization | HealthcareService) Who is intended to fulfill the request
... reasonCode 0..1 CodeableConcept The reason why the supply item was requested
Binding: SupplyRequestReason (example): The reason why the supply item was requested.
... reasonReference 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference) The reason why the supply item was requested
... deliverFrom 0..1 Reference(Organization | Location) The origin of the supply
... deliverTo 0..1 Reference(Organization | Location | Patient) The destination of the supply

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
SupplyRequest.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
SupplyRequest.statusrequiredSupplyRequestStatus
http://hl7.org/fhir/ValueSet/supplyrequest-status|4.0.1
From the FHIR Standard
SupplyRequest.categoryexampleSupplyType
http://hl7.org/fhir/ValueSet/supplyrequest-kind
From the FHIR Standard
SupplyRequest.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
From the FHIR Standard
SupplyRequest.item[x]exampleSNOMEDCTSupplyItem
http://hl7.org/fhir/ValueSet/supply-item
From the FHIR Standard
SupplyRequest.parameter.codeexample
SupplyRequest.reasonCodeexampleSupplyRequestReason
http://hl7.org/fhir/ValueSet/supplyrequest-reason
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSupplyRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSupplyRequestIf 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-4errorSupplyRequestIf 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-5errorSupplyRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSupplyRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from SupplyRequest

Summary

Mandatory: 1 element
Must-Support: 6 elements

Differential View

This structure is derived from SupplyRequest

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. SupplyRequest 0..* SupplyRequest Request for a medication, substance or device
... status S 1..1 code draft | active | suspended +
... item[x] S 1..1 CodeableConcept, Reference(Medication | Substance | Device) Medication, Substance, or Device requested to be supplied
... quantity S 1..1 Quantity The requested amount of the item indicated
... requester S 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Individual making the request
... supplier S 0..1 Reference(Organization | HealthcareService) Who is intended to fulfill the request
... reasonCode 0..1 CodeableConcept The reason why the supply item was requested

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. SupplyRequest 0..* SupplyRequest Request for a medication, substance or device
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code draft | active | suspended +
Binding: SupplyRequestStatus (required): Status of the supply request.
.... itemCodeableConcept CodeableConcept
.... itemReference Reference(Medication | Substance | Device)
... quantity SΣ 1..1 Quantity The requested amount of the item indicated
... authoredOn SΣ 0..1 dateTime When the request was made
... requester SΣ 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Individual making the request
... supplier SΣ 0..1 Reference(Organization | HealthcareService) Who is intended to fulfill the request
... reasonCode 0..1 CodeableConcept The reason why the supply item was requested
Binding: SupplyRequestReason (example): The reason why the supply item was requested.

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
SupplyRequest.statusrequiredSupplyRequestStatus
http://hl7.org/fhir/ValueSet/supplyrequest-status|4.0.1
From the FHIR Standard
SupplyRequest.item[x]exampleSNOMEDCTSupplyItem
http://hl7.org/fhir/ValueSet/supply-item
From the FHIR Standard
SupplyRequest.reasonCodeexampleSupplyRequestReason
http://hl7.org/fhir/ValueSet/supplyrequest-reason
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSupplyRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSupplyRequestIf 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-4errorSupplyRequestIf 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-5errorSupplyRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSupplyRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. SupplyRequest 0..* SupplyRequest Request for a medication, substance or device
... 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
... 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
... identifier Σ 0..* Identifier Business Identifier for SupplyRequest
... status ?!SΣ 1..1 code draft | active | suspended +
Binding: SupplyRequestStatus (required): Status of the supply request.
... category Σ 0..1 CodeableConcept The kind of supply (central, non-stock, etc.)
Binding: SupplyType (example): Category of supply request.
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
... item[x] SΣ 1..1 Medication, Substance, or Device requested to be supplied
Binding: SNOMEDCTSupplyItem (example): The item that was requested.
.... itemCodeableConcept CodeableConcept
.... itemReference Reference(Medication | Substance | Device)
... quantity SΣ 1..1 Quantity The requested amount of the item indicated
... parameter 0..* BackboneElement Ordered item details
.... 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
.... code 0..1 CodeableConcept Item detail
Binding Description: (example): A code that identifies the device detail.
.... value[x] 0..1 Value of detail
..... valueCodeableConcept CodeableConcept
..... valueQuantity Quantity
..... valueRange Range
..... valueBoolean boolean
... occurrence[x] Σ 0..1 When the request should be fulfilled
.... occurrenceDateTime dateTime
.... occurrencePeriod Period
.... occurrenceTiming Timing
... authoredOn SΣ 0..1 dateTime When the request was made
... requester SΣ 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Individual making the request
... supplier SΣ 0..1 Reference(Organization | HealthcareService) Who is intended to fulfill the request
... reasonCode 0..1 CodeableConcept The reason why the supply item was requested
Binding: SupplyRequestReason (example): The reason why the supply item was requested.
... reasonReference 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference) The reason why the supply item was requested
... deliverFrom 0..1 Reference(Organization | Location) The origin of the supply
... deliverTo 0..1 Reference(Organization | Location | Patient) The destination of the supply

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
SupplyRequest.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
SupplyRequest.statusrequiredSupplyRequestStatus
http://hl7.org/fhir/ValueSet/supplyrequest-status|4.0.1
From the FHIR Standard
SupplyRequest.categoryexampleSupplyType
http://hl7.org/fhir/ValueSet/supplyrequest-kind
From the FHIR Standard
SupplyRequest.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
From the FHIR Standard
SupplyRequest.item[x]exampleSNOMEDCTSupplyItem
http://hl7.org/fhir/ValueSet/supply-item
From the FHIR Standard
SupplyRequest.parameter.codeexample
SupplyRequest.reasonCodeexampleSupplyRequestReason
http://hl7.org/fhir/ValueSet/supplyrequest-reason
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSupplyRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSupplyRequestIf 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-4errorSupplyRequestIf 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-5errorSupplyRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSupplyRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from SupplyRequest

Summary

Mandatory: 1 element
Must-Support: 6 elements

 

Other representations of profile: CSV, Excel, Schematron