eMediplan CHMED20AF Implementation Guide:

This page is part of the eMediplan CHMED20AF FHIR IG (R4) (v2.0.0: STU 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions

StructureDefinition: chmed20af-medication

Formal Views of Profile Content

The official URL for this profile is:

http://chmed20af.emediplan.ch/fhir/StructureDefinition/chmed20af-medication

Profile on Medication

This profile builds on CHEMEDMedication.

This profile was published on Wed Jun 30 14:02:48 CEST 2021 as a draft by IG eMediplan.

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

This structure is derived from CHEMEDMedication

Summary

Must-Support: 18 elements

This structure is derived from CHEMEDMedication

NameFlagsCard.TypeDescription & Constraintsdoco
.. Medication 0..*CHEMEDMedicationDefinition of a Medication
... code S0..1CodeableConceptCodes that identify this medication
.... coding S0..*CodingCode of the medication (GTIN)
.... coding:GTIN S0..*CodingCode defined by a terminology system
..... system S1..1uriGlobal Trade Item Number (GS1)
..... code S1..1codeSymbol in syntax defined by the system
..... display S1..1stringRepresentation defined by the system
.... text S1..1stringMedication name
... form S0..1CodeableConceptGalenic form
.... coding S1..*CodingCode defined by a terminology system
..... system S1..1uriIdentity of the terminology system
..... code S1..1codeSymbol in syntax defined by the system
..... display S1..1stringRepresentation defined by the system
... amount S0..1CHEMEDRatioWithEmedUnitsPackage size
... ingredient S0..*BackboneElementActive or inactive ingredient
.... itemCodeableConcept S1..1CodeableConceptThe actual ingredient or content
..... coding S0..*CodingIngredients coded with SNOMED CT
..... text S1..1stringIngredient name
.... strength S0..1CHEMEDRatioWithEmedUnitsDose per unit

doco Documentation for this format

This structure is derived from CHEMEDMedication

NameFlagsCard.TypeDescription & Constraintsdoco
.. Medication I0..*CHEMEDMedicationDefinition of a Medication
... id Σ0..1stringLogical 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)
Max Binding: AllLanguages: A human language.

... text 0..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 Σ0..*IdentifierBusiness identifier for this medication
... code SΣ0..1CodeableConceptCodes that identify this medication
Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication.

.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding SΣ0..*CodingCode of the medication (GTIN)
Slice: Unordered, Open by value:system
..... coding:GTIN SΣ0..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ1..1uriGlobal Trade Item Number (GS1)
Fixed Value: urn:oid:2.51.1.1
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
...... display SΣ1..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text SΣ1..1stringMedication name
... status ?!Σ0..1codeactive | inactive | entered-in-error
Binding: Medication Status Codes (required): A coded concept defining if the medication is in active use.

... manufacturer Σ0..1Reference(Organization)Manufacturer of the item
... form S0..1CodeableConceptGalenic form
Binding: EDQM - Pharmaceutical Dose Form (required)
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ1..*CodingCode defined by a terminology system
..... id 0..1stringUnique id for inter-element referencing
..... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣ1..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code SΣ1..1codeSymbol in syntax defined by the system
..... display SΣ1..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... amount SI0..1CHEMEDRatioWithEmedUnitsPackage size
... ingredient S0..*BackboneElementActive or inactive ingredient
.... 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 item[x] 1..1CodeableConceptThe actual ingredient or content
Slice: Unordered, Closed by type:$this
..... item[x]:itemCodeableConcept S1..1CodeableConceptThe actual ingredient or content
...... id 0..1stringUnique id for inter-element referencing
...... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ0..*CodingIngredients coded with SNOMED CT
Binding: ActivePharmaceuticalIngredient (extensible)
...... text SΣ1..1stringIngredient name
.... isActive 0..1booleanActive ingredient indicator
.... strength SI0..1CHEMEDRatioWithEmedUnitsDose per unit
... batch 0..1BackboneElementDetails about packaged medications
.... 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
.... lotNumber 0..1stringIdentifier assigned to batch
.... expirationDate 0..1dateTimeWhen batch will expire

doco Documentation for this format

This structure is derived from CHEMEDMedication

NameFlagsCard.TypeDescription & Constraintsdoco
.. Medication I0..*CHEMEDMedicationDefinition of a Medication
... code Σ0..1CodeableConceptCodes that identify this medication
Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication.

.... Slices for coding Σ0..*CodingCode of the medication (GTIN)
Slice: Unordered, Open by value:system
..... coding:GTIN Σ0..*CodingCode defined by a terminology system
...... system Σ1..1uriGlobal Trade Item Number (GS1)
Fixed Value: urn:oid:2.51.1.1
...... code Σ1..1codeSymbol in syntax defined by the system
...... display Σ1..1stringRepresentation defined by the system
.... text Σ1..1stringMedication name
... form 0..1CodeableConceptGalenic form
Binding: EDQM - Pharmaceutical Dose Form (required)
.... coding Σ1..*CodingCode defined by a terminology system
..... system Σ1..1uriIdentity of the terminology system
..... code Σ1..1codeSymbol in syntax defined by the system
..... display Σ1..1stringRepresentation defined by the system
... amount I0..1CHEMEDRatioWithEmedUnitsPackage size
... ingredient 0..*BackboneElementActive or inactive ingredient
.... item[x]:itemCodeableConcept 1..1CodeableConceptThe actual ingredient or content
..... coding Σ0..*CodingIngredients coded with SNOMED CT
Binding: ActivePharmaceuticalIngredient (extensible)
..... text Σ1..1stringIngredient name
.... strength I0..1CHEMEDRatioWithEmedUnitsDose per unit

doco Documentation for this format

This structure is derived from CHEMEDMedication

Summary

Must-Support: 18 elements

Differential View

This structure is derived from CHEMEDMedication

NameFlagsCard.TypeDescription & Constraintsdoco
.. Medication 0..*CHEMEDMedicationDefinition of a Medication
... code S0..1CodeableConceptCodes that identify this medication
.... coding S0..*CodingCode of the medication (GTIN)
.... coding:GTIN S0..*CodingCode defined by a terminology system
..... system S1..1uriGlobal Trade Item Number (GS1)
..... code S1..1codeSymbol in syntax defined by the system
..... display S1..1stringRepresentation defined by the system
.... text S1..1stringMedication name
... form S0..1CodeableConceptGalenic form
.... coding S1..*CodingCode defined by a terminology system
..... system S1..1uriIdentity of the terminology system
..... code S1..1codeSymbol in syntax defined by the system
..... display S1..1stringRepresentation defined by the system
... amount S0..1CHEMEDRatioWithEmedUnitsPackage size
... ingredient S0..*BackboneElementActive or inactive ingredient
.... itemCodeableConcept S1..1CodeableConceptThe actual ingredient or content
..... coding S0..*CodingIngredients coded with SNOMED CT
..... text S1..1stringIngredient name
.... strength S0..1CHEMEDRatioWithEmedUnitsDose per unit

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Medication I0..*CHEMEDMedicationDefinition of a Medication
... id Σ0..1stringLogical 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)
Max Binding: AllLanguages: A human language.

... text 0..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 Σ0..*IdentifierBusiness identifier for this medication
... code SΣ0..1CodeableConceptCodes that identify this medication
Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication.

.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding SΣ0..*CodingCode of the medication (GTIN)
Slice: Unordered, Open by value:system
..... coding:GTIN SΣ0..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ1..1uriGlobal Trade Item Number (GS1)
Fixed Value: urn:oid:2.51.1.1
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
...... display SΣ1..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text SΣ1..1stringMedication name
... status ?!Σ0..1codeactive | inactive | entered-in-error
Binding: Medication Status Codes (required): A coded concept defining if the medication is in active use.

... manufacturer Σ0..1Reference(Organization)Manufacturer of the item
... form S0..1CodeableConceptGalenic form
Binding: EDQM - Pharmaceutical Dose Form (required)
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ1..*CodingCode defined by a terminology system
..... id 0..1stringUnique id for inter-element referencing
..... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system SΣ1..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code SΣ1..1codeSymbol in syntax defined by the system
..... display SΣ1..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... amount SI0..1CHEMEDRatioWithEmedUnitsPackage size
... ingredient S0..*BackboneElementActive or inactive ingredient
.... 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 item[x] 1..1CodeableConceptThe actual ingredient or content
Slice: Unordered, Closed by type:$this
..... item[x]:itemCodeableConcept S1..1CodeableConceptThe actual ingredient or content
...... id 0..1stringUnique id for inter-element referencing
...... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ0..*CodingIngredients coded with SNOMED CT
Binding: ActivePharmaceuticalIngredient (extensible)
...... text SΣ1..1stringIngredient name
.... isActive 0..1booleanActive ingredient indicator
.... strength SI0..1CHEMEDRatioWithEmedUnitsDose per unit
... batch 0..1BackboneElementDetails about packaged medications
.... 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
.... lotNumber 0..1stringIdentifier assigned to batch
.... expirationDate 0..1dateTimeWhen batch will expire

doco Documentation for this format

 

Terminology Bindings

PathConformanceValueSet
Medication.languagepreferredCommonLanguages
Max Binding: AllLanguages
Medication.codeexampleSNOMEDCTMedicationCodes
Medication.statusrequiredMedication Status Codes
Medication.formrequiredPharmaceuticalDoseFormEDQM
Medication.ingredient.item[x]:itemCodeableConcept.codingextensibleActivePharmaceuticalIngredient

Constraints

IdPathDetailsRequirements
dom-2MedicationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3MedicationIf 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-4MedicationIf 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-5MedicationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6MedicationA resource should have narrative for robust management
: text.`div`.exists()
ch-emed-med-1MedicationMedication or ingredient name has to be specified
: code.text.exists() or ingredient.itemCodeableConcept.text.exists()
ele-1Medication.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.code.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.code.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.coding:GTINAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.coding:GTIN.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.code.coding:GTIN.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.code.coding:GTIN.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.coding:GTIN.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.coding:GTIN.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.coding:GTIN.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.coding:GTIN.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.code.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.manufacturerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.formAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.form.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.form.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.form.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.form.coding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.form.coding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.form.coding.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.form.coding.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.form.coding.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.form.coding.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.form.coding.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.form.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.amountAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
rat-1Medication.amountNumerator and denominator SHALL both be present, or both are absent. If both are absent, there SHALL be some extension present
: (numerator.empty() xor denominator.exists()) and (numerator.exists() or extension.exists())
ele-1Medication.ingredientAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.ingredient.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.ingredient.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.ingredient.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.ingredient.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.ingredient.item[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.ingredient.item[x]:itemCodeableConceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.ingredient.item[x]:itemCodeableConcept.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.ingredient.item[x]:itemCodeableConcept.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.ingredient.item[x]:itemCodeableConcept.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.ingredient.item[x]:itemCodeableConcept.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.ingredient.isActiveAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.ingredient.strengthAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
rat-1Medication.ingredient.strengthNumerator and denominator SHALL both be present, or both are absent. If both are absent, there SHALL be some extension present
: (numerator.empty() xor denominator.exists()) and (numerator.exists() or extension.exists())
ele-1Medication.batchAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.batch.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.batch.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.batch.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Medication.batch.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Medication.batch.lotNumberAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Medication.batch.expirationDateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
.