R4 Draft for Comment

This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). 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.24 Resource SupplyDelivery - Content

Orders and Observations Work GroupMaturity Level: 1 Trial Use 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

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. SupplyDelivery TUDomainResourceDelivery of bulk Supplies
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..1IdentifierExternal identifier
... basedOn Σ0..*Reference(SupplyRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(SupplyDelivery | Contract)Part of referenced event
... status ?!Σ0..1codein-progress | completed | abandoned | entered-in-error
SupplyDeliveryStatus (Required)
... 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)Who collected the Supply

doco Documentation for this format

UML Diagram (Legend)

SupplyDelivery (DomainResource)Identifier assigned by the dispensing facility when the item(s) is dispensedidentifier : Identifier [0..1]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)Supply Item Type! »The date or time(s) the activity occurredoccurrence[x] : Type [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 »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] : Type [0..1] « CodeableConcept|Reference(Medication| Substance|Device); The item that was delivered. (Strength=Example)SNOMED CT Supply Item?? »The item that is being delivered or has been suppliedsuppliedItem[0..1]

XML Template

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

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..1 External identifier
  fhir:SupplyDelivery.basedOn [ Reference(SupplyRequest) ], ... ; # 0..* Fulfills plan, proposal or order
  fhir:SupplyDelivery.partOf [ Reference(SupplyDelivery|Contract) ], ... ; # 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(Medication|Substance|Device) ]
  ];
  # 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(Practitioner|PractitionerRole|Organization) ]; # 0..1 Dispenser
  fhir:SupplyDelivery.destination [ Reference(Location) ]; # 0..1 Where the Supply was sent
  fhir:SupplyDelivery.receiver [ Reference(Practitioner) ], ... ; # 0..* Who collected the Supply
]

Changes since DSTU2

SupplyDelivery
SupplyDelivery.basedOn
  • Added Element
SupplyDelivery.partOf
  • Added Element
SupplyDelivery.suppliedItem
  • Remove Reference(Medication), Remove Reference(Substance), Remove Reference(Device)
SupplyDelivery.suppliedItem.quantity
  • Added Element
SupplyDelivery.suppliedItem.item[x]
  • Added Element
SupplyDelivery.occurrence[x]
  • Added Element
SupplyDelivery.supplier
  • Add Reference(PractitionerRole), Add Reference(Organization)
SupplyDelivery.quantity
  • deleted
SupplyDelivery.whenPrepared
  • deleted
SupplyDelivery.time
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R2 <--> R3 Conversion Maps (status = 1 test 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..1IdentifierExternal identifier
... basedOn Σ0..*Reference(SupplyRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(SupplyDelivery | Contract)Part of referenced event
... status ?!Σ0..1codein-progress | completed | abandoned | entered-in-error
SupplyDeliveryStatus (Required)
... 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)Who collected the Supply

doco Documentation for this format

UML Diagram (Legend)

SupplyDelivery (DomainResource)Identifier assigned by the dispensing facility when the item(s) is dispensedidentifier : Identifier [0..1]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)Supply Item Type! »The date or time(s) the activity occurredoccurrence[x] : Type [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 »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] : Type [0..1] « CodeableConcept|Reference(Medication| Substance|Device); The item that was delivered. (Strength=Example)SNOMED CT Supply Item?? »The item that is being delivered or has been suppliedsuppliedItem[0..1]

XML Template

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

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..1 External identifier
  fhir:SupplyDelivery.basedOn [ Reference(SupplyRequest) ], ... ; # 0..* Fulfills plan, proposal or order
  fhir:SupplyDelivery.partOf [ Reference(SupplyDelivery|Contract) ], ... ; # 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(Medication|Substance|Device) ]
  ];
  # 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(Practitioner|PractitionerRole|Organization) ]; # 0..1 Dispenser
  fhir:SupplyDelivery.destination [ Reference(Location) ]; # 0..1 Where the Supply was sent
  fhir:SupplyDelivery.receiver [ Reference(Practitioner) ], ... ; # 0..* Who collected the Supply
]

Changes since DSTU2

SupplyDelivery
SupplyDelivery.basedOn
  • Added Element
SupplyDelivery.partOf
  • Added Element
SupplyDelivery.suppliedItem
  • Remove Reference(Medication), Remove Reference(Substance), Remove Reference(Device)
SupplyDelivery.suppliedItem.quantity
  • Added Element
SupplyDelivery.suppliedItem.item[x]
  • Added Element
SupplyDelivery.occurrence[x]
  • Added Element
SupplyDelivery.supplier
  • Add Reference(PractitionerRole), Add Reference(Organization)
SupplyDelivery.quantity
  • deleted
SupplyDelivery.whenPrepared
  • deleted
SupplyDelivery.time
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

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

 

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.RequiredSupply Item Type
SupplyDelivery.suppliedItem.item[x] The item that was delivered.ExampleSNOMED CT Supply Item

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.identifier26 Resources
patientreferencePatient for whom the item is suppliedSupplyDelivery.patient
(Patient)
29 Resources
receiverreferenceWho collected the SupplySupplyDelivery.receiver
(Practitioner)
statustokenin-progress | completed | abandoned | entered-in-errorSupplyDelivery.status
supplierreferenceDispenserSupplyDelivery.supplier
(Practitioner, Organization, PractitionerRole)