Medication

The Medication profile is simply that from IPS (STU1):

  • Profile status: Active
  • Canonical URL: http://hl7.org/fhir/uv/ips/StructureDefinition/Medication-uv-ips

Use of resource in Smart4Health

Medication resource are used to capture details about a medication, independent of a specific use case. The level of provided detail may vary significantly, from just providing the class of the active substance in the ATC classification system to providing a full list of ingredients, information about the packaging and the physical form of the medication etc.

In individual countries, medications are often assigned codes in a national medication code system, e.g. the PZN-system in Germany or RxNorm in the US. While such codes allows systematic identification of specific medications within the given country, they are much less useful outside this national context. For this reason, specific guidelines for creating Medication resources in the Smart4Health context are provided below.

Relation to other Medication profiles

The Smart4Health project simply re-uses the Medication profile from the International Patient Summary (STU1).

Guidance on filling Medication instances

These guidelines are intended to help make Medication resources as interoperable as possible across national boundaries.

  • Whenever possible, avoid relying solely on national codes (e.g. PZN in Germany) for communicating details about the medication. It is preferable to also "spell out" this information using the individual fields (ingredients, form etc.) to make it accessible to systems that do not know the national codes.
  • Wherever possible, include codes from international code systems (e.g. SNOMED, ATC, or EDQM) to allow interpretation outside the country of origin. This is particularly important for the medication.code element. The IPS Medication profile indicates how to use of these international systems using slices and preferred bindings.
  • Even if an international code is available for a CodeableConcept element, you are encouraged to also include additional codes from other systems. Even nation-specific codes can be valuable if the data consumer is from the same country.
  • When filling fields of type CodeableConcept, try to always fill the CodeableConcept.coding.display element for individual codes, as well as the overall CodeableConcept.text field.
  • Note that the slicing of the Medication.code element merely represent guidance on how one should include codes from ATC and SNOMED, respectively. They do not imply that one must use these systems. The required binding defined in these slice only apply "inside" the slices - the slices themselves are not required and can be left out. See also the discussion of this in the IPS IG.

Mandatory and must-support data elements

A valid instance according to this profile must satisfy the following constraints:

  • have a code (element: code) - IPS constraint

Note that the ingredient.strength element is restricted to follow the IPS profile for the Ratio data type, meaning that the units must be from the UCUM system.

In addition, 9 top-level elements are marked as must-support.

Examples

Formal views of profile content

Differential view

Shows only differences relative to the base resource definition.

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
identifierΣ0..*Identifier
atcClassS Σ0..1Codeable Concept (IPS)Binding
snomedS Σ0..1Codeable Concept (IPS)Binding
statusΣ ?!0..1codeBinding
manufacturerΣ I0..1Reference(Organization)
formS0..1Codeable Concept (IPS)Binding
amountΣ I0..1Ratio
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
itemReferenceReference(Substance | Medication)
id0..1string
extensionI0..*Extension
codingS Σ0..*Coding with translations
textS Σ0..1string
isActive0..1boolean
strengthS I0..1Ratio (IPS)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
lotNumber0..1string
expirationDate0..1dateTime

Snapshot view

Shows all constraints, including those from underlying profiles and the base resource definition.

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
identifierΣ0..*Identifier
atcClassS Σ0..1Codeable Concept (IPS)Binding
snomedS Σ0..1Codeable Concept (IPS)Binding
statusΣ ?!0..1codeBinding
manufacturerΣ I0..1Reference(Organization)
formS0..1Codeable Concept (IPS)Binding
amountΣ I0..1Ratio
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
itemReferenceReference(Substance | Medication)
id0..1string
extensionI0..*Extension
codingS Σ0..*Coding with translations
textS Σ0..1string
isActive0..1boolean
strengthS I0..1Ratio (IPS)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
lotNumber0..1string
expirationDate0..1dateTime