Release 4B Ballot #1

This page is part of the FHIR Specification v4.1.0: R4B Ballot. About the R4B version of FHIR. The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

12.22 Resource SupplyDelivery - Content

Orders and Observations Work GroupMaturity Level: 1 Trial UseSecurity Category: Patient Compartments: Patient, Practitioner

Record of delivery of what is supplied.

This resource is an event resource from a FHIR workflow perspective - see Workflow. It is the intent of the Orders and Observation Workgroup to align this resource with the workflow pattern for event resources.

The scope of the supply resource is for supplies used in the healthcare process. This includes supplies specifically used in the treatment of patients as well as supply movement within an institution (transport a set of supplies from materials management to a service unit (nurse station). This resource does not include the provisioning of transportation services.

This resource overlaps with others such as Device and Medication. The Supply resource may be used to describe medications and devices when handling them generically (as any other supply). For example, when processing bulk orders, etc. However, when the medication, device or other aspects of the resource are important, (e.g. in a MedicationRequest or when identifying a device as a performer), the more detailed resource must be used.

This resource is referenced by ChargeItem and itself.

This resource implements the Event pattern.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. SupplyDelivery TUDomainResourceDelivery of bulk Supplies
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..*IdentifierExternal identifier
... basedOn Σ0..*Reference(SupplyRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(SupplyDelivery | Contract)Part of referenced event
... patient 0..1Reference(Patient)Patient for whom the item is supplied
... type 0..1CodeableConceptCategory of dispense event
Supply Item Type (Required)
... suppliedItem 0..1BackboneElementThe item that is delivered or supplied
.... quantity 0..1SimpleQuantityAmount dispensed
.... item[x] 0..1Medication, Substance, or Device supplied
SNOMED CT Supply Item (Example)
..... itemCodeableConceptCodeableConcept
..... itemReferenceReference(Medication | Substance | Device)
... occurrence[x] Σ0..1When event occurred
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... supplier 0..1Reference(Practitioner | PractitionerRole | Organization)Dispenser
... destination 0..1Reference(Location)Where the Supply was sent
... receiver 0..*Reference(Practitioner | PractitionerRole)Who collected the Supply

doco Documentation for this format

UML Diagram (Legend)

SupplyDelivery (DomainResource)Identifier for the supply delivery event that is used to identify it across multiple disparate systemsidentifier : Identifier [0..*]A plan, proposal or order that is fulfilled in whole or in part by this eventbasedOn : Reference [0..*] « SupplyRequest »A larger event of which this particular event is a component or steppartOf : Reference [0..*] « SupplyDelivery|Contract »A code specifying the state of the dispense event (this element modifies the meaning of other elements)status : code [0..1] « Status of the supply delivery. (Strength=Required)SupplyDeliveryStatus! »A link to a resource representing the person whom the delivered item is forpatient : Reference [0..1] « Patient »Indicates the type of dispensing event that is performed. Examples include: Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etctype : CodeableConcept [0..1] « The type of supply dispense. (Strength=Required)SupplyItemType! »The date or time(s) the activity occurredoccurrence[x] : Element [0..1] « dateTime|Period|Timing »The individual responsible for dispensing the medication, supplier or devicesupplier : Reference [0..1] « Practitioner|PractitionerRole| Organization »Identification of the facility/location where the Supply was shipped to, as part of the dispense eventdestination : Reference [0..1] « Location »Identifies the person who picked up the Supplyreceiver : Reference [0..*] « Practitioner|PractitionerRole »SuppliedItemThe amount of supply that has been dispensed. Includes unit of measurequantity : Quantity(SimpleQuantity) [0..1]Identifies the medication, substance or device being dispensed. This is either a link to a resource representing the details of the item or a code that identifies the item from a known listitem[x] : Element [0..1] « CodeableConcept|Reference(Medication| Substance|Device); The item that was delivered. (Strength=Example)SNOMEDCTSupplyItem?? »The item that is being delivered or has been suppliedsuppliedItem[0..1]

XML Template

Turtle Template

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


[ a fhir:SupplyDelivery;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:SupplyDelivery.identifier [ Identifier ], ... ; # 0..* External identifier
  fhir:SupplyDelivery.basedOn [ Reference(SupplyRequest) ], ... ; # 0..* Fulfills plan, proposal or order
  fhir:SupplyDelivery.partOf [ Reference(Contract|SupplyDelivery) ], ... ; # 0..* Part of referenced event
  fhir:SupplyDelivery.status [ code ]; # 0..1 in-progress | completed | abandoned | entered-in-error
  fhir:SupplyDelivery.patient [ Reference(Patient) ]; # 0..1 Patient for whom the item is supplied
  fhir:SupplyDelivery.type [ CodeableConcept ]; # 0..1 Category of dispense event
  fhir:SupplyDelivery.suppliedItem [ # 0..1 The item that is delivered or supplied
    fhir:SupplyDelivery.suppliedItem.quantity [ Quantity(SimpleQuantity) ]; # 0..1 Amount dispensed
    # SupplyDelivery.suppliedItem.item[x] : 0..1 Medication, Substance, or Device supplied. One of these 2
      fhir:SupplyDelivery.suppliedItem.itemCodeableConcept [ CodeableConcept ]
      fhir:SupplyDelivery.suppliedItem.itemReference [ Reference(Device|Medication|Substance) ]
  ];
  # SupplyDelivery.occurrence[x] : 0..1 When event occurred. One of these 3
    fhir:SupplyDelivery.occurrenceDateTime [ dateTime ]
    fhir:SupplyDelivery.occurrencePeriod [ Period ]
    fhir:SupplyDelivery.occurrenceTiming [ Timing ]
  fhir:SupplyDelivery.supplier [ Reference(Organization|Practitioner|PractitionerRole) ]; # 0..1 Dispenser
  fhir:SupplyDelivery.destination [ Reference(Location) ]; # 0..1 Where the Supply was sent
  fhir:SupplyDelivery.receiver [ Reference(Practitioner|PractitionerRole) ], ... ; # 0..* Who collected the Supply
]

Changes since R3

SupplyDelivery
SupplyDelivery.status
  • Change value set from http://hl7.org/fhir/ValueSet/supplydelivery-status|4.0.0 to http://hl7.org/fhir/ValueSet/supplydelivery-status|4.1.0
SupplyDelivery.type
  • Change value set from http://hl7.org/fhir/ValueSet/supplydelivery-type|4.0.0 to http://hl7.org/fhir/ValueSet/supplydelivery-type|4.1.0

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. SupplyDelivery TUDomainResourceDelivery of bulk Supplies
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..*IdentifierExternal identifier
... basedOn Σ0..*Reference(SupplyRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(SupplyDelivery | Contract)Part of referenced event
... patient 0..1Reference(Patient)Patient for whom the item is supplied
... type 0..1CodeableConceptCategory of dispense event
Supply Item Type (Required)
... suppliedItem 0..1BackboneElementThe item that is delivered or supplied
.... quantity 0..1SimpleQuantityAmount dispensed
.... item[x] 0..1Medication, Substance, or Device supplied
SNOMED CT Supply Item (Example)
..... itemCodeableConceptCodeableConcept
..... itemReferenceReference(Medication | Substance | Device)
... occurrence[x] Σ0..1When event occurred
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... supplier 0..1Reference(Practitioner | PractitionerRole | Organization)Dispenser
... destination 0..1Reference(Location)Where the Supply was sent
... receiver 0..*Reference(Practitioner | PractitionerRole)Who collected the Supply

doco Documentation for this format

UML Diagram (Legend)

SupplyDelivery (DomainResource)Identifier for the supply delivery event that is used to identify it across multiple disparate systemsidentifier : Identifier [0..*]A plan, proposal or order that is fulfilled in whole or in part by this eventbasedOn : Reference [0..*] « SupplyRequest »A larger event of which this particular event is a component or steppartOf : Reference [0..*] « SupplyDelivery|Contract »A code specifying the state of the dispense event (this element modifies the meaning of other elements)status : code [0..1] « Status of the supply delivery. (Strength=Required)SupplyDeliveryStatus! »A link to a resource representing the person whom the delivered item is forpatient : Reference [0..1] « Patient »Indicates the type of dispensing event that is performed. Examples include: Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etctype : CodeableConcept [0..1] « The type of supply dispense. (Strength=Required)SupplyItemType! »The date or time(s) the activity occurredoccurrence[x] : Element [0..1] « dateTime|Period|Timing »The individual responsible for dispensing the medication, supplier or devicesupplier : Reference [0..1] « Practitioner|PractitionerRole| Organization »Identification of the facility/location where the Supply was shipped to, as part of the dispense eventdestination : Reference [0..1] « Location »Identifies the person who picked up the Supplyreceiver : Reference [0..*] « Practitioner|PractitionerRole »SuppliedItemThe amount of supply that has been dispensed. Includes unit of measurequantity : Quantity(SimpleQuantity) [0..1]Identifies the medication, substance or device being dispensed. This is either a link to a resource representing the details of the item or a code that identifies the item from a known listitem[x] : Element [0..1] « CodeableConcept|Reference(Medication| Substance|Device); The item that was delivered. (Strength=Example)SNOMEDCTSupplyItem?? »The item that is being delivered or has been suppliedsuppliedItem[0..1]

XML Template

Turtle Template

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


[ a fhir:SupplyDelivery;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:SupplyDelivery.identifier [ Identifier ], ... ; # 0..* External identifier
  fhir:SupplyDelivery.basedOn [ Reference(SupplyRequest) ], ... ; # 0..* Fulfills plan, proposal or order
  fhir:SupplyDelivery.partOf [ Reference(Contract|SupplyDelivery) ], ... ; # 0..* Part of referenced event
  fhir:SupplyDelivery.status [ code ]; # 0..1 in-progress | completed | abandoned | entered-in-error
  fhir:SupplyDelivery.patient [ Reference(Patient) ]; # 0..1 Patient for whom the item is supplied
  fhir:SupplyDelivery.type [ CodeableConcept ]; # 0..1 Category of dispense event
  fhir:SupplyDelivery.suppliedItem [ # 0..1 The item that is delivered or supplied
    fhir:SupplyDelivery.suppliedItem.quantity [ Quantity(SimpleQuantity) ]; # 0..1 Amount dispensed
    # SupplyDelivery.suppliedItem.item[x] : 0..1 Medication, Substance, or Device supplied. One of these 2
      fhir:SupplyDelivery.suppliedItem.itemCodeableConcept [ CodeableConcept ]
      fhir:SupplyDelivery.suppliedItem.itemReference [ Reference(Device|Medication|Substance) ]
  ];
  # SupplyDelivery.occurrence[x] : 0..1 When event occurred. One of these 3
    fhir:SupplyDelivery.occurrenceDateTime [ dateTime ]
    fhir:SupplyDelivery.occurrencePeriod [ Period ]
    fhir:SupplyDelivery.occurrenceTiming [ Timing ]
  fhir:SupplyDelivery.supplier [ Reference(Organization|Practitioner|PractitionerRole) ]; # 0..1 Dispenser
  fhir:SupplyDelivery.destination [ Reference(Location) ]; # 0..1 Where the Supply was sent
  fhir:SupplyDelivery.receiver [ Reference(Practitioner|PractitionerRole) ], ... ; # 0..* Who collected the Supply
]

Changes since Release 3

SupplyDelivery
SupplyDelivery.status
  • Change value set from http://hl7.org/fhir/ValueSet/supplydelivery-status|4.0.0 to http://hl7.org/fhir/ValueSet/supplydelivery-status|4.1.0
SupplyDelivery.type
  • Change value set from http://hl7.org/fhir/ValueSet/supplydelivery-type|4.0.0 to http://hl7.org/fhir/ValueSet/supplydelivery-type|4.1.0

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)

 

See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis

PathDefinitionTypeReference
SupplyDelivery.status Status of the supply delivery.RequiredSupplyDeliveryStatus
SupplyDelivery.type The type of supply dispense.RequiredSupplyItemType
SupplyDelivery.suppliedItem.item[x] The item that was delivered.ExampleSNOMEDCTSupplyItem

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

NameTypeDescriptionExpressionIn Common
identifiertokenExternal identifierSupplyDelivery.identifier
patientreferencePatient for whom the item is suppliedSupplyDelivery.patient
(Patient)
receiverreferenceWho collected the SupplySupplyDelivery.receiver
(Practitioner, PractitionerRole)
statustokenin-progress | completed | abandoned | entered-in-errorSupplyDelivery.status
supplierreferenceDispenserSupplyDelivery.supplier
(Practitioner, Organization, PractitionerRole)