MII IG Symptom
2027.0.0-ballot - Germany

This page is part of the MII Implementation Guide Symptom (v2027.0.0-ballot: 2027 Ballot 1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: MII_PR_Symptom_Observation ( Abstract )

Official URL: https://www.medizininformatik-initiative.de/fhir/modul-symptom/StructureDefinition/finding-observation Version: 2027.0.0-ballot
Active as of 2026-09-11 Computable Name: MII_PR_Symptom_Observation

Messungen oder Zuweisungen zu einem Patienten. Die meisten Beobachtungen sind einfache Entity/Value Paare, sie können aber auch komplex hierarchisch aufgebaut sein.

Description

Measurements or assignments for a patient. Most observations are simple entity/value pairs, but they can also have a complex hierarchical structure.

This Observation can be used to capture both present and absent symptoms as well as present or absent phenotypes. The modeling differs slightly and is based on two different FHIR implementation guides:

Note: Both implementation guides were in their ballot phase at the time of writing, so changes are still possible.

Symptom Observations

The following LOINC codes SHALL be used to capture symptoms:

  • Present symptoms: Observation.code with LOINC 75325-1 (Symptom)
  • Absent symptoms: Observation.code with LOINC 111551-8 (Symptom absent) - a preliminary code, not published in LOINC v2.81

Both Observation types use valueCodeableConcept to identify the specific symptom. The coded value SHOULD come from the SNOMED 404684003 |Clinical finding (finding)| hierarchy.

Component Observations: Part of the symptom's structured information MAY be modeled in Observation.component. See: Profile: Symptom Observation.

For the concrete implementation of these profiles, see the Symptoms IG.

Phenotype Observations

A phenotype Observation allows stating the presence or absence of a phenotype:

  • Observation.code: captures the phenotype (e.g. from HPO or SNOMED)
  • Observation.valueCodeableConcept: uses the LOINC ValueSet LL1937-3 with the values:
    • Present
    • Absent

Observation components: Additional aspects of the phenotype are captured via Observation.component.

For the concrete implementation of these profiles, see the Phenomics Exchange IG.

Abstract profile

This StructureDefinition is marked abstract and cannot be instantiated directly. It serves exclusively as the basis for concrete profiles deriving from it. Instances must always use a concrete sub-type.

Must-support elements

FeldnameKurzbeschreibungHinweise
Observation.identifier
Observation.status
Observation.category
Observation.code
Observation.subject
Observation.effective[x]
Observation.issued
Observation.value[x]
Observation.dataAbsentReason
Observation.interpretation
Observation.method
Observation.specimen
Observation.device
Observation.referenceRange
Observation.hasMember
Observation.derivedFrom
Observation.component

Mapping to the Logical Model

FHIRDatensatzErklärung
Observationmii-lm-symptom.ObservationObservation i. S. einer FHIR Observation: Messungen oder Zuweisungen zu einem Patienten. Die meisten Beobachtungen sind einfache Entity/Value Paare, sie können aber auch komplex hierarchisch aufgebaut sein.
Observation.identifiermii-lm-symptom.Observation.IdentifikatorEindeutiger Identifier der Observation
Observation.code.coding.displaymii-lm-symptom.Observation.BezeichnungNatürlichsprachige Bezeichnung der Observation
Observation.code.textmii-lm-symptom.Observation.BeschreibungNatürlichsprachige Beschreibung der Beobachtung
Observation.categorymii-lm-symptom.Observation.KategorieKategorie der Observation
Observation.statusmii-lm-symptom.Observation.StatusStatus der Observation
Observation.codemii-lm-symptom.Observation.CodeCode der Observation: z. B. LOINC, SNOMED CT, HPO
Observation.effectiveDateTimemii-lm-symptom.Observation.ZeitspanneKlinisch relevante Zeitpunkte/Zeitspanne
Observation.effectivePeriod.startmii-lm-symptom.Observation.Zeitspanne.startKlinisch relevanter (Start-)Zeitpunkt einer Observation
Observation.effectivePeriod.endmii-lm-symptom.Observation.Zeitspanne.endKlinisch relevanter Endzeitpunkt einer Observation
Observation.issuedmii-lm-symptom.Observation.DokumentationsdatumZeitpunkt der Dokumentation der Observation.
Observation.value[x]mii-lm-symptom.Observation.Wert[x]Wert der Observation
Observation.referenceRangemii-lm-symptom.Observation.ReferenzIntervallReferenz-Intervall entsprechend des eingebetteten komplexen Typs (Observation.referenceRange)
Observation.dataAbesentReasonmii-lm-symptom.Observation.GrundNichtVorhandenerDatenGrund für nicht vorhandene Daten der Observation
Observation.interpretationmii-lm-symptom.Observation.InterpretationInterpretation einer Observation
Observation.notemii-lm-symptom.Observation.KommentarNatürlichsprachiger Kommentar zur Observation.
Observation.bodySitemii-lm-symptom.Observation.LokalisationLokalisation der Observation als SNOMED CT Body Structure codiert.
Observation.subjectmii-lm-symptom.Observation.PatientLink auf Patient
Observation.encountermii-lm-symptom.Observation.FallFall der Observation
Observation.specimenmii-lm-symptom.Observation.ProbeReferenz auf die Probe, auf der die Observation basiert
Observation.devicemii-lm-symptom.Observation.MessgeraetReferenz auf das verwendete Mess-/Untersuchungsgerät
Observation.methodmii-lm-symptom.Observation.MethodeMethode der Untersuchung
Observation.hasMembermii-lm-symptom.Observation.BezugZuHatTeilBezug zu Ressourcen, die zu dieser Observation gehören (Observation, QuestionnaireResponse, MolecularSequence)
Observation.derivedFrommii-lm-symptom.Observation.BezugVonIstTeilVonReferenz auf Messunger/Beobachtungen, aus denen diese Observation hervorgeht.
Observation.componentmii-lm-symptom.Observation.KomponenteKomponente einer Observation mit mehreren Komponenten (z. B. Blutdruck) entsprechend des komplexen Typs (Observation.component) mit .code, .value, .dataAbsentReason, .interpretation, .referenceRange (alle wie oben beschrieben)

Examples

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots, and their representations.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation This is an abstract profile.
Measurements and simple assertions
Constraints: obs-6, obs-7
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:associatedSymptomOrCondition 0..* (Complex) Other symptoms or conditions that are associated with this symptom
URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo"
..... value[x] 1..1 Reference(Observation | Condition) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code registered | preliminary | final | amended +
Binding: ObservationStatus (required): Codes providing the status of an observation.
... category S 0..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... code SΣ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
... subject SΣ 0..1 Reference(Patient | Group) Who and/or what the observation is about
... effective[x] SΣ 0..1 Clinically relevant time/time-period for observation
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued SΣ 0..1 instant Date/Time this version was made available
... value[x] SΣC 0..1 Actual result
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation S 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (preferred)
.... Slices for extension Content/Rules for all slices
..... extension:bodySite 0..1 (Complex) Target anatomic location or structure
URL: http://hl7.org/fhir/StructureDefinition/bodySite
...... extension 0..0 Extension
Slice: Unordered, Open by value:url
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/bodySite"
...... value[x] 1..1 Reference(BodyStructure (EU core)) Value of extension
... method S 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... specimen S 0..1 Reference(Specimen) Specimen used for this observation
... device S 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange SC 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... hasMember SΣ 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom SΣ 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component SΣ 0..* BackboneElement Component results
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
Observation.code Base example LOINC Codes 📍4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.
Observation.bodySite Base preferred SNOMED CT Body Structures 📦4.0.1 FHIR Std.
Observation.method Base example Observation Methods 📍4.0.1 FHIR Std.
Observation.component.​code Base example LOINC Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 error Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-3 error Observation.referenceRange Must have at least a low or a high or text low.exists() or high.exists() or text.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* Observation This is an abstract profile.
Measurements and simple assertions
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:associatedSymptomOrCondition 0..* (Complex) Other symptoms or conditions that are associated with this symptom
URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
..... value[x] 1..1 Reference(Observation | Condition) Value of extension
... identifier S 0..* Identifier Business Identifier for observation
... status S 1..1 code registered | preliminary | final | amended +
... code S 1..1 CodeableConcept Type of observation (code / type)
... subject S 0..1 Reference(Patient | Group) Who and/or what the observation is about
... effective[x] S 0..1 dateTime, Period, Timing, instant Clinically relevant time/time-period for observation
... issued S 0..1 instant Date/Time this version was made available
... value[x] S 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period Actual result
... dataAbsentReason S 0..1 CodeableConcept Why the result is missing
... interpretation S 0..* CodeableConcept High, low, normal, etc.
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (preferred)
.... Slices for extension Content/Rules for all slices
..... extension:bodySite 0..1 (Complex) Target anatomic location or structure
URL: http://hl7.org/fhir/StructureDefinition/bodySite
...... value[x] 1..1 Reference(BodyStructure (EU core)) Value of extension
... method S 0..1 CodeableConcept How it was done
... specimen S 0..1 Reference(Specimen) Specimen used for this observation
... device S 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange S 0..* BackboneElement Provides guide for interpretation
... hasMember S 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom S 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component S 0..* BackboneElement Component results

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.bodySite Base preferred SNOMED CT Body Structures 📦4.0.1 FHIR Std.
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation This is an abstract profile.
Measurements and simple assertions
Constraints: obs-6, obs-7
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:associatedSymptomOrCondition 0..* (Complex) Other symptoms or conditions that are associated with this symptom
URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo"
..... value[x] 1..1 Reference(Observation | Condition) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Business Identifier for observation
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
... status ?!SΣ 1..1 code registered | preliminary | final | amended +
Binding: ObservationStatus (required): Codes providing the status of an observation.
... category S 0..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... code SΣ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
... subject SΣ 0..1 Reference(Patient | Group) Who and/or what the observation is about
... focus Σ 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made
... effective[x] SΣ 0..1 Clinically relevant time/time-period for observation
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued SΣ 0..1 instant Date/Time this version was made available
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
... value[x] SΣC 0..1 Actual result
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation S 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... note 0..* Annotation Comments about the observation
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (preferred)
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... extension:bodySite 0..1 (Complex) Target anatomic location or structure
URL: http://hl7.org/fhir/StructureDefinition/bodySite
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..0 Extension
Slice: Unordered, Open by value:url
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/bodySite"
...... value[x] 1..1 Reference(BodyStructure (EU core)) Value of extension
.... coding Σ 0..* Coding Code defined by a terminology system
.... text Σ 0..1 string Plain text representation of the concept
... method S 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... specimen S 0..1 Reference(Specimen) Specimen used for this observation
... device S 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange SC 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... low C 0..1 SimpleQuantity(4.0.1) Low Range, if relevant
.... high C 0..1 SimpleQuantity(4.0.1) High Range, if relevant
.... type 0..1 CodeableConcept Reference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
.... appliesTo 0..* CodeableConcept Reference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
.... age 0..1 Range Applicable age range, if relevant
.... text 0..1 string Text based reference range in an observation
... hasMember SΣ 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom SΣ 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component SΣ 0..* BackboneElement Component results
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... value[x] Σ 0..1 Actual component result
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
.... dataAbsentReason C 0..1 CodeableConcept Why the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... interpretation 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
.... referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
Observation.code Base example LOINC Codes 📍4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.
Observation.bodySite Base preferred SNOMED CT Body Structures 📦4.0.1 FHIR Std.
Observation.method Base example Observation Methods 📍4.0.1 FHIR Std.
Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍4.0.1 FHIR Std.
Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍4.0.1 FHIR Std.
Observation.component.​code Base example LOINC Codes 📍4.0.1 FHIR Std.
Observation.component.​dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 error Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-3 error Observation.referenceRange Must have at least a low or a high or text low.exists() or high.exists() or text.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

Summary

Must-Support: 17 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation This is an abstract profile.
Measurements and simple assertions
Constraints: obs-6, obs-7
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:associatedSymptomOrCondition 0..* (Complex) Other symptoms or conditions that are associated with this symptom
URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo"
..... value[x] 1..1 Reference(Observation | Condition) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code registered | preliminary | final | amended +
Binding: ObservationStatus (required): Codes providing the status of an observation.
... category S 0..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... code SΣ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
... subject SΣ 0..1 Reference(Patient | Group) Who and/or what the observation is about
... effective[x] SΣ 0..1 Clinically relevant time/time-period for observation
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued SΣ 0..1 instant Date/Time this version was made available
... value[x] SΣC 0..1 Actual result
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation S 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (preferred)
.... Slices for extension Content/Rules for all slices
..... extension:bodySite 0..1 (Complex) Target anatomic location or structure
URL: http://hl7.org/fhir/StructureDefinition/bodySite
...... extension 0..0 Extension
Slice: Unordered, Open by value:url
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/bodySite"
...... value[x] 1..1 Reference(BodyStructure (EU core)) Value of extension
... method S 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... specimen S 0..1 Reference(Specimen) Specimen used for this observation
... device S 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange SC 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... hasMember SΣ 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom SΣ 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component SΣ 0..* BackboneElement Component results
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
Observation.code Base example LOINC Codes 📍4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.
Observation.bodySite Base preferred SNOMED CT Body Structures 📦4.0.1 FHIR Std.
Observation.method Base example Observation Methods 📍4.0.1 FHIR Std.
Observation.component.​code Base example LOINC Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 error Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-3 error Observation.referenceRange Must have at least a low or a high or text low.exists() or high.exists() or text.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

Differential View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation 0..* Observation This is an abstract profile.
Measurements and simple assertions
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:associatedSymptomOrCondition 0..* (Complex) Other symptoms or conditions that are associated with this symptom
URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
..... value[x] 1..1 Reference(Observation | Condition) Value of extension
... identifier S 0..* Identifier Business Identifier for observation
... status S 1..1 code registered | preliminary | final | amended +
... code S 1..1 CodeableConcept Type of observation (code / type)
... subject S 0..1 Reference(Patient | Group) Who and/or what the observation is about
... effective[x] S 0..1 dateTime, Period, Timing, instant Clinically relevant time/time-period for observation
... issued S 0..1 instant Date/Time this version was made available
... value[x] S 0..1 Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period Actual result
... dataAbsentReason S 0..1 CodeableConcept Why the result is missing
... interpretation S 0..* CodeableConcept High, low, normal, etc.
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (preferred)
.... Slices for extension Content/Rules for all slices
..... extension:bodySite 0..1 (Complex) Target anatomic location or structure
URL: http://hl7.org/fhir/StructureDefinition/bodySite
...... value[x] 1..1 Reference(BodyStructure (EU core)) Value of extension
... method S 0..1 CodeableConcept How it was done
... specimen S 0..1 Reference(Specimen) Specimen used for this observation
... device S 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange S 0..* BackboneElement Provides guide for interpretation
... hasMember S 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom S 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component S 0..* BackboneElement Component results

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Observation.bodySite Base preferred SNOMED CT Body Structures 📦4.0.1 FHIR Std.

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Observation C 0..* Observation This is an abstract profile.
Measurements and simple assertions
Constraints: obs-6, obs-7
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:associatedSymptomOrCondition 0..* (Complex) Other symptoms or conditions that are associated with this symptom
URL: http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/workflow-supportingInfo"
..... value[x] 1..1 Reference(Observation | Condition) Value of extension
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Business Identifier for observation
... basedOn Σ 0..* Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) Fulfills plan, proposal or order
... partOf Σ 0..* Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy) Part of referenced event
... status ?!SΣ 1..1 code registered | preliminary | final | amended +
Binding: ObservationStatus (required): Codes providing the status of an observation.
... category S 0..* CodeableConcept Classification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.
... code SΣ 1..1 CodeableConcept Type of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
... subject SΣ 0..1 Reference(Patient | Group) Who and/or what the observation is about
... focus Σ 0..* Reference(Resource) What the observation is about, when it is not about the subject of record
... encounter Σ 0..1 Reference(Encounter) Healthcare event during which this observation is made
... effective[x] SΣ 0..1 Clinically relevant time/time-period for observation
.... effectiveDateTime dateTime
.... effectivePeriod Period
.... effectiveTiming Timing
.... effectiveInstant instant
... issued SΣ 0..1 instant Date/Time this version was made available
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson) Who is responsible for the observation
... value[x] SΣC 0..1 Actual result
.... valueQuantity Quantity
.... valueCodeableConcept CodeableConcept
.... valueString string
.... valueBoolean boolean
.... valueInteger integer
.... valueRange Range
.... valueRatio Ratio
.... valueSampledData SampledData
.... valueTime time
.... valueDateTime dateTime
.... valuePeriod Period
... dataAbsentReason SC 0..1 CodeableConcept Why the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
... interpretation S 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
... note 0..* Annotation Comments about the observation
... bodySite 0..1 CodeableConcept Observed body part
Binding: SNOMEDCTBodyStructures (preferred)
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... extension:bodySite 0..1 (Complex) Target anatomic location or structure
URL: http://hl7.org/fhir/StructureDefinition/bodySite
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..0 Extension
Slice: Unordered, Open by value:url
...... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/bodySite"
...... value[x] 1..1 Reference(BodyStructure (EU core)) Value of extension
.... coding Σ 0..* Coding Code defined by a terminology system
.... text Σ 0..1 string Plain text representation of the concept
... method S 0..1 CodeableConcept How it was done
Binding: ObservationMethods (example): Methods for simple observations.
... specimen S 0..1 Reference(Specimen) Specimen used for this observation
... device S 0..1 Reference(Device | DeviceMetric) (Measurement) Device
... referenceRange SC 0..* BackboneElement Provides guide for interpretation
Constraints: obs-3
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... low C 0..1 SimpleQuantity(4.0.1) Low Range, if relevant
.... high C 0..1 SimpleQuantity(4.0.1) High Range, if relevant
.... type 0..1 CodeableConcept Reference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.
.... appliesTo 0..* CodeableConcept Reference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.
.... age 0..1 Range Applicable age range, if relevant
.... text 0..1 string Text based reference range in an observation
... hasMember SΣ 0..* Reference(Observation | QuestionnaireResponse | MolecularSequence) Related resource that belongs to the Observation group
... derivedFrom SΣ 0..* Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence) Related measurements the observation is made from
... component SΣ 0..* BackboneElement Component results
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 CodeableConcept Type of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.
.... value[x] Σ 0..1 Actual component result
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueRatio Ratio
..... valueSampledData SampledData
..... valueTime time
..... valueDateTime dateTime
..... valuePeriod Period
.... dataAbsentReason C 0..1 CodeableConcept Why the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.
.... interpretation 0..* CodeableConcept High, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.
.... referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Observation.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Observation.status Base required ObservationStatus 📍4.0.1 FHIR Std.
Observation.category Base preferred Observation Category Codes 📍4.0.1 FHIR Std.
Observation.code Base example LOINC Codes 📍4.0.1 FHIR Std.
Observation.dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
Observation.interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.
Observation.bodySite Base preferred SNOMED CT Body Structures 📦4.0.1 FHIR Std.
Observation.method Base example Observation Methods 📍4.0.1 FHIR Std.
Observation.referenceRange.​type Base preferred Observation Reference Range Meaning Codes 📍4.0.1 FHIR Std.
Observation.referenceRange.​appliesTo Base example Observation Reference Range Applies To Codes 📍4.0.1 FHIR Std.
Observation.component.​code Base example LOINC Codes 📍4.0.1 FHIR Std.
Observation.component.​dataAbsentReason Base extensible DataAbsentReason 📍4.0.1 FHIR Std.
Observation.component.​interpretation Base extensible Observation Interpretation Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Observation If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Observation If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Observation 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 error Observation If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Observation A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
obs-3 error Observation.referenceRange Must have at least a low or a high or text low.exists() or high.exists() or text.exists()
obs-6 error Observation dataAbsentReason SHALL only be present if Observation.value[x] is not present dataAbsentReason.empty() or value.empty()
obs-7 error Observation If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()

Summary

Must-Support: 17 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron