Finnish Base Profiles
2.0.0-rc1 - ballot Finland flag

This page is part of the Finnish Base Profiles (v2.0.0-rc1: STU 2 Ballot 1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: FI Base Medication

Official URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication Version: 2.0.0-rc1
Draft as of 2025-02-06 Computable Name: FiBaseMedication

This is the Finnish base profile for the Medication resource for other than patient access use cases.

Scope and Usage

The FI Base Medication derives from the Medication profile of the International Patient Access specification.

See also the Medication Codes section on the terminology page of this guide, and the Medications Module of the main FHIR specification.

For all medication related resources (Medication, MedicationAdministration, MedicationRequest, MedicationStatement), please also see the Prescription project and the related implementation guide of the Kanta system. That project contains useful definitions, examples, and sequence descriptions (mostly in Finnish).

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. Medication 0..* Medication Definition of a Medication
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... status ?!Σ 0..1 code active | inactive | entered-in-error
Binding: Medication Status Codes (required): A coded concept defining if the medication is in active use.


ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Medication.statusrequiredMedication Status Codes
http://hl7.org/fhir/ValueSet/medication-status|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorMedicationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorMedicationIf 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-4errorMedicationIf 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-5errorMedicationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceMedicationA 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()

 

Other representations of profile: CSV, Excel, Schematron