Guide d'implémentation du GT Standards et Interopérabilité pour les EDS
0.1.0 - ci-build France flag

Guide d'implémentation du GT Standards et Interopérabilité pour les EDS - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: FrMedicationUcdPart - Detailed Descriptions

Draft as of 2025-01-23

Definitions for the FrMedicationUcdPart resource profile.

Guidance on how to interpret the contents of this table can be found here

0. Medication
Definition

This resource is primarily used for the identification and definition of a medication for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use.

ShortDefinition of a Medication
Control0..*
Is Modifierfalse
Summaryfalse
Invariantsdom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
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 (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-4: If 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-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
dom-6: A resource should have narrative for robust management (text.`div`.exists())
2. Medication.implicitRules
Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

ShortA set of rules under which this content was created
Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

Control0..1
Typeuri
Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. Medication.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

ShortExtensions that cannot be ignored
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..*
TypeExtension
Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
Summaryfalse
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
6. Medication.code
Definition

A short relevant text to discern each part.


A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems.

ShortShort text that identifies this branded medication partCodes that identify this medication
Comments

No code assigned by the regultory authorities, use a short relevant text to discern each part.


Depending on the context of use, the code that was actually selected by the user (prescriber, dispenser, etc.) will have the coding.userSelected set to true. As described in the coding datatype: "A coding may be marked as a "userSelected" if a user selected the particular coded value in a user interface (e.g. the user selects an item in a pick-list). If a user selected coding exists, it is the preferred choice for performing translations etc. Other codes can only be literal translations to alternative code systems, or codes at a lower level of granularity (e.g. a generic code for a vendor-specific primary one).

Control0..1
BindingFor example codes, see SNOMEDCTMedicationCodeshttp://hl7.org/fhir/ValueSet/medication-codes
(example to http://hl7.org/fhir/ValueSet/medication-codes)

A coded concept that defines the type of a medication.

TypeCodeableConcept
Is Modifierfalse
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
8. Medication.code.coding
Definition

Code for the part : no code assigned by the regultory authorities


A reference to a code defined by a terminology system.

ShortCode defined by a terminology system
Comments

No code but a short text depicting the part. For instance, white tablet for a proprietary named medication made of white tablets and blue tablets


Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

Control0..0*
TypeCoding
Is Modifierfalse
Summarytrue
Requirements

No code but a text descripting the part.


Allows for alternative encodings within a code system, and translations to other code systems.

Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
10. Medication.code.text
Definition

No regulatory authority label but a text descripting the part. It is a short text, relevant enough to discern the different parts of the medication.


A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.

ShortShort plain text representation of the partPlain text representation of the concept
Comments

A short text, relevant enough to discern the different parts of the medication.


Very often the text is the same as a displayName of one of the codings.

Control10..1
Typestring
Is Modifierfalse
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Summarytrue
Requirements

This is the only way for identifing the part to the medication. However it is not an absolute idenfication.


The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.

Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
12. Medication.status
Definition

A code to indicate if the medication is in active use.

Shortactive | inactive | entered-in-error
Comments

This status is intended to identify if the medication in a local system is in active use within a drug database or inventory. For example, a pharmacy system may create a new drug file record for a compounded product "ABC Hospital Special Cream" with an active status. At some point in the future, it may be determined that the drug record was created with an error and the status is changed to "entered in error". This status is not intended to specify if a medication is part of a particular formulary. It is possible that the drug record may be referenced by multiple formularies or catalogues and each of those entries would have a separate status.

Control0..1
BindingThe codes SHALL be taken from Medication Status Codeshttp://hl7.org/fhir/ValueSet/medication-status|4.0.1
(required to http://hl7.org/fhir/ValueSet/medication-status|4.0.1)

A coded concept defining if the medication is in active use.

Typecode
Is Modifiertrue because This element changes the interpretation of all descriptive attributes.
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
14. Medication.manufacturer
Definition

No distinct manufacturer for each part of the medication


Describes the details of the manufacturer of the medication product. This is not intended to represent the distributor of a medication product.

ShortManufacturer of the item
Comments

No distinct manufacturer for each part. Each part inherits the whole medication manufacturer.

Control0..01
TypeReference(Organization)
Is Modifierfalse
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
16. Medication.form
Definition

Describes the form of the item. Powder; tablets; capsule.

Shortpowder | tablets | capsule +
Comments

This is the defined dose form of this part of the branded medication.


When Medication is referenced from MedicationRequest, this is the ordered form. When Medication is referenced within MedicationDispense, this is the dispensed form. When Medication is referenced within MedicationAdministration, this is administered form.

Control10..1
BindingUnless not suitable, these codes SHALL be taken from For example codes, see French Medicinal product Dose formhttp://hl7.org/fhir/ValueSet/medication-form-codes
(extensible to https://interop.esante.gouv.fr/ig/fhir/eds/ValueSet/FrMpDoseForm)
TypeCodeableConcept
Is Modifierfalse
Summaryfalse
Requirements

The dose form of the part is always defined and SHALL be provided.

Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
18. Medication.ingredient
Definition

Identifies a particular constituent of interest in the product.

ShortActive or inactive ingredient
Comments

For the active ingedients, the medication contains ALL the ingredients and ONLY the ingredients.


The ingredients need not be a complete list. If an ingredient is not specified, this does not indicate whether an ingredient is present or absent. If an ingredient is specified it does not mean that all ingredients are specified. It is possible to specify both inactive and active ingredients.

Control0..*
TypeBackboneElement
Is Modifierfalse
Summaryfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
20. Medication.ingredient.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

ShortExtensions that cannot be ignored even if unrecognized
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..*
TypeExtension
Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
Summarytrue
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Alternate Namesextensions, user content, modifiers
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
22. Medication.ingredient.item[x]
Definition

The actual substance or sub-part of the part of the branded medication.


The actual ingredient - either a substance (simple ingredient) or another medication of a medication.

ShortThe actual substance or sub-part of the partThe actual ingredient or content
Comments

Most of the few multi-part branded medication have a single level of parts with no sub-parts. For instance, a white tablet and a bue tablet. The item[x].refeence(FrMedicationUcdPart) is intende to describe the very few more complex multipart branded medications.

Control1..1
TypeChoice of: CodeableConcept, Reference(French Ucd Part Medication, Substance, Medication)
[x] NoteSeeChoice of Data Typesfor further information about how to use [x]
Is Modifierfalse
Summaryfalse
Requirements

Support of french multi-part branded medication identfied by a code UDC.


The ingredient may reference a substance (for example, amoxicillin) or another medication (for example in the case of a compounded product, Glaxal Base).

Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
24. Medication.ingredient.strength
Definition

Specifies how much subtance of the item[x]:codeableConcept(snomedSubstance) or how many of the item[x]:refernce(FrMedciationUcdPart) there are in this FrMedicationUcdPart


Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet.

ShortQuantity of ingredient present
Comments

The quantity of this ingredient defining the medication. For instance, 50 mg/mL defining the glucose quantity for the glucose 5% or 500 mg medicine and 30 mg respectively defining the paracetamol and the codeine quantity for the association paracetamol+codeine 500 mg+30 mg medicine.

Control0..1
TypeRatio(Ratio with UCUM quantity units)
Is Modifierfalse
Summaryfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
26. Medication.batch
Definition

This applies for the proprietary named medication involved in a MedicationDispense, MedicationAdministration or a MedicationUse.


Information that only applies to packages (not products).

ShortDetails about packaged medications
Comments

WARNING: it is the batch number of the part. If it is not discerned for each part, it SHALL NOT be provided here but at the grouping level where it is defined, most often the UCD.

Control0..1
TypeBackboneElement
Is Modifierfalse
Summaryfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
28. Medication.batch.modifierExtension
Definition

May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

ShortExtensions that cannot be ignored even if unrecognized
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..*
TypeExtension
Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
Summarytrue
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Alternate Namesextensions, user content, modifiers
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())