CH EMED (R4)
4.0.1 - trial-use Switzerland flag

This page is part of the CH EMED (R4) (v4.0.1: STU 4) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: CH EMED MedicationRequest (PRE)

Official URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-medicationrequest Version: 4.0.1
Active as of 2023-12-28 Computable Name: CHEMEDMedicationRequest

Copyright/Legal: CC0-1.0

Definition of the medication request for the medication prescription document

Usage:

Formal Views of Profile Content

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

This structure is derived from MedicationRequest

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationRequest 0..*MedicationRequestCH EMED MedicationRequest (PRE)
... contained 1..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... treatmentplan 0..1(Complex)Reference to the medication treatment plan
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentplan
.... system 1..1uriThe namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value 1..1stringIdentifier value as UUID
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
... Slices for medication[x] 1..1CodeableConcept, Reference(Medication)Medication to be taken
Slice: Unordered, Open by type:$this
.... medication[x]:medicationReference 0..1Reference(CH EMED Medication) {c}Reference to the contained medication
... subject 1..1Reference(CH Core Patient)Patient
.... reference 1..1stringLiteral reference, Relative, internal or absolute URL
... authoredOn 1..1dateTimeWhen request was initially authored
... requester 1..1Reference(CH EMED PractitionerRole)The author of the medical decision, see also 'Guidance - Authorship'
.... reference 1..1stringLiteral reference, Relative, internal or absolute URL
... reasonCode 0..1CodeableConceptTreatment reason
... Slices for dosageInstruction 1..*DosageHow the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry 1..1CHEMEDDosageMedicationRequestBase entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..*CHEMEDDosageSplitAdditional entry of the dosage instruction
... dispenseRequest
.... validityPeriod 0..1PeriodPeriod of validity of the prescription
.... numberOfRepeatsAllowed 0..1unsignedIntRepeated supply per medication (without initial dispense)
.... quantity 0..1SimpleQuantityNumber of packages
... substitution
.... Slices for allowed[x] 1..1boolean, CodeableConceptWhether substitution is allowed or not
Slice: Unordered, Open by type:$this
..... allowed[x]:allowedCodeableConcept 0..1CodeableConceptWhether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode (preferred)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
MedicationRequest.substitution.allowed[x]:allowedCodeableConceptpreferredActSubstanceAdminSubstitutionCode
NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationRequest 0..*MedicationRequestCH EMED MedicationRequest (PRE)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 1..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 1..1IdentifierMedicationRequest Identifier
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value Σ1..1stringIdentifier value as UUID
Example General: 123456
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
... status ?!Σ1..1codeactive | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown
Binding: medicationrequest Status (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.

... intent ?!Σ1..1codeproposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
Binding: medicationRequest Intent (required): The kind of medication order.

... doNotPerform ?!Σ0..1booleanTrue if request is prohibiting action
... Slices for medication[x] Σ1..1Medication to be taken
Slice: Unordered, Open by type:$this
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying substance or product that can be ordered.

.... medicationCodeableConceptCodeableConcept
.... medicationReferenceReference(Medication)
.... medication[x]:medicationReference Σ0..1Reference(CH EMED Medication) {c}Reference to the contained medication
... subject Σ1..1Reference(CH Core Patient)Patient
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
... authoredOn Σ1..1dateTimeWhen request was initially authored
... requester Σ1..1Reference(CH EMED PractitionerRole)The author of the medical decision, see also 'Guidance - Authorship'
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
... reasonCode 0..1CodeableConceptTreatment reason
Binding: Condition/Problem/DiagnosisCodes (example): A coded concept indicating why the medication was ordered.


... Slices for dosageInstruction 1..*DosageHow the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry C1..1CHEMEDDosageMedicationRequestBase entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..*CHEMEDDosageSplitAdditional entry of the dosage instruction

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
MedicationRequest.identifier.userequiredIdentifierUse
MedicationRequest.statusrequiredmedicationrequest Status
MedicationRequest.intentrequiredmedicationRequest Intent
MedicationRequest.medication[x]exampleSNOMEDCTMedicationCodes
MedicationRequest.reasonCodeexampleCondition/Problem/DiagnosisCodes

Constraints

IdGradePath(s)DetailsRequirements
ch-dosage-3errorMedicationRequest.dosageInstruction:baseEntryPatient instruction/free text dosage instruction, timing or as needed has to be specified
: patientInstruction.exists() or timing.exists() or asNeeded.exists()
ch-dosage-4errorMedicationRequest.dosageInstruction:baseEntryFor split dosage timing event and dose/rate are required
: sequence.exists() implies (timing.repeat.when.exists() and doseAndRate.dose.exists())
dom-2errorMedicationRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationRequestIf 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-4errorMedicationRequestIf 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-5errorMedicationRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationRequestA 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 & Constraintsdoco
.. MedicationRequest 0..*MedicationRequestCH EMED MedicationRequest (PRE)
... 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: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 1..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... treatmentplan 0..1(Complex)Reference to the medication treatment plan
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentplan
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 1..1IdentifierMedicationRequest Identifier
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value Σ1..1stringIdentifier value as UUID
Example General: 123456
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!Σ1..1codeactive | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown
Binding: medicationrequest Status (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.

... statusReason 0..1CodeableConceptReason for current status
Binding: medicationRequest Status Reason Codes (example): Identifies the reasons for a given status.

... intent ?!Σ1..1codeproposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
Binding: medicationRequest Intent (required): The kind of medication order.

... category 0..*CodeableConceptType of medication usage
Binding: medicationRequest Category Codes (example): A coded concept identifying the category of medication request. For example, where the medication is to be consumed or administered, or the type of medication treatment.


... priority Σ0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.

... doNotPerform ?!Σ0..1booleanTrue if request is prohibiting action
... reported[x] Σ0..1Reported rather than primary record
.... reportedBooleanboolean
.... reportedReferenceReference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization)
... Slices for medication[x] Σ1..1Medication to be taken
Slice: Unordered, Open by type:$this
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying substance or product that can be ordered.

.... medicationCodeableConceptCodeableConcept
.... medicationReferenceReference(Medication)
.... medication[x]:medicationReference Σ0..1Reference(CH EMED Medication) {c}Reference to the contained medication
... subject Σ1..1Reference(CH Core Patient)Patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ0..1stringText alternative for the resource
... encounter 0..1Reference(Encounter)Encounter created as part of encounter/admission/stay
... supportingInformation 0..*Reference(Resource)Information to support ordering of the medication
... authoredOn Σ1..1dateTimeWhen request was initially authored
... requester Σ1..1Reference(CH EMED PractitionerRole)The author of the medical decision, see also 'Guidance - Authorship'
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ0..1stringText alternative for the resource
... performer 0..1Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam)Intended performer of administration
... performerType Σ0..1CodeableConceptDesired kind of performer of the medication administration
Binding: ProcedurePerformerRoleCodes (example): Identifies the type of individual that is desired to administer the medication.

... recorder 0..1Reference(Practitioner | PractitionerRole)Person who entered the request
... reasonCode 0..1CodeableConceptTreatment reason
Binding: Condition/Problem/DiagnosisCodes (example): A coded concept indicating why the medication was ordered.


... reasonReference 0..*Reference(Condition | Observation)Condition or observation that supports why the prescription is being written
... instantiatesCanonical Σ0..*canonical()Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates external protocol or definition
... basedOn Σ0..*Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation)What request fulfills
... groupIdentifier Σ0..1IdentifierComposite request this is part of
... courseOfTherapyType 0..1CodeableConceptOverall pattern of medication administration
Binding: medicationRequest Course of Therapy Codes (example): Identifies the overall pattern of medication administratio.

... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note 0..*AnnotationInformation about the prescription
... Slices for dosageInstruction 1..*DosageHow the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry C1..1CHEMEDDosageMedicationRequestBase entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..*CHEMEDDosageSplitAdditional entry of the dosage instruction
... dispenseRequest 0..1BackboneElementMedication supply authorization
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... initialFill 0..1BackboneElementFirst fill details
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... quantity 0..1SimpleQuantityFirst fill quantity
..... duration 0..1DurationFirst fill duration
.... dispenseInterval 0..1DurationMinimum period of time between dispenses
.... validityPeriod 0..1PeriodPeriod of validity of the prescription
.... numberOfRepeatsAllowed 0..1unsignedIntRepeated supply per medication (without initial dispense)
.... quantity 0..1SimpleQuantityNumber of packages
.... expectedSupplyDuration 0..1DurationNumber of days supply per dispense
.... performer 0..1Reference(Organization)Intended dispenser
... substitution 0..1BackboneElementAny restrictions on medication substitution
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... Slices for allowed[x] 1..1Whether substitution is allowed or not
Slice: Unordered, Open by type:$this
Binding: ActSubstanceAdminSubstitutionCode (example): Identifies the type of substitution allowed.

..... allowedBooleanboolean
..... allowedCodeableConceptCodeableConcept
..... allowed[x]:allowedCodeableConcept 0..1CodeableConceptWhether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode (preferred)
.... reason 0..1CodeableConceptWhy should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed.

... priorPrescription 0..1Reference(MedicationRequest)An order/prescription that is being replaced
... detectedIssue 0..*Reference(DetectedIssue)Clinical Issue with action
... eventHistory 0..*Reference(Provenance)A list of events of interest in the lifecycle

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
MedicationRequest.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
MedicationRequest.identifier.userequiredIdentifierUse
MedicationRequest.identifier.typeextensibleIdentifier Type Codes
MedicationRequest.statusrequiredmedicationrequest Status
MedicationRequest.statusReasonexamplemedicationRequest Status Reason Codes
MedicationRequest.intentrequiredmedicationRequest Intent
MedicationRequest.categoryexamplemedicationRequest Category Codes
MedicationRequest.priorityrequiredRequestPriority
MedicationRequest.medication[x]exampleSNOMEDCTMedicationCodes
MedicationRequest.subject.typeextensibleResourceType
MedicationRequest.requester.typeextensibleResourceType
MedicationRequest.performerTypeexampleProcedurePerformerRoleCodes
MedicationRequest.reasonCodeexampleCondition/Problem/DiagnosisCodes
MedicationRequest.courseOfTherapyTypeexamplemedicationRequest Course of Therapy Codes
MedicationRequest.substitution.allowed[x]exampleActSubstanceAdminSubstitutionCode
MedicationRequest.substitution.allowed[x]:allowedCodeableConceptpreferredActSubstanceAdminSubstitutionCode
MedicationRequest.substitution.reasonexampleSubstanceAdminSubstitutionReason

Constraints

IdGradePath(s)DetailsRequirements
ch-dosage-3errorMedicationRequest.dosageInstruction:baseEntryPatient instruction/free text dosage instruction, timing or as needed has to be specified
: patientInstruction.exists() or timing.exists() or asNeeded.exists()
ch-dosage-4errorMedicationRequest.dosageInstruction:baseEntryFor split dosage timing event and dose/rate are required
: sequence.exists() implies (timing.repeat.when.exists() and doseAndRate.dose.exists())
dom-2errorMedicationRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationRequestIf 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-4errorMedicationRequestIf 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-5errorMedicationRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationRequestA 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 MedicationRequest

Summary

Mandatory: 10 elements
Fixed Value: 1 element

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element MedicationRequest.medication[x] is sliced based on the value of type:$this
  • The element MedicationRequest.dosageInstruction is sliced based on the value of profile:$this (Closed)
  • The element MedicationRequest.substitution.allowed[x] is sliced based on the value of type:$this

Differential View

This structure is derived from MedicationRequest

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationRequest 0..*MedicationRequestCH EMED MedicationRequest (PRE)
... contained 1..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... treatmentplan 0..1(Complex)Reference to the medication treatment plan
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentplan
.... system 1..1uriThe namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value 1..1stringIdentifier value as UUID
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
... Slices for medication[x] 1..1CodeableConcept, Reference(Medication)Medication to be taken
Slice: Unordered, Open by type:$this
.... medication[x]:medicationReference 0..1Reference(CH EMED Medication) {c}Reference to the contained medication
... subject 1..1Reference(CH Core Patient)Patient
.... reference 1..1stringLiteral reference, Relative, internal or absolute URL
... authoredOn 1..1dateTimeWhen request was initially authored
... requester 1..1Reference(CH EMED PractitionerRole)The author of the medical decision, see also 'Guidance - Authorship'
.... reference 1..1stringLiteral reference, Relative, internal or absolute URL
... reasonCode 0..1CodeableConceptTreatment reason
... Slices for dosageInstruction 1..*DosageHow the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry 1..1CHEMEDDosageMedicationRequestBase entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..*CHEMEDDosageSplitAdditional entry of the dosage instruction
... dispenseRequest
.... validityPeriod 0..1PeriodPeriod of validity of the prescription
.... numberOfRepeatsAllowed 0..1unsignedIntRepeated supply per medication (without initial dispense)
.... quantity 0..1SimpleQuantityNumber of packages
... substitution
.... Slices for allowed[x] 1..1boolean, CodeableConceptWhether substitution is allowed or not
Slice: Unordered, Open by type:$this
..... allowed[x]:allowedCodeableConcept 0..1CodeableConceptWhether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode (preferred)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
MedicationRequest.substitution.allowed[x]:allowedCodeableConceptpreferredActSubstanceAdminSubstitutionCode

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MedicationRequest 0..*MedicationRequestCH EMED MedicationRequest (PRE)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 1..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 1..1IdentifierMedicationRequest Identifier
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value Σ1..1stringIdentifier value as UUID
Example General: 123456
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
... status ?!Σ1..1codeactive | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown
Binding: medicationrequest Status (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.

... intent ?!Σ1..1codeproposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
Binding: medicationRequest Intent (required): The kind of medication order.

... doNotPerform ?!Σ0..1booleanTrue if request is prohibiting action
... Slices for medication[x] Σ1..1Medication to be taken
Slice: Unordered, Open by type:$this
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying substance or product that can be ordered.

.... medicationCodeableConceptCodeableConcept
.... medicationReferenceReference(Medication)
.... medication[x]:medicationReference Σ0..1Reference(CH EMED Medication) {c}Reference to the contained medication
... subject Σ1..1Reference(CH Core Patient)Patient
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
... authoredOn Σ1..1dateTimeWhen request was initially authored
... requester Σ1..1Reference(CH EMED PractitionerRole)The author of the medical decision, see also 'Guidance - Authorship'
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
... reasonCode 0..1CodeableConceptTreatment reason
Binding: Condition/Problem/DiagnosisCodes (example): A coded concept indicating why the medication was ordered.


... Slices for dosageInstruction 1..*DosageHow the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry C1..1CHEMEDDosageMedicationRequestBase entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..*CHEMEDDosageSplitAdditional entry of the dosage instruction

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
MedicationRequest.identifier.userequiredIdentifierUse
MedicationRequest.statusrequiredmedicationrequest Status
MedicationRequest.intentrequiredmedicationRequest Intent
MedicationRequest.medication[x]exampleSNOMEDCTMedicationCodes
MedicationRequest.reasonCodeexampleCondition/Problem/DiagnosisCodes

Constraints

IdGradePath(s)DetailsRequirements
ch-dosage-3errorMedicationRequest.dosageInstruction:baseEntryPatient instruction/free text dosage instruction, timing or as needed has to be specified
: patientInstruction.exists() or timing.exists() or asNeeded.exists()
ch-dosage-4errorMedicationRequest.dosageInstruction:baseEntryFor split dosage timing event and dose/rate are required
: sequence.exists() implies (timing.repeat.when.exists() and doseAndRate.dose.exists())
dom-2errorMedicationRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationRequestIf 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-4errorMedicationRequestIf 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-5errorMedicationRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationRequestA 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 & Constraintsdoco
.. MedicationRequest 0..*MedicationRequestCH EMED MedicationRequest (PRE)
... 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: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 1..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... treatmentplan 0..1(Complex)Reference to the medication treatment plan
URL: http://fhir.ch/ig/ch-emed/StructureDefinition/ch-emed-ext-treatmentplan
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 1..1IdentifierMedicationRequest Identifier
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:ietf:rfc:3986
.... value Σ1..1stringIdentifier value as UUID
Example General: 123456
Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!Σ1..1codeactive | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown
Binding: medicationrequest Status (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.

... statusReason 0..1CodeableConceptReason for current status
Binding: medicationRequest Status Reason Codes (example): Identifies the reasons for a given status.

... intent ?!Σ1..1codeproposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
Binding: medicationRequest Intent (required): The kind of medication order.

... category 0..*CodeableConceptType of medication usage
Binding: medicationRequest Category Codes (example): A coded concept identifying the category of medication request. For example, where the medication is to be consumed or administered, or the type of medication treatment.


... priority Σ0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.

... doNotPerform ?!Σ0..1booleanTrue if request is prohibiting action
... reported[x] Σ0..1Reported rather than primary record
.... reportedBooleanboolean
.... reportedReferenceReference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization)
... Slices for medication[x] Σ1..1Medication to be taken
Slice: Unordered, Open by type:$this
Binding: SNOMEDCTMedicationCodes (example): A coded concept identifying substance or product that can be ordered.

.... medicationCodeableConceptCodeableConcept
.... medicationReferenceReference(Medication)
.... medication[x]:medicationReference Σ0..1Reference(CH EMED Medication) {c}Reference to the contained medication
... subject Σ1..1Reference(CH Core Patient)Patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ0..1stringText alternative for the resource
... encounter 0..1Reference(Encounter)Encounter created as part of encounter/admission/stay
... supportingInformation 0..*Reference(Resource)Information to support ordering of the medication
... authoredOn Σ1..1dateTimeWhen request was initially authored
... requester Σ1..1Reference(CH EMED PractitionerRole)The author of the medical decision, see also 'Guidance - Authorship'
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC1..1stringLiteral reference, Relative, internal or absolute URL
.... type Σ0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).

.... identifier Σ0..1IdentifierLogical reference, when literal reference is not known
.... display Σ0..1stringText alternative for the resource
... performer 0..1Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam)Intended performer of administration
... performerType Σ0..1CodeableConceptDesired kind of performer of the medication administration
Binding: ProcedurePerformerRoleCodes (example): Identifies the type of individual that is desired to administer the medication.

... recorder 0..1Reference(Practitioner | PractitionerRole)Person who entered the request
... reasonCode 0..1CodeableConceptTreatment reason
Binding: Condition/Problem/DiagnosisCodes (example): A coded concept indicating why the medication was ordered.


... reasonReference 0..*Reference(Condition | Observation)Condition or observation that supports why the prescription is being written
... instantiatesCanonical Σ0..*canonical()Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates external protocol or definition
... basedOn Σ0..*Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation)What request fulfills
... groupIdentifier Σ0..1IdentifierComposite request this is part of
... courseOfTherapyType 0..1CodeableConceptOverall pattern of medication administration
Binding: medicationRequest Course of Therapy Codes (example): Identifies the overall pattern of medication administratio.

... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... note 0..*AnnotationInformation about the prescription
... Slices for dosageInstruction 1..*DosageHow the medication should be taken
Slice: Unordered, Closed by profile:$this
.... dosageInstruction:baseEntry C1..1CHEMEDDosageMedicationRequestBase entry of the dosage instruction
.... dosageInstruction:additionalEntry 0..*CHEMEDDosageSplitAdditional entry of the dosage instruction
... dispenseRequest 0..1BackboneElementMedication supply authorization
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... initialFill 0..1BackboneElementFirst fill details
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... quantity 0..1SimpleQuantityFirst fill quantity
..... duration 0..1DurationFirst fill duration
.... dispenseInterval 0..1DurationMinimum period of time between dispenses
.... validityPeriod 0..1PeriodPeriod of validity of the prescription
.... numberOfRepeatsAllowed 0..1unsignedIntRepeated supply per medication (without initial dispense)
.... quantity 0..1SimpleQuantityNumber of packages
.... expectedSupplyDuration 0..1DurationNumber of days supply per dispense
.... performer 0..1Reference(Organization)Intended dispenser
... substitution 0..1BackboneElementAny restrictions on medication substitution
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... Slices for allowed[x] 1..1Whether substitution is allowed or not
Slice: Unordered, Open by type:$this
Binding: ActSubstanceAdminSubstitutionCode (example): Identifies the type of substitution allowed.

..... allowedBooleanboolean
..... allowedCodeableConceptCodeableConcept
..... allowed[x]:allowedCodeableConcept 0..1CodeableConceptWhether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode (preferred)
.... reason 0..1CodeableConceptWhy should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed.

... priorPrescription 0..1Reference(MedicationRequest)An order/prescription that is being replaced
... detectedIssue 0..*Reference(DetectedIssue)Clinical Issue with action
... eventHistory 0..*Reference(Provenance)A list of events of interest in the lifecycle

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
MedicationRequest.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
MedicationRequest.identifier.userequiredIdentifierUse
MedicationRequest.identifier.typeextensibleIdentifier Type Codes
MedicationRequest.statusrequiredmedicationrequest Status
MedicationRequest.statusReasonexamplemedicationRequest Status Reason Codes
MedicationRequest.intentrequiredmedicationRequest Intent
MedicationRequest.categoryexamplemedicationRequest Category Codes
MedicationRequest.priorityrequiredRequestPriority
MedicationRequest.medication[x]exampleSNOMEDCTMedicationCodes
MedicationRequest.subject.typeextensibleResourceType
MedicationRequest.requester.typeextensibleResourceType
MedicationRequest.performerTypeexampleProcedurePerformerRoleCodes
MedicationRequest.reasonCodeexampleCondition/Problem/DiagnosisCodes
MedicationRequest.courseOfTherapyTypeexamplemedicationRequest Course of Therapy Codes
MedicationRequest.substitution.allowed[x]exampleActSubstanceAdminSubstitutionCode
MedicationRequest.substitution.allowed[x]:allowedCodeableConceptpreferredActSubstanceAdminSubstitutionCode
MedicationRequest.substitution.reasonexampleSubstanceAdminSubstitutionReason

Constraints

IdGradePath(s)DetailsRequirements
ch-dosage-3errorMedicationRequest.dosageInstruction:baseEntryPatient instruction/free text dosage instruction, timing or as needed has to be specified
: patientInstruction.exists() or timing.exists() or asNeeded.exists()
ch-dosage-4errorMedicationRequest.dosageInstruction:baseEntryFor split dosage timing event and dose/rate are required
: sequence.exists() implies (timing.repeat.when.exists() and doseAndRate.dose.exists())
dom-2errorMedicationRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationRequestIf 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-4errorMedicationRequestIf 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-5errorMedicationRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationRequestA 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 MedicationRequest

Summary

Mandatory: 10 elements
Fixed Value: 1 element

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element MedicationRequest.medication[x] is sliced based on the value of type:$this
  • The element MedicationRequest.dosageInstruction is sliced based on the value of profile:$this (Closed)
  • The element MedicationRequest.substitution.allowed[x] is sliced based on the value of type:$this

 

Other representations of profile: CSV, Excel, Schematron