DSTU2

This page is part of the FHIR Specification (v1.0.2: DSTU 2). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

D.15.1 StructureDefinition: DAF-MedicationDispense

The official URL for this profile is:

http://hl7.org/fhir/StructureDefinition/daf-medicationdispense

Defines constraints and extensions on the MedicationDispense resource for use in querying and retrieving dispense information.

This profile was published on Fri, Mar 20, 2015 00:00+1100 as a draft by Health Level Seven International (Infrastructure and Messaging - Data Access Framework).

D.15.1.1 Formal Views of Profile Content

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

This structure is derived from MedicationDispense.

Summary

Mandatory: 2 elements
Must-Support: 16 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element MedicationDispense.medication[x] is sliced based on the value of @type
NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense ∑ I0..*MedicationDispenseDispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
... meta ∑0..1MetaMetadata about the resource
... implicitRules ?! ∑0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: IETF BCP-47 (required)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier S ∑0..1IdentifierExternal identifier
... status ?! S∑0..1codein-progress | on-hold | completed | entered-in-error | stopped
Binding: MedicationDispenseStatus (required)
... patient S ∑1..1Reference(DAF-Patient)Who the dispense is for
... dispenser S ∑0..1Reference(DAF-Pract)Practitioner responsible for dispensing medication
... authorizingPrescription S ∑0..*Reference(DAF-MedicationOrder)Medication order that authorizes the dispense
... type ∑0..1CodeableConceptTrial fill, partial fill, emergency fill, etc.
Binding: ActPharmacySupplyType (example)
... quantity ∑0..1SimpleQuantityAmount dispensed
... daysSupply ∑0..1SimpleQuantityDays Supply
... medication[x] ∑CodeableConcept, Reference(Medication)What medication was supplied
Slice: Unordered, Open, by @type
... medication[x] ∑1..1CodeableConcept, Reference(Medication)What medication was supplied
... medicationCodeableConcept S ∑1..1CodeableConceptWhat medication was supplied
Binding: Medication Clinical Drug (RxNorm) (extensible)
... medicationReference S ∑1..1Reference(DAF-Medication)What medication was supplied
... whenPrepared ∑0..1dateTimeDispense processing time
... whenHandedOver ∑0..1dateTimeWhen product was given out
... destination ∑0..1Reference(Location)Where the medication was sent
... receiver ∑0..*Reference(Patient | Practitioner)Who collected the medication
... note ∑0..1stringInformation about the dispense
... dosageInstruction S ∑0..*BackboneElementMedicine administration instructions to the patient/caregiver
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... text ∑0..1stringDosage Instructions
.... additionalInstructions S ∑0..1CodeableConceptE.g. "Take with food"
Binding: (unbound) (example)
.... timing S ∑0..1TimingWhen medication should be administered
.... asNeeded[x] S ∑0..1boolean, CodeableConceptTake "as needed" f(or x)
Binding: (unbound) (example)
.... siteCodeableConcept S ∑0..1CodeableConceptBody site to administer to
Binding: Vaccine Administered Body Site (preferred)
.... route S ∑0..1CodeableConceptHow drug should enter body
Binding: Medication Route FDA Value Set (preferred)
.... method ∑0..1CodeableConceptTechnique for administering medication
Binding: (unbound) (example)
.... dose[x] S ∑0..1Range, SimpleQuantityAmount of medication per dose
.... rate[x] S ∑0..1Ratio, RangeAmount of medication per unit of time
.... maxDosePerPeriod S ∑0..1RatioUpper limit on medication per unit of time
... substitution ∑0..1BackboneElementDeals with substitution of one medicine for another
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... type ∑1..1CodeableConceptType of substitution
Binding: ActSubstanceAdminSubstitutionCode (example)
.... reason ∑0..*CodeableConceptWhy was substitution made
Binding: SubstanceAdminSubstitutionReason (example)
.... responsibleParty ∑0..*Reference(Practitioner)Who is responsible for the substitution

doco Documentation for this format

todo

This structure is derived from MedicationDispense.

Summary

Mandatory: 2 elements
Must-Support: 16 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element MedicationDispense.medication[x] is sliced based on the value of @type

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationDispense ∑ I0..*MedicationDispenseDispensing a medication to a named patient
mdd-1: whenHandedOver cannot be before whenPrepared
... meta ∑0..1MetaMetadata about the resource
... implicitRules ?! ∑0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: IETF BCP-47 (required)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier S ∑0..1IdentifierExternal identifier
... status ?! S∑0..1codein-progress | on-hold | completed | entered-in-error | stopped
Binding: MedicationDispenseStatus (required)
... patient S ∑1..1Reference(DAF-Patient)Who the dispense is for
... dispenser S ∑0..1Reference(DAF-Pract)Practitioner responsible for dispensing medication
... authorizingPrescription S ∑0..*Reference(DAF-MedicationOrder)Medication order that authorizes the dispense
... type ∑0..1CodeableConceptTrial fill, partial fill, emergency fill, etc.
Binding: ActPharmacySupplyType (example)
... quantity ∑0..1SimpleQuantityAmount dispensed
... daysSupply ∑0..1SimpleQuantityDays Supply
... medication[x] ∑CodeableConcept, Reference(Medication)What medication was supplied
Slice: Unordered, Open, by @type
... medication[x] ∑1..1CodeableConcept, Reference(Medication)What medication was supplied
... medicationCodeableConcept S ∑1..1CodeableConceptWhat medication was supplied
Binding: Medication Clinical Drug (RxNorm) (extensible)
... medicationReference S ∑1..1Reference(DAF-Medication)What medication was supplied
... whenPrepared ∑0..1dateTimeDispense processing time
... whenHandedOver ∑0..1dateTimeWhen product was given out
... destination ∑0..1Reference(Location)Where the medication was sent
... receiver ∑0..*Reference(Patient | Practitioner)Who collected the medication
... note ∑0..1stringInformation about the dispense
... dosageInstruction S ∑0..*BackboneElementMedicine administration instructions to the patient/caregiver
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... text ∑0..1stringDosage Instructions
.... additionalInstructions S ∑0..1CodeableConceptE.g. "Take with food"
Binding: (unbound) (example)
.... timing S ∑0..1TimingWhen medication should be administered
.... asNeeded[x] S ∑0..1boolean, CodeableConceptTake "as needed" f(or x)
Binding: (unbound) (example)
.... siteCodeableConcept S ∑0..1CodeableConceptBody site to administer to
Binding: Vaccine Administered Body Site (preferred)
.... route S ∑0..1CodeableConceptHow drug should enter body
Binding: Medication Route FDA Value Set (preferred)
.... method ∑0..1CodeableConceptTechnique for administering medication
Binding: (unbound) (example)
.... dose[x] S ∑0..1Range, SimpleQuantityAmount of medication per dose
.... rate[x] S ∑0..1Ratio, RangeAmount of medication per unit of time
.... maxDosePerPeriod S ∑0..1RatioUpper limit on medication per unit of time
... substitution ∑0..1BackboneElementDeals with substitution of one medicine for another
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... type ∑1..1CodeableConceptType of substitution
Binding: ActSubstanceAdminSubstitutionCode (example)
.... reason ∑0..*CodeableConceptWhy was substitution made
Binding: SubstanceAdminSubstitutionReason (example)
.... responsibleParty ∑0..*Reference(Practitioner)Who is responsible for the substitution

doco Documentation for this format

XML Template

JSON Template

todo

 

Other representations of profile: Schematron

D.15.1.2 Terminology Bindings

PathNameConformanceValueSet
MedicationDispense.language?extrequiredhttp://tools.ietf.org/html/bcp47
MedicationDispense.statusMedicationDispenseStatusrequiredMedicationDispenseStatus
MedicationDispense.typeActPharmacySupplyTypeexampleActPharmacySupplyType
MedicationDispense.medicationCodeableConceptMedication Clinical Drug (RxNorm)extensibleMedication Clinical Drug (RxNorm)
MedicationDispense.dosageInstruction.additionalInstructions?extexample
MedicationDispense.dosageInstruction.asNeeded[x]?extexample
MedicationDispense.dosageInstruction.siteCodeableConceptVaccine Administered Body SitepreferredVaccine Administered Body Site
MedicationDispense.dosageInstruction.routeMedication Route FDA Value SetpreferredMedication Route FDA Value Set
MedicationDispense.dosageInstruction.method?extexample
MedicationDispense.substitution.typeActSubstanceAdminSubstitutionCodeexampleActSubstanceAdminSubstitutionCode
MedicationDispense.substitution.reasonSubstanceAdminSubstitutionReasonexampleSubstanceAdminSubstitutionReason

D.15.1.3 Constraints

IdPathDetailsRequirements
mdd-1MedicationDispensewhenHandedOver cannot be before whenPrepared
XPath: not(exists(f:whenHandedOver/@value)) or not(exists(f:whenPrepared/@value)) or ( f:whenHandedOver/@value >= f:whenPrepared/@value)
.