CH ELM (R4)
1.14.0-cibuild - ci-build Switzerland flag

CH ELM (R4), published by Federal Office of Public Health FOPH. This guide is not an authorized publication; it is the continuous build for version 1.14.0-cibuild built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/ahdis/ch-elm/ and changes regularly. See the Directory of published versions

Data Type Profile: ChElmCodeableConcept - Detailed Descriptions

Active as of 2026-01-06

Definitions for the ch-elm-codeableconcept data type profile.

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

0. CodeableConcept
Definition

A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

ShortConcept - reference to a terminology or just text
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Control0..*
This element is affected by the following invariants: ele-1
Is Modifierfalse
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
2. CodeableConcept.coding
Definition

A reference to a code defined by a terminology system.

ShortCode defined by a terminology system
Comments

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.

Control10..1*
TypeCoding(CH ELM Coding)
Is Modifierfalse
Must Supporttrue
Obligations
    ObligationsActorSource
    SHALL:populate-if-knownCreator (IPS)from Codeable Concept (IPS)
    SHALL:handleConsumer (IPS)from Codeable Concept (IPS)
    Summarytrue
    Requirements

    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()))
    4. CodeableConcept.text
    Definition

    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.

    ShortPlain text representation of the concept
    Comments

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

    Control0..1
    Typestring
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Obligations
      ObligationsActorSource
      SHALL:populate-if-knownCreator (IPS)from Codeable Concept (IPS)
      SHALL:handleConsumer (IPS)from Codeable Concept (IPS)
      SHOULD:displayConsumer (IPS)from Codeable Concept (IPS)
      Summarytrue
      Requirements

      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()))
      6. CodeableConcept.text.extension:translation
      Slice Nametranslation
      Definition

      Language translation from base language of resource to another language, used to provide translations for strings, including markdown. Generally, the type of the translation extension SHOULD match that of the element being extended.

      ShortLanguage Translation (Localization)
      Control0..*
      This element is affected by the following invariants: ele-1
      TypeExtension(Translation) (Complex Extension)
      Is Modifierfalse
      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())

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

      0. CodeableConcept
      2. CodeableConcept.coding
      Control1..1
      TypeCoding(CH ELM Coding)

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

      0. CodeableConcept
      Definition

      A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.

      ShortConcept - reference to a terminology or just text
      Comments

      Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

      Control0..*
      This element is affected by the following invariants: ele-1
      Is Modifierfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      2. CodeableConcept.id
      Definition

      Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

      ShortUnique id for inter-element referencing
      Control0..1
      Typestring
      Is Modifierfalse
      XML FormatIn the XML format, this property is represented as an attribute.
      Summaryfalse
      4. CodeableConcept.extension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element. 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.

      ShortAdditional content defined by implementations
      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 Modifierfalse
      Summaryfalse
      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())
      SlicingThis element introduces a set of slices on CodeableConcept.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • value @ url
      • 6. CodeableConcept.coding
        Definition

        A reference to a code defined by a terminology system.

        ShortCode defined by a terminology system
        Comments

        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.

        Control1..1
        TypeCoding(CH ELM Coding)
        Is Modifierfalse
        Must Supporttrue
        Obligations
          ObligationsActorSource
          SHALL:populate-if-knownCreator (IPS)from Codeable Concept (IPS)
          SHALL:handleConsumer (IPS)from Codeable Concept (IPS)
          Summarytrue
          Requirements

          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()))
          8. CodeableConcept.text
          Definition

          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.

          ShortPlain text representation of the concept
          Comments

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

          Control0..1
          Typestring
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Must Supporttrue
          Obligations
            ObligationsActorSource
            SHALL:populate-if-knownCreator (IPS)from Codeable Concept (IPS)
            SHALL:handleConsumer (IPS)from Codeable Concept (IPS)
            SHOULD:displayConsumer (IPS)from Codeable Concept (IPS)
            Summarytrue
            Requirements

            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()))
            10. CodeableConcept.text.id
            Definition

            unique id for the element within a resource (for internal references)

            Shortxml:id (or equivalent in JSON)
            Control0..1
            Typestring
            Is Modifierfalse
            XML FormatIn the XML format, this property is represented as an attribute.
            Summaryfalse
            12. CodeableConcept.text.extension
            Definition

            An Extension

            ShortExtension
            Control0..*
            TypeExtension
            Is Modifierfalse
            Summaryfalse
            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())
            SlicingThis element introduces a set of slices on CodeableConcept.text.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
            • value @ url
            • 14. CodeableConcept.text.extension:translation
              Slice Nametranslation
              Definition

              Language translation from base language of resource to another language, used to provide translations for strings, including markdown. Generally, the type of the translation extension SHOULD match that of the element being extended.

              ShortLanguage Translation (Localization)
              Control0..*
              This element is affected by the following invariants: ele-1
              TypeExtension(Translation) (Complex Extension)
              Is Modifierfalse
              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())
              16. CodeableConcept.text.value
              Definition

              The actual value

              ShortPrimitive value for string
              Control0..1
              Typestring
              Is Modifierfalse
              XML FormatIn the XML format, this property is represented as an attribute.
              Summaryfalse
              Max Length:1048576