STU 2 Ballot

This page is part of the Data Access Framework (v1.6.0: STU 2 Ballot 1) based on FHIR v1.6.0. . For a full list of available versions, see the Directory of published versions

D.4.1 StructureDefinition: DAF-medicationorder

The official URL for this profile is:

http://hl7.org/fhir/us/daf/StructureDefinition/daf-medicationorder

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

D.4.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 Profile daf-core-medicationorder

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationOrder I0..*Prescription of medication to for patient
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
... id 0..1idLogical id of this artifact
... 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: Common Languages (extensible)
... 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 S0..*IdentifierExternal identifier
... status ?!S1..1codeactive | on-hold | completed | entered-in-error | stopped | draft
Binding: MedicationOrderStatus (required)
... medication[x] S1..1CodeableConcept, Reference(Profile daf-medication)Medication to be taken
Binding: Medication Clinical Drug (RxNorm) (extensible)
... patient S1..1Reference(Profile daf-patient)Who prescription is for
... encounter S0..1Reference(Profile daf-encounter)An interaction during which services are provided to the patient
... dateWritten S1..1dateTimeWhen prescription was initially authorized
... prescriber S1..1Reference(Profile daf-core-pract)Who ordered the initial medication(s)
... reasonCode 0..*CodeableConceptReason or indication for writing the prescription
Binding: Condition/Problem/Diagnosis Codes (example)
... reasonReference 0..*Reference(Condition)Condition that supports why the prescription is being written
... note 0..*AnnotationInformation about the prescription
... category 0..1codeType of medication usage
Binding: MedicationOrderCategory (example)
... dosageInstruction S0..*BackboneElementHow medication should be taken
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... text S0..1stringFree text dosage instructions e.g. SIG
.... additionalInstructions 0..*CodeableConceptSupplemental instructions - e.g. "with meals"
Binding: SNOMED CT Additional Dosage Instructions (example)
.... timing S0..1TimingWhen medication should be administered
.... asNeeded[x] S0..1boolean, CodeableConceptTake "as needed" (for x)
Binding: SNOMED CT Medication As Needed Reason Codes (example)
.... siteCodeableConcept S0..1CodeableConceptBody site to administer to
Binding: Vaccine Administered Body Site (preferred)
.... route S0..1CodeableConceptHow drug should enter body
Binding: Medication Route FDA Value Set (preferred)
.... method 0..1CodeableConceptTechnique for administering medication
Binding: SNOMED CT Administration Method Codes (example)
.... dose[x] S0..1Range, SimpleQuantityAmount of medication per dose
.... maxDosePerPeriod 0..1RatioUpper limit on medication per unit of time
.... maxDosePerAdministration 0..1SimpleQuantityUpper limit on medication per administration
.... maxDosePerLifetime 0..1SimpleQuantityUpper limit on medication per lifetime of the patient
.... rate[x] S0..1Ratio, Range, SimpleQuantityAmount of medication per unit of time
... dispenseRequest S0..1BackboneElementMedication supply authorization
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... validityPeriod S0..1PeriodTime period supply is authorized for
.... numberOfRepeatsAllowed S0..1positiveIntNumber of refills authorized
.... quantity S0..1SimpleQuantityAmount of medication to supply per dispense
.... expectedSupplyDuration S0..1DurationNumber of days supply per dispense
... substitution 0..1BackboneElementAny restrictions on medication substitution
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... allowed 1..1booleanWhether substitution is allowed or not
.... reason 0..1CodeableConceptWhy should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason (example)
... priorPrescription 0..1Reference(MedicationOrder)An order/prescription that this supersedes
... eventHistory 0..*BackboneElementA list of events of interest in the lifecycle
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... status 1..1codeactive | on-hold | completed | entered-in-error | stopped | draft
Binding: MedicationOrderStatus (required)
.... action 0..1CodeableConceptAction taken (e.g. verify, discontinue)
Binding: (unbound) (example)
.... dateTime 1..1dateTimeThe date at which the event happened
.... actor 0..1Reference(Practitioner)Who took the action
.... reason 0..1CodeableConceptReason the action was taken
Binding: (unbound) (example)

doco Documentation for this format

yet to be done: Xml template

yet to be done: Json template

This structure is derived from MedicationOrder.

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationOrder I0..*Prescription of medication to for patient
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
... id 0..1idLogical id of this artifact
... 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: Common Languages (extensible)
... 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 S0..*IdentifierExternal identifier
... status ?!S1..1codeactive | on-hold | completed | entered-in-error | stopped | draft
Binding: MedicationOrderStatus (required)
... medication[x] S1..1CodeableConcept, Reference(Profile daf-medication)Medication to be taken
Binding: Medication Clinical Drug (RxNorm) (extensible)
... patient S1..1Reference(Profile daf-patient)Who prescription is for
... encounter S0..1Reference(Profile daf-encounter)An interaction during which services are provided to the patient
... dateWritten S1..1dateTimeWhen prescription was initially authorized
... prescriber S1..1Reference(Profile daf-core-pract)Who ordered the initial medication(s)
... reasonCode 0..*CodeableConceptReason or indication for writing the prescription
Binding: Condition/Problem/Diagnosis Codes (example)
... reasonReference 0..*Reference(Condition)Condition that supports why the prescription is being written
... note 0..*AnnotationInformation about the prescription
... category 0..1codeType of medication usage
Binding: MedicationOrderCategory (example)
... dosageInstruction S0..*BackboneElementHow medication should be taken
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... text S0..1stringFree text dosage instructions e.g. SIG
.... additionalInstructions 0..*CodeableConceptSupplemental instructions - e.g. "with meals"
Binding: SNOMED CT Additional Dosage Instructions (example)
.... timing S0..1TimingWhen medication should be administered
.... asNeeded[x] S0..1boolean, CodeableConceptTake "as needed" (for x)
Binding: SNOMED CT Medication As Needed Reason Codes (example)
.... siteCodeableConcept S0..1CodeableConceptBody site to administer to
Binding: Vaccine Administered Body Site (preferred)
.... route S0..1CodeableConceptHow drug should enter body
Binding: Medication Route FDA Value Set (preferred)
.... method 0..1CodeableConceptTechnique for administering medication
Binding: SNOMED CT Administration Method Codes (example)
.... dose[x] S0..1Range, SimpleQuantityAmount of medication per dose
.... maxDosePerPeriod 0..1RatioUpper limit on medication per unit of time
.... maxDosePerAdministration 0..1SimpleQuantityUpper limit on medication per administration
.... maxDosePerLifetime 0..1SimpleQuantityUpper limit on medication per lifetime of the patient
.... rate[x] S0..1Ratio, Range, SimpleQuantityAmount of medication per unit of time
... dispenseRequest S0..1BackboneElementMedication supply authorization
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... validityPeriod S0..1PeriodTime period supply is authorized for
.... numberOfRepeatsAllowed S0..1positiveIntNumber of refills authorized
.... quantity S0..1SimpleQuantityAmount of medication to supply per dispense
.... expectedSupplyDuration S0..1DurationNumber of days supply per dispense
... substitution 0..1BackboneElementAny restrictions on medication substitution
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... allowed 1..1booleanWhether substitution is allowed or not
.... reason 0..1CodeableConceptWhy should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason (example)
... priorPrescription 0..1Reference(MedicationOrder)An order/prescription that this supersedes
... eventHistory 0..*BackboneElementA list of events of interest in the lifecycle
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... status 1..1codeactive | on-hold | completed | entered-in-error | stopped | draft
Binding: MedicationOrderStatus (required)
.... action 0..1CodeableConceptAction taken (e.g. verify, discontinue)
Binding: (unbound) (example)
.... dateTime 1..1dateTimeThe date at which the event happened
.... actor 0..1Reference(Practitioner)Who took the action
.... reason 0..1CodeableConceptReason the action was taken
Binding: (unbound) (example)

doco Documentation for this format

XML Template

yet to be done: Xml template

JSON Template

yet to be done: Json template

 

D.4.1.2 Terminology Bindings

Terminology Bindings

PathNameConformanceValueSet
MedicationOrder.languageCommon LanguagesextensibleCommon Languages
MedicationOrder.statusMedicationOrderStatusrequiredMedicationOrderStatus
MedicationOrder.medication[x]Medication Clinical Drug (RxNorm)extensibleMedication Clinical Drug (RxNorm)
MedicationOrder.reasonCodeCondition/Problem/Diagnosis CodesexampleCondition/Problem/Diagnosis Codes
MedicationOrder.categoryMedicationOrderCategoryexampleMedicationOrderCategory
MedicationOrder.dosageInstruction.additionalInstructionsSNOMED CT Additional Dosage InstructionsexampleSNOMED CT Additional Dosage Instructions
MedicationOrder.dosageInstruction.asNeeded[x]SNOMED CT Medication As Needed Reason CodesexampleSNOMED CT Medication As Needed Reason Codes
MedicationOrder.dosageInstruction.siteCodeableConceptVaccine Administered Body SitepreferredVaccine Administered Body Site
MedicationOrder.dosageInstruction.routeMedication Route FDA Value SetpreferredMedication Route FDA Value Set
MedicationOrder.dosageInstruction.methodSNOMED CT Administration Method CodesexampleSNOMED CT Administration Method Codes
MedicationOrder.substitution.reasonSubstanceAdminSubstitutionReasonexampleSubstanceAdminSubstitutionReason
MedicationOrder.eventHistory.statusMedicationOrderStatusrequiredMedicationOrderStatus
MedicationOrder.eventHistory.action?extexample
MedicationOrder.eventHistory.reason?extexample

D.4.1.3 Constraints

Constraints

IdPathDetailsRequirements
dom-2MedicationOrderIf the resource is contained in another resource, it SHALL NOT contain nested Resources
XPath: not(parent::f:contained and f:contained)
dom-1MedicationOrderIf the resource is contained in another resource, it SHALL NOT contain any narrative
XPath: not(parent::f:contained and f:text)
dom-4MedicationOrderIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
XPath: not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))
dom-3MedicationOrderIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
XPath: not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat('#', $id))]))
.