Extensions for Using Data Elements from FHIR R4 in FHIR R4B
0.1.0 - STU International flag

Extensions for Using Data Elements from FHIR R4 in FHIR R4B - Downloaded Version null See the Directory of published versions

Resource Profile: Profile_R4_SubstanceSpecification_R4B_SubstanceDefinition - Detailed Descriptions

Page standards status: Trial-use Maturity Level: 0

Definitions for the profile-SubstanceSpecification-for-SubstanceDefinition resource profile.

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

0. SubstanceDefinition
Definition

The detailed description of a substance, typically at a level beyond what is used for prescribing.

ShortThe detailed description of a substance, typically at a level beyond what is used for prescribing
Control0..*
Is Modifierfalse
Must Supportfalse
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.exists() and ('#'+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(uri) = '#').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())
dom-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.exists() and ('#'+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(uri) = '#').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. SubstanceDefinition.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
Must Supportfalse
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. SubstanceDefinition.extension
Definition

An Extension


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

ShortExtensionAdditional 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
Must Supportfalse
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())
ele-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 SubstanceDefinition.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ url
  • 6. SubstanceDefinition.extension:type
    Slice Nametype
    Definition

    R4: SubstanceSpecification.type (new:CodeableConcept)

    ShortR4: High level categorization, e.g. polymer or nucleic acid (new)
    Comments

    Element SubstanceSpecification.type has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.type has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

    Control0..1
    This element is affected by the following invariants: ele-1
    TypeExtension(R4: High level categorization, e.g. polymer or nucleic acid (new)) (Extension Type: CodeableConcept)
    Is Modifierfalse
    Must Supportfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-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())
    8. SubstanceDefinition.extension:source
    Slice Namesource
    Definition

    R4: SubstanceSpecification.source (new:Reference(DocumentReference))

    ShortR4: Supporting literature (new)
    Comments

    Element SubstanceSpecification.source has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.source has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

    Control0..*
    This element is affected by the following invariants: ele-1
    TypeExtension(R4: Supporting literature (new)) (Extension Type: Reference(Cross-version Profile for R4.DocumentReference for use in FHIR R4B, DocumentReference))
    Is Modifierfalse
    Must Supportfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-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())
    10. SubstanceDefinition.extension:comment
    Slice Namecomment
    Definition

    R4: SubstanceSpecification.comment (new:string)

    ShortR4: Textual comment about this record of a substance (new)
    Comments

    Element SubstanceSpecification.comment has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.comment has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

    Control0..1
    This element is affected by the following invariants: ele-1
    TypeExtension(R4: Textual comment about this record of a substance (new)) (Extension Type: string)
    Is Modifierfalse
    Must Supportfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-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())
    12. SubstanceDefinition.extension:referenceInformation
    Slice NamereferenceInformation
    Definition

    R4: SubstanceSpecification.referenceInformation (new:Reference(SubstanceReferenceInformation))

    ShortR4: General information detailing this substance (new)
    Comments

    Element SubstanceSpecification.referenceInformation has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.referenceInformation has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

    Control0..1
    This element is affected by the following invariants: ele-1
    TypeExtension(R4: General information detailing this substance (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceReferenceInformation for use in FHIR R4B, Basic))
    Is Modifierfalse
    Must Supportfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-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())
    14. SubstanceDefinition.extension:nucleicAcid
    Slice NamenucleicAcid
    Definition

    R4: SubstanceSpecification.nucleicAcid (new:Reference(SubstanceNucleicAcid))

    ShortR4: Data items specific to nucleic acids (new)
    Comments

    Element SubstanceSpecification.nucleicAcid has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.nucleicAcid has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

    Control0..1
    This element is affected by the following invariants: ele-1
    TypeExtension(R4: Data items specific to nucleic acids (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceNucleicAcid for use in FHIR R4B, Basic))
    Is Modifierfalse
    Must Supportfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-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. SubstanceDefinition.extension:polymer
    Slice Namepolymer
    Definition

    R4: SubstanceSpecification.polymer (new:Reference(SubstancePolymer))

    ShortR4: Data items specific to polymers (new)
    Comments

    Element SubstanceSpecification.polymer has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.polymer has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

    Control0..1
    This element is affected by the following invariants: ele-1
    TypeExtension(R4: Data items specific to polymers (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstancePolymer for use in FHIR R4B, Basic))
    Is Modifierfalse
    Must Supportfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-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())
    18. SubstanceDefinition.extension:protein
    Slice Nameprotein
    Definition

    R4: SubstanceSpecification.protein (new:Reference(SubstanceProtein))

    ShortR4: Data items specific to proteins (new)
    Comments

    Element SubstanceSpecification.protein has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.protein has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

    Control0..1
    This element is affected by the following invariants: ele-1
    TypeExtension(R4: Data items specific to proteins (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceProtein for use in FHIR R4B, Basic))
    Is Modifierfalse
    Must Supportfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ele-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())
    20. SubstanceDefinition.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
    Must Supportfalse
    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())
    ele-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. SubstanceDefinition
    2. SubstanceDefinition.extension
    Control0..*
    SlicingThis element introduces a set of slices on SubstanceDefinition.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ url
    • 4. SubstanceDefinition.extension:type
      Slice Nametype
      Definition

      R4: SubstanceSpecification.type (new:CodeableConcept)

      ShortR4: High level categorization, e.g. polymer or nucleic acid (new)
      Comments

      Element SubstanceSpecification.type has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.type has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

      Control0..1
      TypeExtension(R4: High level categorization, e.g. polymer or nucleic acid (new)) (Extension Type: CodeableConcept)
      6. SubstanceDefinition.extension:source
      Slice Namesource
      Definition

      R4: SubstanceSpecification.source (new:Reference(DocumentReference))

      ShortR4: Supporting literature (new)
      Comments

      Element SubstanceSpecification.source has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.source has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

      Control0..*
      TypeExtension(R4: Supporting literature (new)) (Extension Type: Reference(Cross-version Profile for R4.DocumentReference for use in FHIR R4B, DocumentReference))
      8. SubstanceDefinition.extension:comment
      Slice Namecomment
      Definition

      R4: SubstanceSpecification.comment (new:string)

      ShortR4: Textual comment about this record of a substance (new)
      Comments

      Element SubstanceSpecification.comment has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.comment has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

      Control0..1
      TypeExtension(R4: Textual comment about this record of a substance (new)) (Extension Type: string)
      10. SubstanceDefinition.extension:referenceInformation
      Slice NamereferenceInformation
      Definition

      R4: SubstanceSpecification.referenceInformation (new:Reference(SubstanceReferenceInformation))

      ShortR4: General information detailing this substance (new)
      Comments

      Element SubstanceSpecification.referenceInformation has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.referenceInformation has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

      Control0..1
      TypeExtension(R4: General information detailing this substance (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceReferenceInformation for use in FHIR R4B, Basic))
      12. SubstanceDefinition.extension:nucleicAcid
      Slice NamenucleicAcid
      Definition

      R4: SubstanceSpecification.nucleicAcid (new:Reference(SubstanceNucleicAcid))

      ShortR4: Data items specific to nucleic acids (new)
      Comments

      Element SubstanceSpecification.nucleicAcid has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.nucleicAcid has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

      Control0..1
      TypeExtension(R4: Data items specific to nucleic acids (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceNucleicAcid for use in FHIR R4B, Basic))
      14. SubstanceDefinition.extension:polymer
      Slice Namepolymer
      Definition

      R4: SubstanceSpecification.polymer (new:Reference(SubstancePolymer))

      ShortR4: Data items specific to polymers (new)
      Comments

      Element SubstanceSpecification.polymer has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.polymer has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

      Control0..1
      TypeExtension(R4: Data items specific to polymers (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstancePolymer for use in FHIR R4B, Basic))
      16. SubstanceDefinition.extension:protein
      Slice Nameprotein
      Definition

      R4: SubstanceSpecification.protein (new:Reference(SubstanceProtein))

      ShortR4: Data items specific to proteins (new)
      Comments

      Element SubstanceSpecification.protein has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.protein has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

      Control0..1
      TypeExtension(R4: Data items specific to proteins (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceProtein for use in FHIR R4B, Basic))
      18. SubstanceDefinition.property
      20. SubstanceDefinition.property.extension
      Control0..*
      SlicingThis element introduces a set of slices on SubstanceDefinition.property.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • value @ url
      • 22. SubstanceDefinition.property.extension:category
        Slice Namecategory
        Definition

        R4: SubstanceSpecification.property.category (new:CodeableConcept)

        ShortR4: A category for this property, e.g. Physical, Chemical, Enzymatic (new)
        Comments

        Element SubstanceSpecification.property.category has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.category has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

        Control0..1
        TypeExtension(R4: A category for this property, e.g. Physical, Chemical, Enzymatic (new)) (Extension Type: CodeableConcept)
        24. SubstanceDefinition.property.extension:code
        Slice Namecode
        Definition

        R4: SubstanceSpecification.property.code (new:CodeableConcept)

        ShortR4: Property type e.g. viscosity, pH, isoelectric point (new)
        Comments

        Element SubstanceSpecification.property.code has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.code has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

        Control0..1
        TypeExtension(R4: Property type e.g. viscosity, pH, isoelectric point (new)) (Extension Type: CodeableConcept)
        26. SubstanceDefinition.property.extension:parameters
        Slice Nameparameters
        Definition

        R4: SubstanceSpecification.property.parameters (new:string)

        ShortR4: Parameters that were used in the measurement of a property (e.g. for viscosity: measured at 20C with a pH of 7.1) (new)
        Comments

        Element SubstanceSpecification.property.parameters has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.parameters has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

        Control0..1
        TypeExtension(R4: Parameters that were used in the measurement of a property (e.g. for viscosity: measured at 20C with a pH of 7.1) (new)) (Extension Type: string)
        28. SubstanceDefinition.property.extension:definingSubstance
        Slice NamedefiningSubstance
        Definition

        R4: SubstanceSpecification.property.definingSubstance[x] (new:CodeableConcept, Reference(SubstanceSpecification,Substance))

        ShortR4: A substance upon which a defining property depends (e.g. for solubility: in water, in alcohol) (new)
        Comments

        Element SubstanceSpecification.property.definingSubstance[x] has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.definingSubstance[x] has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

        Control0..1
        TypeExtension(R4: A substance upon which a defining property depends (e.g. for solubility: in water, in alcohol) (new)) (Extension Type: Choice of: Reference(Cross-version Profile for R4.SubstanceSpecification for use in FHIR R4B, SubstanceDefinition, Cross-version Profile for R4.Substance for use in FHIR R4B, Substance), CodeableConcept)
        30. SubstanceDefinition.property.extension:amount
        Slice Nameamount
        Definition

        R4: SubstanceSpecification.property.amount[x] (new:Quantity, string)

        ShortR4: Quantitative value for this property (new)
        Comments

        Element SubstanceSpecification.property.amount[x] has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.amount[x] has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

        Control0..1
        TypeExtension(R4: Quantitative value for this property (new)) (Extension Type: Choice of: Quantity, string)
        32. SubstanceDefinition.structure
        34. SubstanceDefinition.structure.extension
        Control0..*
        SlicingThis element introduces a set of slices on SubstanceDefinition.structure.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
        • value @ url
        • 36. SubstanceDefinition.structure.extension:isotope
          Slice Nameisotope
          Definition

          R4: SubstanceSpecification.structure.isotope (new:BackboneElement)

          ShortR4: Applicable for single substances that contain a radionuclide or a non-natural isotopic ratio (new)
          Comments

          Element SubstanceSpecification.structure.isotope has a context of SubstanceDefinition.structure based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.structure.isotope has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

          Control0..*
          TypeExtension(R4: Applicable for single substances that contain a radionuclide or a non-natural isotopic ratio (new)) (Complex Extension)
          38. SubstanceDefinition.structure.extension:source
          Slice Namesource
          Definition

          R4: SubstanceSpecification.structure.source (new:Reference(DocumentReference))

          ShortR4: Supporting literature (new)
          Comments

          Element SubstanceSpecification.structure.source has a context of SubstanceDefinition.structure based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.structure.source has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

          Control0..*
          TypeExtension(R4: Supporting literature (new)) (Extension Type: Reference(Cross-version Profile for R4.DocumentReference for use in FHIR R4B, DocumentReference))
          40. SubstanceDefinition.structure.representation
          42. SubstanceDefinition.structure.representation.extension
          Control0..*
          SlicingThis element introduces a set of slices on SubstanceDefinition.structure.representation.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
          • value @ url
          • 44. SubstanceDefinition.structure.representation.extension:attachment
            Slice Nameattachment
            Definition

            R4: SubstanceSpecification.structure.representation.attachment (new:Attachment)

            ShortR4: An attached file with the structural representation (new)
            Comments

            Element SubstanceSpecification.structure.representation.attachment has a context of SubstanceDefinition.structure.representation based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.structure.representation.attachment has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

            Control0..1
            TypeExtension(R4: An attached file with the structural representation (new)) (Extension Type: Attachment)
            46. SubstanceDefinition.code
            48. SubstanceDefinition.code.extension
            Control0..*
            SlicingThis element introduces a set of slices on SubstanceDefinition.code.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
            • value @ url
            • 50. SubstanceDefinition.code.extension:comment
              Slice Namecomment
              Definition

              R4: SubstanceSpecification.code.comment (new:string)

              ShortR4: Any comment can be provided in this field, if necessary (new)
              Comments

              Element SubstanceSpecification.code.comment has a context of SubstanceDefinition.code based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.code.comment has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

              Control0..1
              TypeExtension(R4: Any comment can be provided in this field, if necessary (new)) (Extension Type: string)
              52. SubstanceDefinition.relationship
              54. SubstanceDefinition.relationship.extension
              Control0..*
              SlicingThis element introduces a set of slices on SubstanceDefinition.relationship.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
              • value @ url
              • 56. SubstanceDefinition.relationship.extension:substance
                Slice Namesubstance
                Definition

                R4: SubstanceSpecification.relationship.substance[x] (new:CodeableConcept, Reference(SubstanceSpecification))

                ShortR4: A pointer to another substance, as a resource or just a representational code (new)
                Comments

                Element SubstanceSpecification.relationship.substance[x] has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.substance[x] has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                Control0..1
                TypeExtension(R4: A pointer to another substance, as a resource or just a representational code (new)) (Extension Type: Choice of: Reference(Cross-version Profile for R4.SubstanceSpecification for use in FHIR R4B, SubstanceDefinition), CodeableConcept)
                58. SubstanceDefinition.relationship.extension:relationship
                Slice Namerelationship
                Definition

                R4: SubstanceSpecification.relationship.relationship (new:CodeableConcept)

                ShortR4: For example "salt to parent", "active moiety", "starting material" (new)
                Comments

                Element SubstanceSpecification.relationship.relationship has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.relationship has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                Control0..1
                TypeExtension(R4: For example "salt to parent", "active moiety", "starting material" (new)) (Extension Type: CodeableConcept)
                60. SubstanceDefinition.relationship.extension:amount
                Slice Nameamount
                Definition

                R4: SubstanceSpecification.relationship.amount[x] additional types (Range)

                ShortR4: A numeric factor for the relationship, for instance to express that the salt of a substance has some percentage of the active substance in relation to some other additional types
                Comments

                Element SubstanceSpecification.relationship.amount[x] is mapped to FHIR R4B element SubstanceDefinition.relationship.amount[x] as SourceIsBroaderThanTarget. The mappings for SubstanceSpecification.relationship.amount[x] do not cover the following types: Range. The target context SubstanceDefinition.relationship.amount[x] is a choice-type element and cannot directly hold extensions. The context is moved up to parent element SubstanceDefinition.relationship.

                Control0..1
                TypeExtension(R4: A numeric factor for the relationship, for instance to express that the salt of a substance has some percentage of the active substance in relation to some other additional types) (Extension Type: Range)
                62. SubstanceDefinition.relationship.extension:amountRatioLowLimit
                Slice NameamountRatioLowLimit
                Definition

                R4: SubstanceSpecification.relationship.amountRatioLowLimit (new:Ratio)

                ShortR4: For use when the numeric (new)
                Comments

                Element SubstanceSpecification.relationship.amountRatioLowLimit has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.amountRatioLowLimit has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                Control0..1
                TypeExtension(R4: For use when the numeric (new)) (Extension Type: Ratio)
                64. SubstanceDefinition.relationship.extension:amountType
                Slice NameamountType
                Definition

                R4: SubstanceSpecification.relationship.amountType (new:CodeableConcept)

                ShortR4: An operator for the amount, for example "average", "approximately", "less than" (new)
                Comments

                Element SubstanceSpecification.relationship.amountType has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.amountType has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                Control0..1
                TypeExtension(R4: An operator for the amount, for example "average", "approximately", "less than" (new)) (Extension Type: CodeableConcept)

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

                0. SubstanceDefinition
                Definition

                The detailed description of a substance, typically at a level beyond what is used for prescribing.

                ShortThe detailed description of a substance, typically at a level beyond what is used for prescribing
                Control0..*
                Is Modifierfalse
                Must Supportfalse
                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.exists() and ('#'+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(uri) = '#').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. SubstanceDefinition.id
                Definition

                The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

                ShortLogical id of this artifact
                Comments

                The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

                Control0..1
                Typeid
                Is Modifierfalse
                Must Supportfalse
                Summarytrue
                4. SubstanceDefinition.meta
                Definition

                The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

                ShortMetadata about the resource
                Control0..1
                TypeMeta
                Is Modifierfalse
                Must Supportfalse
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                6. SubstanceDefinition.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
                Must Supportfalse
                Summarytrue
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                8. SubstanceDefinition.language
                Definition

                The base language in which the resource is written.

                ShortLanguage of the resource content
                Comments

                Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

                Control0..1
                BindingThe codes SHOULD be taken from CommonLanguages
                (preferred to http://hl7.org/fhir/ValueSet/languages|4.3.0)

                IETF language tag

                Additional BindingsPurpose
                AllLanguagesMax Binding
                Typecode
                Is Modifierfalse
                Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                Must Supportfalse
                Summaryfalse
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                10. SubstanceDefinition.text
                Definition

                A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

                ShortText summary of the resource, for human interpretation
                Comments

                Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

                Control0..1
                TypeNarrative
                Is Modifierfalse
                Must Supportfalse
                Summaryfalse
                Alternate Namesnarrative, html, xhtml, display
                Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                12. SubstanceDefinition.contained
                Definition

                These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

                ShortContained, inline Resources
                Comments

                This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

                Control0..*
                TypeResource
                Is Modifierfalse
                Must Supportfalse
                Summaryfalse
                Alternate Namesinline resources, anonymous resources, contained resources
                Invariantsdom-r4b: Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems (($this is Citation or $this is Evidence or $this is EvidenceReport or $this is EvidenceVariable or $this is MedicinalProductDefinition or $this is PackagedProductDefinition or $this is AdministrableProductDefinition or $this is Ingredient or $this is ClinicalUseDefinition or $this is RegulatedAuthorization or $this is SubstanceDefinition or $this is SubscriptionStatus or $this is SubscriptionTopic) implies (%resource is Citation or %resource is Evidence or %resource is EvidenceReport or %resource is EvidenceVariable or %resource is MedicinalProductDefinition or %resource is PackagedProductDefinition or %resource is AdministrableProductDefinition or %resource is Ingredient or %resource is ClinicalUseDefinition or %resource is RegulatedAuthorization or %resource is SubstanceDefinition or %resource is SubscriptionStatus or %resource is SubscriptionTopic))
                14. SubstanceDefinition.extension
                Definition

                An Extension

                ShortExtension
                Control0..*
                TypeExtension
                Is Modifierfalse
                Must Supportfalse
                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 SubstanceDefinition.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                • value @ url
                • 16. SubstanceDefinition.extension:type
                  Slice Nametype
                  Definition

                  R4: SubstanceSpecification.type (new:CodeableConcept)

                  ShortR4: High level categorization, e.g. polymer or nucleic acid (new)
                  Comments

                  Element SubstanceSpecification.type has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.type has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                  Control0..1
                  This element is affected by the following invariants: ele-1
                  TypeExtension(R4: High level categorization, e.g. polymer or nucleic acid (new)) (Extension Type: CodeableConcept)
                  Is Modifierfalse
                  Must Supportfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  18. SubstanceDefinition.extension:source
                  Slice Namesource
                  Definition

                  R4: SubstanceSpecification.source (new:Reference(DocumentReference))

                  ShortR4: Supporting literature (new)
                  Comments

                  Element SubstanceSpecification.source has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.source has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                  Control0..*
                  This element is affected by the following invariants: ele-1
                  TypeExtension(R4: Supporting literature (new)) (Extension Type: Reference(Cross-version Profile for R4.DocumentReference for use in FHIR R4B, DocumentReference))
                  Is Modifierfalse
                  Must Supportfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  20. SubstanceDefinition.extension:comment
                  Slice Namecomment
                  Definition

                  R4: SubstanceSpecification.comment (new:string)

                  ShortR4: Textual comment about this record of a substance (new)
                  Comments

                  Element SubstanceSpecification.comment has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.comment has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                  Control0..1
                  This element is affected by the following invariants: ele-1
                  TypeExtension(R4: Textual comment about this record of a substance (new)) (Extension Type: string)
                  Is Modifierfalse
                  Must Supportfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  22. SubstanceDefinition.extension:referenceInformation
                  Slice NamereferenceInformation
                  Definition

                  R4: SubstanceSpecification.referenceInformation (new:Reference(SubstanceReferenceInformation))

                  ShortR4: General information detailing this substance (new)
                  Comments

                  Element SubstanceSpecification.referenceInformation has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.referenceInformation has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                  Control0..1
                  This element is affected by the following invariants: ele-1
                  TypeExtension(R4: General information detailing this substance (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceReferenceInformation for use in FHIR R4B, Basic))
                  Is Modifierfalse
                  Must Supportfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  24. SubstanceDefinition.extension:nucleicAcid
                  Slice NamenucleicAcid
                  Definition

                  R4: SubstanceSpecification.nucleicAcid (new:Reference(SubstanceNucleicAcid))

                  ShortR4: Data items specific to nucleic acids (new)
                  Comments

                  Element SubstanceSpecification.nucleicAcid has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.nucleicAcid has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                  Control0..1
                  This element is affected by the following invariants: ele-1
                  TypeExtension(R4: Data items specific to nucleic acids (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceNucleicAcid for use in FHIR R4B, Basic))
                  Is Modifierfalse
                  Must Supportfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  26. SubstanceDefinition.extension:polymer
                  Slice Namepolymer
                  Definition

                  R4: SubstanceSpecification.polymer (new:Reference(SubstancePolymer))

                  ShortR4: Data items specific to polymers (new)
                  Comments

                  Element SubstanceSpecification.polymer has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.polymer has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                  Control0..1
                  This element is affected by the following invariants: ele-1
                  TypeExtension(R4: Data items specific to polymers (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstancePolymer for use in FHIR R4B, Basic))
                  Is Modifierfalse
                  Must Supportfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  28. SubstanceDefinition.extension:protein
                  Slice Nameprotein
                  Definition

                  R4: SubstanceSpecification.protein (new:Reference(SubstanceProtein))

                  ShortR4: Data items specific to proteins (new)
                  Comments

                  Element SubstanceSpecification.protein has a context of SubstanceDefinition based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.protein has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                  Control0..1
                  This element is affected by the following invariants: ele-1
                  TypeExtension(R4: Data items specific to proteins (new)) (Extension Type: Reference(Cross-version Profile for R4.SubstanceProtein for use in FHIR R4B, Basic))
                  Is Modifierfalse
                  Must Supportfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  30. SubstanceDefinition.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
                  Must Supportfalse
                  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())
                  32. SubstanceDefinition.identifier
                  Definition

                  Identifier by which this substance is known.

                  ShortIdentifier by which this substance is known
                  NoteThis is a business identifier, not a resource identifier (see discussion)
                  Control0..*
                  TypeIdentifier
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  34. SubstanceDefinition.version
                  Definition

                  A business level version identifier of the substance.

                  ShortA business level version identifier of the substance
                  NoteThis is a business version Id, not a resource version Id (see discussion)
                  Control0..1
                  Typestring
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  36. SubstanceDefinition.status
                  Definition

                  Status of substance within the catalogue e.g. active, retired.

                  ShortStatus of substance within the catalogue e.g. active, retired
                  Control0..1
                  BindingThe codes SHOULD be taken from PublicationStatus
                  (preferred to http://hl7.org/fhir/ValueSet/publication-status|4.3.0)

                  The lifecycle status of an artifact.

                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  38. SubstanceDefinition.classification
                  Definition

                  A high level categorization, e.g. polymer or nucleic acid, or food, chemical, biological, or a lower level such as the general types of polymer (linear or branch chain) or type of impurity (process related or contaminant).

                  ShortA categorization, high level e.g. polymer or nucleic acid, or food, chemical, biological, or lower e.g. polymer linear or branch chain, or type of impurity
                  Control0..*
                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  40. SubstanceDefinition.domain
                  Definition

                  If the substance applies to human or veterinary use.

                  ShortIf the substance applies to human or veterinary use
                  Control0..1
                  BindingFor example codes, see MedicinalProductDomain
                  (example to http://hl7.org/fhir/ValueSet/medicinal-product-domain|4.3.0)

                  Applicable domain for this product (e.g. human, veterinary).

                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  42. SubstanceDefinition.grade
                  Definition

                  The quality standard, established benchmark, to which substance complies (e.g. USP/NF, Ph. Eur, JP, BP, Company Standard).

                  ShortThe quality standard, established benchmark, to which substance complies (e.g. USP/NF, BP)
                  Control0..*
                  BindingFor example codes, see SubstanceGrade
                  (example to http://hl7.org/fhir/ValueSet/substance-grade|4.3.0)

                  The quality standard, established benchmark, to which a substance complies

                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  44. SubstanceDefinition.description
                  Definition

                  Textual description of the substance.

                  ShortTextual description of the substance
                  Control0..1
                  Typemarkdown
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  46. SubstanceDefinition.informationSource
                  Definition

                  Supporting literature.

                  ShortSupporting literature
                  Control0..*
                  TypeReference(Citation)
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  48. SubstanceDefinition.note
                  Definition

                  Textual comment about the substance's catalogue or registry record.

                  ShortTextual comment about the substance's catalogue or registry record
                  Control0..*
                  TypeAnnotation
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  50. SubstanceDefinition.manufacturer
                  Definition

                  The entity that creates, makes, produces or fabricates the substance. This is a set of potential manufacturers but is not necessarily comprehensive.

                  ShortThe entity that creates, makes, produces or fabricates the substance
                  Control0..*
                  TypeReference(Organization)
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  52. SubstanceDefinition.supplier
                  Definition

                  An entity that is the source for the substance. It may be different from the manufacturer. Supplier is synonymous to a distributor.

                  ShortAn entity that is the source for the substance. It may be different from the manufacturer
                  Control0..*
                  TypeReference(Organization)
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  54. SubstanceDefinition.moiety
                  Definition

                  Moiety, for structural modifications.

                  ShortMoiety, for structural modifications
                  Control0..*
                  TypeBackboneElement
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  56. SubstanceDefinition.moiety.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
                  58. SubstanceDefinition.moiety.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())
                  60. SubstanceDefinition.moiety.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())
                  62. SubstanceDefinition.moiety.role
                  Definition

                  Role that the moiety is playing.

                  ShortRole that the moiety is playing
                  Control0..1
                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  64. SubstanceDefinition.moiety.identifier
                  Definition

                  Identifier by which this moiety substance is known.

                  ShortIdentifier by which this moiety substance is known
                  NoteThis is a business identifier, not a resource identifier (see discussion)
                  Control0..1
                  TypeIdentifier
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  66. SubstanceDefinition.moiety.name
                  Definition

                  Textual name for this moiety substance.

                  ShortTextual name for this moiety substance
                  Control0..1
                  Typestring
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  68. SubstanceDefinition.moiety.stereochemistry
                  Definition

                  Stereochemistry type.

                  ShortStereochemistry type
                  Control0..1
                  BindingFor example codes, see Stereochemistry
                  (example to http://hl7.org/fhir/ValueSet/substance-stereochemistry|4.3.0)

                  The optical rotation type of a substance.

                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  70. SubstanceDefinition.moiety.opticalActivity
                  Definition

                  Optical activity type.

                  ShortOptical activity type
                  Control0..1
                  BindingFor example codes, see OpticalActivity
                  (example to http://hl7.org/fhir/ValueSet/substance-optical-activity|4.3.0)

                  The optical rotation type of a substance.

                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  72. SubstanceDefinition.moiety.molecularFormula
                  Definition

                  Molecular formula for this moiety of this substance, typically using the Hill system.

                  ShortMolecular formula for this moiety (e.g. with the Hill system)
                  Control0..1
                  Typestring
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  74. SubstanceDefinition.moiety.amount[x]
                  Definition

                  Quantitative value for this moiety.

                  ShortQuantitative value for this moiety
                  Control0..1
                  TypeChoice of: Quantity, string
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  76. SubstanceDefinition.moiety.measurementType
                  Definition

                  The measurement type of the quantitative value. In capturing the actual relative amounts of substances or molecular fragments it may be necessary to indicate whether the amount refers to, for example, a mole ratio or weight ratio.

                  ShortThe measurement type of the quantitative value
                  Control0..1
                  BindingFor example codes, see SubstanceAmountType
                  (example to http://hl7.org/fhir/ValueSet/substance-amount-type|4.3.0)

                  The relationship between two substance types.

                  TypeCodeableConcept
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  78. SubstanceDefinition.property
                  Definition

                  General specifications for this substance.

                  ShortGeneral specifications for this substance
                  Control0..*
                  TypeBackboneElement
                  Is Modifierfalse
                  Must Supportfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                  80. SubstanceDefinition.property.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
                  82. SubstanceDefinition.property.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 SubstanceDefinition.property.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                  • value @ url
                  • 84. SubstanceDefinition.property.extension:category
                    Slice Namecategory
                    Definition

                    R4: SubstanceSpecification.property.category (new:CodeableConcept)

                    ShortR4: A category for this property, e.g. Physical, Chemical, Enzymatic (new)
                    Comments

                    Element SubstanceSpecification.property.category has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.category has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                    Control0..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(R4: A category for this property, e.g. Physical, Chemical, Enzymatic (new)) (Extension Type: CodeableConcept)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    86. SubstanceDefinition.property.extension:code
                    Slice Namecode
                    Definition

                    R4: SubstanceSpecification.property.code (new:CodeableConcept)

                    ShortR4: Property type e.g. viscosity, pH, isoelectric point (new)
                    Comments

                    Element SubstanceSpecification.property.code has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.code has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                    Control0..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(R4: Property type e.g. viscosity, pH, isoelectric point (new)) (Extension Type: CodeableConcept)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    88. SubstanceDefinition.property.extension:parameters
                    Slice Nameparameters
                    Definition

                    R4: SubstanceSpecification.property.parameters (new:string)

                    ShortR4: Parameters that were used in the measurement of a property (e.g. for viscosity: measured at 20C with a pH of 7.1) (new)
                    Comments

                    Element SubstanceSpecification.property.parameters has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.parameters has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                    Control0..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(R4: Parameters that were used in the measurement of a property (e.g. for viscosity: measured at 20C with a pH of 7.1) (new)) (Extension Type: string)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    90. SubstanceDefinition.property.extension:definingSubstance
                    Slice NamedefiningSubstance
                    Definition

                    R4: SubstanceSpecification.property.definingSubstance[x] (new:CodeableConcept, Reference(SubstanceSpecification,Substance))

                    ShortR4: A substance upon which a defining property depends (e.g. for solubility: in water, in alcohol) (new)
                    Comments

                    Element SubstanceSpecification.property.definingSubstance[x] has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.definingSubstance[x] has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                    Control0..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(R4: A substance upon which a defining property depends (e.g. for solubility: in water, in alcohol) (new)) (Extension Type: Choice of: Reference(Cross-version Profile for R4.SubstanceSpecification for use in FHIR R4B, SubstanceDefinition, Cross-version Profile for R4.Substance for use in FHIR R4B, Substance), CodeableConcept)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    92. SubstanceDefinition.property.extension:amount
                    Slice Nameamount
                    Definition

                    R4: SubstanceSpecification.property.amount[x] (new:Quantity, string)

                    ShortR4: Quantitative value for this property (new)
                    Comments

                    Element SubstanceSpecification.property.amount[x] has a context of SubstanceDefinition.property based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.property.amount[x] has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                    Control0..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(R4: Quantitative value for this property (new)) (Extension Type: Choice of: Quantity, string)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    94. SubstanceDefinition.property.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())
                    96. SubstanceDefinition.property.type
                    Definition

                    A code expressing the type of property.

                    ShortA code expressing the type of property
                    Control1..1
                    BindingFor example codes, see product-characteristic-codes (??)
                    (example to http://hl7.org/fhir/ValueSet/product-characteristic-codes)

                    This value set includes all observable entity codes from SNOMED CT - provided as an exemplar value set.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Must Supportfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    98. SubstanceDefinition.property.value[x]
                    Definition

                    A value for the property.

                    ShortA value for the property
                    Control0..1
                    TypeChoice of: CodeableConcept, Quantity, date, boolean, Attachment
                    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Must Supportfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    100. SubstanceDefinition.molecularWeight
                    Definition

                    The molecular weight or weight range (for proteins, polymers or nucleic acids).

                    ShortThe molecular weight or weight range
                    Control0..*
                    TypeBackboneElement
                    Is Modifierfalse
                    Must Supportfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                    102. SubstanceDefinition.molecularWeight.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
                    104. SubstanceDefinition.molecularWeight.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())
                    106. SubstanceDefinition.molecularWeight.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())
                    108. SubstanceDefinition.molecularWeight.method
                    Definition

                    The method by which the molecular weight was determined.

                    ShortThe method by which the weight was determined
                    Control0..1
                    BindingFor example codes, see WeightMethod
                    (example to http://hl7.org/fhir/ValueSet/substance-weight-method|4.3.0)

                    The method by which the substance weight was measured.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Must Supportfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    110. SubstanceDefinition.molecularWeight.type
                    Definition

                    Type of molecular weight such as exact, average (also known as. number average), weight average.

                    ShortType of molecular weight e.g. exact, average, weight average
                    Control0..1
                    BindingFor example codes, see WeightType
                    (example to http://hl7.org/fhir/ValueSet/substance-weight-type|4.3.0)

                    The type of substance weight measurement.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Must Supportfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    112. SubstanceDefinition.molecularWeight.amount
                    Definition

                    Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field.

                    ShortUsed to capture quantitative values for a variety of elements
                    Control1..1
                    TypeQuantity
                    Is Modifierfalse
                    Must Supportfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    114. SubstanceDefinition.structure
                    Definition

                    Structural information.

                    ShortStructural information
                    Control0..1
                    TypeBackboneElement
                    Is Modifierfalse
                    Must Supportfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                    116. SubstanceDefinition.structure.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
                    118. SubstanceDefinition.structure.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 SubstanceDefinition.structure.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                    • value @ url
                    • 120. SubstanceDefinition.structure.extension:isotope
                      Slice Nameisotope
                      Definition

                      R4: SubstanceSpecification.structure.isotope (new:BackboneElement)

                      ShortR4: Applicable for single substances that contain a radionuclide or a non-natural isotopic ratio (new)
                      Comments

                      Element SubstanceSpecification.structure.isotope has a context of SubstanceDefinition.structure based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.structure.isotope has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                      Control0..*
                      This element is affected by the following invariants: ele-1
                      TypeExtension(R4: Applicable for single substances that contain a radionuclide or a non-natural isotopic ratio (new)) (Complex Extension)
                      Is Modifierfalse
                      Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      122. SubstanceDefinition.structure.extension:source
                      Slice Namesource
                      Definition

                      R4: SubstanceSpecification.structure.source (new:Reference(DocumentReference))

                      ShortR4: Supporting literature (new)
                      Comments

                      Element SubstanceSpecification.structure.source has a context of SubstanceDefinition.structure based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.structure.source has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                      Control0..*
                      This element is affected by the following invariants: ele-1
                      TypeExtension(R4: Supporting literature (new)) (Extension Type: Reference(Cross-version Profile for R4.DocumentReference for use in FHIR R4B, DocumentReference))
                      Is Modifierfalse
                      Summaryfalse
                      Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      124. SubstanceDefinition.structure.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())
                      126. SubstanceDefinition.structure.stereochemistry
                      Definition

                      Stereochemistry type.

                      ShortStereochemistry type
                      Control0..1
                      BindingFor example codes, see Stereochemistry
                      (example to http://hl7.org/fhir/ValueSet/substance-stereochemistry|4.3.0)

                      The optical rotation type of a substance.

                      TypeCodeableConcept
                      Is Modifierfalse
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      128. SubstanceDefinition.structure.opticalActivity
                      Definition

                      Optical activity type.

                      ShortOptical activity type
                      Control0..1
                      BindingFor example codes, see OpticalActivity
                      (example to http://hl7.org/fhir/ValueSet/substance-optical-activity|4.3.0)

                      The optical rotation type of a substance.

                      TypeCodeableConcept
                      Is Modifierfalse
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      130. SubstanceDefinition.structure.molecularFormula
                      Definition

                      Molecular formula of this substance, typically using the Hill system.

                      ShortMolecular formula (e.g. using the Hill system)
                      Control0..1
                      Typestring
                      Is Modifierfalse
                      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      132. SubstanceDefinition.structure.molecularFormulaByMoiety
                      Definition

                      Specified per moiety according to the Hill system, i.e. first C, then H, then alphabetical, each moiety separated by a dot.

                      ShortSpecified per moiety according to the Hill system
                      Control0..1
                      Typestring
                      Is Modifierfalse
                      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      134. SubstanceDefinition.structure.molecularWeight
                      Definition

                      The molecular weight or weight range (for proteins, polymers or nucleic acids).

                      ShortThe molecular weight or weight range
                      Control0..1
                      TypeSeettp://hl7.org/fhir/StructureDefinition/SubstanceDefinition#SubstanceDefinition.molecularWeight
                      Is Modifierfalse
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      136. SubstanceDefinition.structure.technique
                      Definition

                      The method used to elucidate the structure or characterization of the drug substance. Examples: X-ray, HPLC, NMR, Peptide mapping, Ligand binding assay.

                      ShortThe method used to find the structure e.g. X-ray, NMR
                      Control0..*
                      BindingFor example codes, see StructureTechnique
                      (example to http://hl7.org/fhir/ValueSet/substance-structure-technique|4.3.0)

                      The method used to elucidate the structure or characterization of the drug substance.

                      TypeCodeableConcept
                      Is Modifierfalse
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      138. SubstanceDefinition.structure.sourceDocument
                      Definition

                      The source of information about the structure.

                      ShortSource of information for the structure
                      Control0..*
                      TypeReference(DocumentReference)
                      Is Modifierfalse
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      140. SubstanceDefinition.structure.representation
                      Definition

                      A depiction of the structure or characterization of the substance.

                      ShortA depiction of the structure or characterization of the substance
                      Control0..*
                      TypeBackboneElement
                      Is Modifierfalse
                      Must Supportfalse
                      Summarytrue
                      Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                      142. SubstanceDefinition.structure.representation.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
                      144. SubstanceDefinition.structure.representation.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 SubstanceDefinition.structure.representation.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                      • value @ url
                      • 146. SubstanceDefinition.structure.representation.extension:attachment
                        Slice Nameattachment
                        Definition

                        R4: SubstanceSpecification.structure.representation.attachment (new:Attachment)

                        ShortR4: An attached file with the structural representation (new)
                        Comments

                        Element SubstanceSpecification.structure.representation.attachment has a context of SubstanceDefinition.structure.representation based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.structure.representation.attachment has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                        Control0..1
                        This element is affected by the following invariants: ele-1
                        TypeExtension(R4: An attached file with the structural representation (new)) (Extension Type: Attachment)
                        Is Modifierfalse
                        Summaryfalse
                        Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                        148. SubstanceDefinition.structure.representation.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())
                        150. SubstanceDefinition.structure.representation.type
                        Definition

                        The kind of structural representation (e.g. full, partial).

                        ShortThe kind of structural representation (e.g. full, partial)
                        Control0..1
                        BindingFor example codes, see SubstanceRepresentationType
                        (example to http://hl7.org/fhir/ValueSet/substance-representation-type|4.3.0)

                        A format of a substance representation.

                        TypeCodeableConcept
                        Is Modifierfalse
                        Must Supportfalse
                        Summarytrue
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        152. SubstanceDefinition.structure.representation.representation
                        Definition

                        The structural representation or characterization as a text string in a standard format.

                        ShortThe structural representation or characterization as a text string in a standard format
                        Control0..1
                        Typestring
                        Is Modifierfalse
                        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                        Must Supportfalse
                        Summarytrue
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        154. SubstanceDefinition.structure.representation.format
                        Definition

                        The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF. The logical content type rather than the physical file format of a document.

                        ShortThe format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)
                        Control0..1
                        BindingFor example codes, see SubstanceRepresentationFormat
                        (example to http://hl7.org/fhir/ValueSet/substance-representation-format|4.3.0)

                        A format of a substance representation.

                        TypeCodeableConcept
                        Is Modifierfalse
                        Must Supportfalse
                        Summarytrue
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        156. SubstanceDefinition.structure.representation.document
                        Definition

                        An attached file with the structural representation or characterization e.g. a molecular structure graphic of the substance, a JCAMP or AnIML file.

                        ShortAn attachment with the structural representation e.g. a structure graphic or AnIML file
                        Control0..1
                        TypeReference(DocumentReference)
                        Is Modifierfalse
                        Must Supportfalse
                        Summarytrue
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        158. SubstanceDefinition.code
                        Definition

                        Codes associated with the substance.

                        ShortCodes associated with the substance
                        Control0..*
                        TypeBackboneElement
                        Is Modifierfalse
                        Must Supportfalse
                        Summarytrue
                        Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                        160. SubstanceDefinition.code.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
                        162. SubstanceDefinition.code.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 SubstanceDefinition.code.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                        • value @ url
                        • 164. SubstanceDefinition.code.extension:comment
                          Slice Namecomment
                          Definition

                          R4: SubstanceSpecification.code.comment (new:string)

                          ShortR4: Any comment can be provided in this field, if necessary (new)
                          Comments

                          Element SubstanceSpecification.code.comment has a context of SubstanceDefinition.code based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.code.comment has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                          Control0..1
                          This element is affected by the following invariants: ele-1
                          TypeExtension(R4: Any comment can be provided in this field, if necessary (new)) (Extension Type: string)
                          Is Modifierfalse
                          Summaryfalse
                          Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          166. SubstanceDefinition.code.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())
                          168. SubstanceDefinition.code.code
                          Definition

                          The specific code.

                          ShortThe specific code
                          Control0..1
                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          170. SubstanceDefinition.code.status
                          Definition

                          Status of the code assignment, for example 'provisional', 'approved'.

                          ShortStatus of the code assignment, for example 'provisional', 'approved'
                          Control0..1
                          BindingThe codes SHOULD be taken from PublicationStatus
                          (preferred to http://hl7.org/fhir/ValueSet/publication-status|4.3.0)

                          The lifecycle status of an artifact.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          172. SubstanceDefinition.code.statusDate
                          Definition

                          The date at which the code status was changed as part of the terminology maintenance.

                          ShortThe date at which the code status was changed
                          Control0..1
                          TypedateTime
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          174. SubstanceDefinition.code.note
                          Definition

                          Any comment can be provided in this field, if necessary.

                          ShortAny comment can be provided in this field
                          Control0..*
                          TypeAnnotation
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          176. SubstanceDefinition.code.source
                          Definition

                          Supporting literature.

                          ShortSupporting literature
                          Control0..*
                          TypeReference(DocumentReference)
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          178. SubstanceDefinition.name
                          Definition

                          Names applicable to this substance.

                          ShortNames applicable to this substance
                          Control0..*
                          TypeBackboneElement
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                          180. SubstanceDefinition.name.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
                          182. SubstanceDefinition.name.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())
                          184. SubstanceDefinition.name.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())
                          186. SubstanceDefinition.name.name
                          Definition

                          The actual name.

                          ShortThe actual name
                          Control1..1
                          Typestring
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          188. SubstanceDefinition.name.type
                          Definition

                          Name type, for example 'systematic', 'scientific, 'brand'.

                          ShortName type e.g. 'systematic', 'scientific, 'brand'
                          Control0..1
                          BindingFor example codes, see SubstanceNameType
                          (example to http://hl7.org/fhir/ValueSet/substance-name-type|4.3.0)

                          The type of a name given to a substance.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          190. SubstanceDefinition.name.status
                          Definition

                          The status of the name, for example 'current', 'proposed'.

                          ShortThe status of the name e.g. 'current', 'proposed'
                          Control0..1
                          BindingThe codes SHOULD be taken from PublicationStatus
                          (preferred to http://hl7.org/fhir/ValueSet/publication-status|4.3.0)

                          The lifecycle status of an artifact.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          192. SubstanceDefinition.name.preferred
                          Definition

                          If this is the preferred name for this substance.

                          ShortIf this is the preferred name for this substance
                          Control0..1
                          Typeboolean
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Must Supportfalse
                          Summarytrue
                          Meaning if MissingIf this value is not present, there is no statement being made about whether this is the preferred name or not. No inference can be made
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          194. SubstanceDefinition.name.language
                          Definition

                          Human language that the name is written in.

                          ShortHuman language that the name is written in
                          Control0..*
                          BindingThe codes SHOULD be taken from CommonLanguages
                          (preferred to http://hl7.org/fhir/ValueSet/languages|4.3.0)

                          IETF language tag

                          Additional BindingsPurpose
                          AllLanguagesMax Binding
                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          196. SubstanceDefinition.name.domain
                          Definition

                          The use context of this name for example if there is a different name a drug active ingredient as opposed to a food colour additive.

                          ShortThe use context of this name e.g. as an active ingredient or as a food colour additive
                          Control0..*
                          BindingFor example codes, see SubstanceNameDomain
                          (example to http://hl7.org/fhir/ValueSet/substance-name-domain|4.3.0)

                          The use context of a substance name for example if there is a different name when used as a drug active ingredient as opposed to a food colour additive.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          198. SubstanceDefinition.name.jurisdiction
                          Definition

                          The jurisdiction where this name applies.

                          ShortThe jurisdiction where this name applies
                          Control0..*
                          BindingFor example codes, see Jurisdiction ValueSet
                          (example to http://hl7.org/fhir/ValueSet/jurisdiction|4.3.0)

                          Jurisdiction codes

                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          200. SubstanceDefinition.name.synonym
                          Definition

                          A synonym of this particular name, by which the substance is also known.

                          ShortA synonym of this particular name, by which the substance is also known
                          Control0..*
                          TypeSeettp://hl7.org/fhir/StructureDefinition/SubstanceDefinition#SubstanceDefinition.name
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          202. SubstanceDefinition.name.translation
                          Definition

                          A translation for this name into another human language.

                          ShortA translation for this name into another human language
                          Control0..*
                          TypeSeettp://hl7.org/fhir/StructureDefinition/SubstanceDefinition#SubstanceDefinition.name
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          204. SubstanceDefinition.name.official
                          Definition

                          Details of the official nature of this name.

                          ShortDetails of the official nature of this name
                          Control0..*
                          TypeBackboneElement
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                          206. SubstanceDefinition.name.official.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
                          208. SubstanceDefinition.name.official.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())
                          210. SubstanceDefinition.name.official.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())
                          212. SubstanceDefinition.name.official.authority
                          Definition

                          Which authority uses this official name.

                          ShortWhich authority uses this official name
                          Control0..1
                          BindingThe codes SHOULD be taken from SubstanceNameAuthority
                          (preferred to http://hl7.org/fhir/ValueSet/substance-name-authority|4.3.0)

                          An authority that officates substance names.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          214. SubstanceDefinition.name.official.status
                          Definition

                          The status of the official name, for example 'draft', 'active', 'retired'.

                          ShortThe status of the official name, for example 'draft', 'active'
                          Control0..1
                          BindingThe codes SHOULD be taken from PublicationStatus
                          (preferred to http://hl7.org/fhir/ValueSet/publication-status|4.3.0)

                          The lifecycle status of an artifact.

                          TypeCodeableConcept
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          216. SubstanceDefinition.name.official.date
                          Definition

                          Date of the official name change.

                          ShortDate of official name change
                          Control0..1
                          TypedateTime
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          218. SubstanceDefinition.name.source
                          Definition

                          Supporting literature.

                          ShortSupporting literature
                          Control0..*
                          TypeReference(DocumentReference)
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          220. SubstanceDefinition.relationship
                          Definition

                          A link between this substance and another, with details of the relationship.

                          ShortA link between this substance and another
                          Control0..*
                          TypeBackboneElement
                          Is Modifierfalse
                          Must Supportfalse
                          Summarytrue
                          Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                          222. SubstanceDefinition.relationship.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
                          224. SubstanceDefinition.relationship.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 SubstanceDefinition.relationship.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                          • value @ url
                          • 226. SubstanceDefinition.relationship.extension:substance
                            Slice Namesubstance
                            Definition

                            R4: SubstanceSpecification.relationship.substance[x] (new:CodeableConcept, Reference(SubstanceSpecification))

                            ShortR4: A pointer to another substance, as a resource or just a representational code (new)
                            Comments

                            Element SubstanceSpecification.relationship.substance[x] has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.substance[x] has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                            Control0..1
                            This element is affected by the following invariants: ele-1
                            TypeExtension(R4: A pointer to another substance, as a resource or just a representational code (new)) (Extension Type: Choice of: Reference(Cross-version Profile for R4.SubstanceSpecification for use in FHIR R4B, SubstanceDefinition), CodeableConcept)
                            Is Modifierfalse
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            228. SubstanceDefinition.relationship.extension:relationship
                            Slice Namerelationship
                            Definition

                            R4: SubstanceSpecification.relationship.relationship (new:CodeableConcept)

                            ShortR4: For example "salt to parent", "active moiety", "starting material" (new)
                            Comments

                            Element SubstanceSpecification.relationship.relationship has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.relationship has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                            Control0..1
                            This element is affected by the following invariants: ele-1
                            TypeExtension(R4: For example "salt to parent", "active moiety", "starting material" (new)) (Extension Type: CodeableConcept)
                            Is Modifierfalse
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            230. SubstanceDefinition.relationship.extension:amount
                            Slice Nameamount
                            Definition

                            R4: SubstanceSpecification.relationship.amount[x] additional types (Range)

                            ShortR4: A numeric factor for the relationship, for instance to express that the salt of a substance has some percentage of the active substance in relation to some other additional types
                            Comments

                            Element SubstanceSpecification.relationship.amount[x] is mapped to FHIR R4B element SubstanceDefinition.relationship.amount[x] as SourceIsBroaderThanTarget. The mappings for SubstanceSpecification.relationship.amount[x] do not cover the following types: Range. The target context SubstanceDefinition.relationship.amount[x] is a choice-type element and cannot directly hold extensions. The context is moved up to parent element SubstanceDefinition.relationship.

                            Control0..1
                            This element is affected by the following invariants: ele-1
                            TypeExtension(R4: A numeric factor for the relationship, for instance to express that the salt of a substance has some percentage of the active substance in relation to some other additional types) (Extension Type: Range)
                            Is Modifierfalse
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            232. SubstanceDefinition.relationship.extension:amountRatioLowLimit
                            Slice NameamountRatioLowLimit
                            Definition

                            R4: SubstanceSpecification.relationship.amountRatioLowLimit (new:Ratio)

                            ShortR4: For use when the numeric (new)
                            Comments

                            Element SubstanceSpecification.relationship.amountRatioLowLimit has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.amountRatioLowLimit has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                            Control0..1
                            This element is affected by the following invariants: ele-1
                            TypeExtension(R4: For use when the numeric (new)) (Extension Type: Ratio)
                            Is Modifierfalse
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            234. SubstanceDefinition.relationship.extension:amountType
                            Slice NameamountType
                            Definition

                            R4: SubstanceSpecification.relationship.amountType (new:CodeableConcept)

                            ShortR4: An operator for the amount, for example "average", "approximately", "less than" (new)
                            Comments

                            Element SubstanceSpecification.relationship.amountType has a context of SubstanceDefinition.relationship based on following the parent source element upwards and mapping to SubstanceDefinition. Element SubstanceSpecification.relationship.amountType has no mapping targets in FHIR R4B. Typically, this is because the element has been added (is a new element).

                            Control0..1
                            This element is affected by the following invariants: ele-1
                            TypeExtension(R4: An operator for the amount, for example "average", "approximately", "less than" (new)) (Extension Type: CodeableConcept)
                            Is Modifierfalse
                            Summaryfalse
                            Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            236. SubstanceDefinition.relationship.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())
                            238. SubstanceDefinition.relationship.substanceDefinition[x]
                            Definition

                            A pointer to another substance, as a resource or just a representational code.

                            ShortA pointer to another substance, as a resource or a representational code
                            Control0..1
                            TypeChoice of: Reference(SubstanceDefinition), CodeableConcept
                            [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            240. SubstanceDefinition.relationship.type
                            Definition

                            For example "salt to parent", "active moiety", "starting material", "polymorph", "impurity of".

                            ShortFor example "salt to parent", "active moiety"
                            Control1..1
                            BindingFor example codes, see SubstanceRelationshipType
                            (example to http://hl7.org/fhir/ValueSet/substance-relationship-type|4.3.0)

                            The relationship between two substance types.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            242. SubstanceDefinition.relationship.isDefining
                            Definition

                            For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible substance relationships.

                            ShortFor example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                            Control0..1
                            Typeboolean
                            Is Modifierfalse
                            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                            Must Supportfalse
                            Summarytrue
                            Meaning if MissingIf this value is not present, there is no statement being made about whether this is a defining relationship or not. No inference can be made
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            244. SubstanceDefinition.relationship.amount[x]
                            Definition

                            A numeric factor for the relationship, for instance to express that the salt of a substance has some percentage of the active substance in relation to some other.

                            ShortA numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                            Control0..1
                            TypeChoice of: Quantity, Ratio, string
                            [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                            Is Modifierfalse
                            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            246. SubstanceDefinition.relationship.ratioHighLimitAmount
                            Definition

                            For use when the numeric has an uncertain range.

                            ShortFor use when the numeric has an uncertain range
                            Control0..1
                            TypeRatio
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            248. SubstanceDefinition.relationship.comparator
                            Definition

                            An operator for the amount, for example "average", "approximately", "less than".

                            ShortAn operator for the amount, for example "average", "approximately", "less than"
                            Control0..1
                            BindingFor example codes, see SubstanceAmountType
                            (example to http://hl7.org/fhir/ValueSet/substance-amount-type|4.3.0)

                            The relationship between two substance types.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            250. SubstanceDefinition.relationship.source
                            Definition

                            Supporting literature.

                            ShortSupporting literature
                            Control0..*
                            TypeReference(DocumentReference)
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            252. SubstanceDefinition.sourceMaterial
                            Definition

                            Material or taxonomic/anatomical source for the substance.

                            ShortMaterial or taxonomic/anatomical source
                            Control0..1
                            TypeBackboneElement
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (hasValue() or (children().count() > id.count()) or $this is Parameters)
                            254. SubstanceDefinition.sourceMaterial.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
                            256. SubstanceDefinition.sourceMaterial.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())
                            258. SubstanceDefinition.sourceMaterial.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())
                            260. SubstanceDefinition.sourceMaterial.type
                            Definition

                            A classification that provides the origin of the raw material. Example: cat hair would be an Animal source type.

                            ShortClassification of the origin of the raw material. e.g. cat hair is an Animal source type
                            Control0..1
                            BindingFor example codes, see SourceMaterialType
                            (example to http://hl7.org/fhir/ValueSet/substance-source-material-type|4.3.0)

                            A classification that provides the origin of the substance raw material.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            262. SubstanceDefinition.sourceMaterial.genus
                            Definition

                            The genus of an organism, typically referring to the Latin epithet of the genus element of the plant/animal scientific name.

                            ShortThe genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                            Control0..1
                            BindingFor example codes, see SourceMaterialGenus
                            (example to http://hl7.org/fhir/ValueSet/substance-source-material-genus|4.3.0)

                            The genus of an organism, typically referring to the Latin epithet of the genus element of the plant/animal scientific name.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            264. SubstanceDefinition.sourceMaterial.species
                            Definition

                            The species of an organism, typically referring to the Latin epithet of the species of the plant/animal.

                            ShortThe species of an organism e.g. the Latin epithet of the species of the plant/animal
                            Control0..1
                            BindingFor example codes, see SourceMaterialSpecies
                            (example to http://hl7.org/fhir/ValueSet/substance-source-material-species|4.3.0)

                            A species of origin a substance raw material.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            266. SubstanceDefinition.sourceMaterial.part
                            Definition

                            An anatomical origin of the source material within an organism.

                            ShortAn anatomical origin of the source material within an organism
                            Control0..1
                            BindingFor example codes, see SourceMaterialPart
                            (example to http://hl7.org/fhir/ValueSet/substance-source-material-part|4.3.0)

                            An anatomical origin of the source material within an organism.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            268. SubstanceDefinition.sourceMaterial.countryOfOrigin
                            Definition

                            The country or countries where the material is harvested.

                            ShortThe country or countries where the material is harvested
                            Control0..*
                            BindingThe codes SHALL be taken from Country ValueSet
                            (required to http://hl7.org/fhir/ValueSet/country|4.3.0)

                            Jurisdiction codes

                            TypeCodeableConcept
                            Is Modifierfalse
                            Must Supportfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))