R6 Ballot (3rd Draft) FHIR CI-Build

This page is part of the FHIR Specification v6.0.0-ballot3: Release 6 Ballot (3rd Draft) (see Ballot Notes ). The current version is 5.0.0 . For a full list Continuous Integration Build of available versions, see FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions icon

Orders and Observations icon Work Group   Maturity Level : 4 Trial Use Use Context : Any

The canonical URL for this profile is:

http://hl7.org/fhir/StructureDefinition/bmi

FHIR Body Mass Index (BMI) Profile

This profile was published on Sat, Aug 11, 2018 00:00+1000 00:00+0000 as a draft by HL7 International / Orders and Observations.

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

This structure is derived from Observationvitalsignsbase .

Summary

  1. One code in Observation.category which must have
    • a fixed Observation.category.coding.system = 'http ://loinc.org'
    • a fixed Observation.category.coding.code = '39156-5'
    • The code (or codes) for the measurement obtained in Observation.code . All codes SHALL have a system value
  2. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason
    • Each Observation.valueQuantity must have:
      • One numeric value in Observation.valueQuantity.value
      • a fixed Observation.valueQuantity.system="http://unitsofmeasure.org"
      • a UCUM unit code in Observation.valueQuantity.code = 'kg/m2'

Mandatory: 1 element Must-Support: 2 3 elements

Slices This structure defines the following Slices : The element Observation.category is sliced based on the value of pattern:$this

This indicates the differences between this profile and the base Observationvitalsignsbase structure.

code 1 .. 1 CodeableConcept Body Mass Index (BMI) Binding: Vital Signs - BMI ( preferred ): This identifies the set of LOINC codes that are appropriate for representing body mass index (BMI) vital sign measurements in Observation.code.
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon 0 .. * Observationvitalsignsbase FHIR Body Mass Index (BMI) Profile
vs-4: Constraints: For single vital signs observations (that do not require use of components or hasMember), then either a value[x] or a data absent reason must be present. vs-4
. . Slices for category . code S 2 1 .. .. * 1 CodeableConcept Body Mass Index (BMI)
Classification of type of observation Binding: Slice: Vital Signs - BMI Unordered, Open by pattern:$this ( category:BMICode preferred 1..1 CodeableConcept ) : Classification of type This identifies the set of observation LOINC codes that are appropriate for representing body mass index (BMI) vital sign measurements in Observation.code.
Required Pattern: At least the following
. . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex) (Complex)
. . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
. . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: 39156-5
. . . valueQuantity S C icon 0 .. 1 Quantity Vital Signs values are recorded using The quantity for the Quantity data type. For supporting component observations recorded as a component, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. vital sign being observed.
Binding: BMI Units ( required ): kg/m2 ) : kg/m2
. . . dataAbsentReason S C icon 0 .. 1 CodeableConcept Why the result value is missing

doco Documentation for this format icon

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Observationvitalsignsbase structure.

Classification of type of observation code S Σ C 1..1 CodeableConcept Body Mass Index (BMI) Binding: Vital Signs - BMI ( preferred ): This identifies the set of LOINC codes that are appropriate for representing body mass index (BMI) vital sign measurements in Observation.code. Vital Signs values are recorded using C C
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon 0..* Observationvitalsignsbase FHIR Body Mass Index (BMI) Profile obs-6: Observation.dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). obs-8: bodyStructure SHALL only be present if Observation.bodySite is not present obs-10: Observation.component.dataAbsentReason SHALL only be present if Observation.component.value[x] is not present
obs-11: Constraints: if organizer exists and organizer = true, then value[x], dataAbsentReason and component SHALL NOT be present vsp-1: if Observation.effective[x] (as dateTime) has a value then that value shall be precise at least to the day vsp-2: vs-4 If there is no component or hasMember element then either a value[x] or a data absent reason must be present. vs-4: For single vital signs observations (that do not require use of components or hasMember), then either a value[x] or a data absent reason must be present.
. . . 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: All Languages ( required ): ) : IETF language tag for a human language
Additional Bindings Purpose
Common Languages Starter
. . . 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
. . . extension 0..* Extension Additional content defined by implementations
. . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored
. . . identifier Σ 0..* Identifier Business Identifier for observation
. . . instantiates[x] Σ 0..1 canonical ( ObservationDefinition ), Reference ( ObservationDefinition ) Instantiates FHIR ObservationDefinition basedOn Σ 0..* Reference ( CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest ) Fulfills plan, proposal or order
. . . triggeredBy 0..* BackboneElement Triggering observation(s)
. . . . 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
. . . . observation Σ 1..1 Reference ( Observation ) Triggering observation
. . . . type Σ 1..1 code reflex | repeat | re-run
Binding: triggered Bytype ( required ): ) : The type of TriggeredBy Observation.
. . . . reason 0..1 string Reason that the observation was triggered
. . . partOf Σ 0..* Reference ( MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy ) Part of referenced event
. . . status ?! S Σ 1..1 code registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Binding: Observation Status ( required ): ) : Codes providing the status of an observation.
. . . Slices for category S 2 1 .. * CodeableConcept Classification of type of observation
Slice: Unordered, Open by pattern:$this
Binding: Vital Signs Observation Category Codes ( preferred ) : : This value set includes the required vital sign interoperability Codes for high level observation categories.
. . . . category:VSCat S 1..1 CodeableConcept Classification of type of observation
Binding: Observation Category Codes ( preferred ): ) : Codes for high level observation categories.

Required Pattern: At least the following
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex) (Complex)
. . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . extension 0..* Extension Additional content defined by implementations
. . . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
. . . . . . version 0..1 string Version of the system - if relevant
. . . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: vital-signs
. . . . . . display 0..1 string Representation defined by the system
. . . . . . userSelected 0..1 boolean If this coding was chosen directly by the user
. . . . . text 0..1 string Plain text representation of the concept
. . category:BMICode . code S Σ C icon 1..1 CodeableConcept Body Mass Index (BMI)
Binding: Vital Signs Category - BMI ( preferred ): ) : This value set includes identifies the required set of LOINC codes that are appropriate for representing body mass index (BMI) vital sign interoperability categories. measurements in Observation.code.
Required Pattern: At least the following
. . . . id 0..1 string Unique id for inter-element referencing
. . . . extension 0..* Extension Additional content defined by implementations
. . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex) (Complex)
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
. . . . . version 0..1 string Version of the system - if relevant
. . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: 39156-5
. . . . . display 0..1 string Representation defined by the system
. . . . . userSelected 0..1 boolean If this coding was chosen directly by the user
. . . . text 0..1 string Plain text representation of the concept
. . . subject S Σ 1..1 Reference ( Patient ) 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
. . . organizer Σ C icon 0..1 boolean This observation organizes/groups a set of sub-observations
. . . encounter Σ 0..1 Reference ( Encounter ) Healthcare event during which this observation is made made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension
. . . effective[x] S Σ C icon 1..1 dateTime Vital Signs are point in time measurements and are recorded using the dateTime data type
. . . issued Σ 0..1 instant Date/Time this version was made available
. . . performer Σ 0..* Reference ( Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | HealthcareService | Group ) Who is responsible for the observation
. . . Slices for value[x] Σ C icon 0 .. 1 Quantity Vital Signs values are recorded using The quantity for the Quantity data type. For supporting component observations recorded as a component, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. vital sign being observed.
Slice: Unordered, Closed by type:$this
Binding: Vital Signs Units ( preferred ) : : Commonly encountered UCUM units for recording Vital Signs.
. . . . value[x]:valueQuantity S Σ C icon 0..1 Quantity The quantity for the Quantity data type. For supporting component observations recorded as a component, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. vital sign being observed.
Binding: BMI Units ( required ): kg/m2 ) : kg/m2
. . . dataAbsentReason S C icon 0..1 CodeableConcept Why the result value is missing
Binding: Data Absent Reason ( extensible ): ) : Codes specifying why the result ( Observation.value[x] ) is missing.
. . . interpretation 0..* CodeableConcept High, low, normal, etc
Binding: Observation Interpretation Codes ( extensible ): ) : Codes identifying interpretations of observations.
. . . interpretationContext 0..* CodeableReference ( Resource ) Context for understanding the observation
Binding: Observation Interpretation Context Codes ( example ) : Codes identifying contextual factors that affect interpretation of observations.
. . . note 0..* Annotation Comments about the observation
. . . bodySite 0..1 CodeableConcept DEPRECATED: Observed body part
Binding: SNOMED CT Body Structures ( example ): ) : SNOMED CT Body site concepts
. . . bodyStructure 0..1 Reference CodeableReference ( BodyStructure ) Observed body structure
Binding: SNOMED CT Body Structures ( example ) : SNOMED CT Body Structures
. . . method 0..1 CodeableConcept How it was done
Binding: Observation Methods ( example ): ) : Methods for simple observations.
. . . specimen C icon 0..1 Reference ( Specimen | Group ) Specimen used for this observation obs-9: If Observation.specimen is a reference to Group, the group can only have specimens
. . . device 0..1 Reference ( Device | DeviceMetric ) A reference to the device that generates the measurements or the device settings for the device
. . . referenceRange C icon 0..* BackboneElement Provides guide for interpretation
obs-3: Must have at least a low or a high or text
. . . . 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 icon 0..1 SimpleQuantity Quantity Low Range, if relevant
. . . . high C icon 0..1 SimpleQuantity Quantity High Range, if relevant
. . . . normalValue 0..1 CodeableConcept Normal value, if relevant
Binding: Observation Reference Range Normal Value Codes ( extensible example ): ) : Codes identifying the normal value of the observation.
. . . . type 0..1 CodeableConcept Reference range qualifier
Binding: Observation Reference Range Meaning Codes ( preferred ): ) : Code for the meaning of a reference range.
. . . . appliesTo 0..* CodeableConcept Reference range population
Binding: Observation Reference Range Applies To Codes ( example ): ) : Codes identifying the population the reference range applies to.
. . . . age 0..1 Range Applicable age range, if relevant
. . . . text C icon 0..1 markdown Text based reference range in an observation
. . . hasMember Σ 0..* Reference ( Observation ) Used when reporting observations included in a vital signs panel
. . . derivedFrom Σ 0..* Reference ( DocumentReference | Observation ) Related resource from which the observation is made
. . . component Σ C icon 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 Σ C icon 1..1 CodeableConcept Vital Sign measurement or component
Binding: LOINC Codes codes with Observation or Both ( example ): ) : Codes identifying names of simple observations.
. . . . Slices for value[x] Σ C icon 0 .. 1 Vital Signs values are recorded using The value for the Quantity data type. For supporting vital sign component observations, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. being observed.
Slice: Unordered, Open by type:$this
. . . . . valueQuantity Quantity
. . . . . valueCodeableConcept CodeableConcept
. . . . . valueString string
. . . . . valueBoolean boolean
. . . . . valueInteger integer
. . . . . valueRange Range
. . . . . valueRatio Ratio
. . . . . valueSampledData SampledData
. . . . . valueTime time
. . . . . valueDateTime dateTime
. . . . . valuePeriod Period
. . . . . valueAttachment Attachment
. . . . . valueReference Reference ( MolecularSequence MolecularDefinition )
. . . . . value[x]:valueQuantity Σ C icon 0..1 Quantity Vital Sign component value recorded as a component with UCUM (preferred)
Binding: UCUM units - for recording Vital Signs and components. icon ( preferred ): ) : UCUM units - for recording Vital Signs and components.
. . . . dataAbsentReason C icon 0..1 CodeableConcept Why the component result value is missing
Binding: Data Absent Reason ( extensible ): ) : Codes specifying why the result ( Observation.value[x] ) is missing.
. . . . interpretation 0..* CodeableConcept High, low, normal, etc
Binding: Observation Interpretation Codes ( extensible ): ) : Codes identifying interpretations of observations.
. . . . referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result value

doco Documentation for this format icon
<!-- Observationbmi -->doco

<Observation xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <meta><!-- I 0..1 Meta Metadata about the resource --></meta>
 <

 <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created -->

 <language value="[code]"/><!-- I 0..1 Language of the resource content   -->
 <text><!-- I 0..1 Narrative 
     Text summary of the resource, for human interpretation --></text>
 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <<a href="bmi-definitions.html#Observation.modifierExtension" title="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 managable, 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.


 <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <identifier><!-- I 0..* Identifier 
     Business Identifier for observation --></identifier>
 <
     Instantiates FHIR ObservationDefinition</instantiates[x]>

 <basedOn><!-- I 0..* Reference(CarePlan) Fulfills plan, proposal or order --></basedOn>
 <triggeredBy> I 0..* BackboneElement  <!-- I 0..* Triggering observation(s) -->
  <<a href="bmi-definitions.html#Observation.triggeredBy.modifierExtension" title="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 managable, 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.


  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <observation><!-- I 1..1 Reference(Observation) 
      Triggering observation --></observation>
  <<a href="bmi-definitions.html#Observation.triggeredBy.type" title="The type of trigger.

  <type value="[code]"/><!-- I 1..1 reflex | repeat | re-run   -->
  <reason value="[string]"/><!-- I 0..1 Reason that the observation was triggered -->
 </triggeredBy>
 <partOf><!-- I 0..* Reference(MedicationAdministration) Part of referenced event --></partOf>
 <status value="[code]"/><!-- I 1..1 registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained   -->
 <-- category sliced by pattern:$this  in the specified orderOpen-->
 <</category>
 <</category>

 <category><!-- I 1..1 CodeableConcept Classification of  type of observation   --></category>

 <code><!-- I 1..1 CodeableConcept Body Mass Index (BMI)   --></code>
 <subject><!-- I 1..1 Reference(Patient) 
     Who and/or what the observation is about --></subject>
 <<a href="bmi-definitions.html#Observation.focus" title="The actual focus of an observation when it is not the subject of record representing something or someone associated with the patient such as a spouse, parent, fetus, or donor. For example, fetus observations in a mother's record.  The focus of an observation could also be an existing condition,  an intervention, the subject's diet,  another observation of the subject,  or a body structure such as tumor or implanted device.   An example use case would be using the Observation resource to capture whether the mother is trained to change her child's tracheostomy tube. In this example, the child is the patient of record and the mother is the focus. As another use case,

a caregiver (RelatedPerson) has back strain and is unable to provide ADL support to a patient (Subject) (this element modifies the meaning of other elements)" class="dict">

 <focus><!-- I 0..* Reference(Resource) 

     What the observation is about, when it is not about the subject of record --></focus>
 <organizer value="[boolean]"/><!-- I 0..1 This observation organizes/groups a set of sub-observations -->
 <encounter><!-- I 0..1 Reference(Encounter) 
     Healthcare event during which this observation is made</encounter>

     Healthcare event during which this observation is made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension --></encounter>

 <effectiveDateTime value="[dateTime]"/><!-- I 1..1 
     Vital Signs are point in time measurements and are recorded using the dateTime data type -->
 <issued value="[instant]"/><!-- I 0..1 Date/Time this version was made available -->
 <performer><!-- I 0..* Reference(Practitioner) 
     Who is responsible for the observation --></performer>
 <-- valueQuantity sliced by type:$this  in the specified orderClosed-->
 <</valueQuantity>

 <valueQuantity><!-- I 0..1 Quantity The quantity for the vital sign being observed.   --></valueQuantity>

 <dataAbsentReason><!-- I 0..1 CodeableConcept Why the result value is missing   --></dataAbsentReason>
 <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc   --></interpretation>
 <interpretationContext><!-- I 0..* CodeableReference Context for understanding the observation   --></interpretationContext>

 <note><!-- I 0..* Annotation Comments about the observation --></note>
 <</bodySite>
 <</bodyStructure>

 <bodySite><!-- I 0..1 CodeableConcept DEPRECATED: Observed body part   --></bodySite>
 <bodyStructure><!-- I 0..1 CodeableReference Observed body structure   --></bodyStructure>

 <method><!-- I 0..1 CodeableConcept How it was done   --></method>
 <specimen><!-- I 0..1 Reference(Specimen) Specimen used for this observation --></specimen>
 <device><!-- I 0..1 Reference(Device) 
     A reference to the device that generates the measurements or the device settings for the device --></device>
 <referenceRange> I 0..* BackboneElement  <!-- I 0..* Provides guide for interpretation -->
  <<a href="bmi-definitions.html#Observation.referenceRange.modifierExtension" title="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 managable, 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.


  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <

  <low><!-- I 0..1 Quantity 

      Low Range, if relevant --></low>
  <

  <high><!-- I 0..1 Quantity 

      High Range, if relevant --></high>
  <normalValue><!-- I 0..1 CodeableConcept Normal value, if relevant   --></normalValue>
  <type><!-- I 0..1 CodeableConcept Reference range qualifier   --></type>
  <appliesTo><!-- I 0..* CodeableConcept Reference range population   --></appliesTo>
  <age><!-- I 0..1 Range 
      Applicable age range, if relevant --></age>
  <text value="[markdown]"/><!-- I 0..1 Text based reference range in an observation -->
 </referenceRange>
 <hasMember><!-- I 0..* Reference(Observation) 
     Used when reporting observations included in a vital signs panel --></hasMember>
 <derivedFrom><!-- I 0..* Reference(DocumentReference) 
     Related resource from which the observation is made --></derivedFrom>
 <component> I 0..* BackboneElement  <!-- I 0..* Component results -->
  <<a href="bmi-definitions.html#Observation.component.modifierExtension" title="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 managable, 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.


  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <</code>

  <code><!-- I 1..1 CodeableConcept Vital Sign measurement or component   --></code>

  <-- value[x] sliced by type:$this  in the specified orderOpen-->
  <valueQuantity><!-- I 0..1 Quantity Vital Sign component value recorded as a component with UCUM (preferred) icon   --></valueQuantity>
  <dataAbsentReason><!-- I 0..1 CodeableConcept Why the component result value is missing   --></dataAbsentReason>
  <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc   --></interpretation>
  <referenceRange><!-- See http://hl7.org/fhir/StructureDefinition/Observation#Observation.referenceRange  Provides guide for interpretation of component result value --></referenceRange>
 </component>
</Observation>
{ // Observationbmi
  // from Element: extension
    "meta" : { Meta }, // IMetadata about the resource
    "

    "implicitRules" : "<uri>", // IA set of rules under which this content was created

    "language" : "<code>", // ILanguage of the resource content
    "text" : { Narrative }, // IText summary of the resource, for human interpretation
    "contained" : [{ Resource }], //Contained, inline Resources
    "<a href="bmi-definitions.html#Observation.modifierExtension" title="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 managable, 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.


    "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored
    "identifier" : [{ Identifier }], // IBusiness Identifier for observation

    "
    "

    "basedOn" : [{ Reference(CarePlan) }], // IFulfills plan, proposal or order
    "triggeredBy" : [{ BackboneElement }], // ITriggering observation(s)
    "partOf" : [{ Reference(MedicationAdministration) }], // IPart of referenced event
    "status" : "<code>", // I R! registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
    "category" : [ //  sliced by pattern:$this  in the specified order, Open 
      { // Classification of  type of observation // I R! 
        // from Element: extension
      },
      { //  
        // from Element: 

      }
    ],
    "code" : { CodeableConcept }, // I R! Body Mass Index (BMI)
    "subject" : { Reference(Patient) }, // I R! Who and/or what the observation is about
    "<a href="bmi-definitions.html#Observation.focus" title="The actual focus of an observation when it is not the subject of record representing something or someone associated with the patient such as a spouse, parent, fetus, or donor. For example, fetus observations in a mother's record.  The focus of an observation could also be an existing condition,  an intervention, the subject's diet,  another observation of the subject,  or a body structure such as tumor or implanted device.   An example use case would be using the Observation resource to capture whether the mother is trained to change her child's tracheostomy tube. In this example, the child is the patient of record and the mother is the focus. As another use case,

a caregiver (RelatedPerson) has back strain and is unable to provide ADL support to a patient (Subject) (this element modifies the meaning of other elements)" class="dict">

    "focus" : [{ Reference(Resource) }], // IWhat the observation is about, when it is not about the subject of record

    "organizer" : <boolean>, // IThis observation organizes/groups a set of sub-observations
    "

    "encounter" : { Reference(Encounter) }, // IHealthcare event during which this observation is made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension

    "effectiveDateTime" : "<dateTime>", // I R! Vital Signs are point in time measurements and are recorded using the dateTime data type
    "issued" : "<instant>", // IDate/Time this version was made available
    "performer" : [{ Reference(Practitioner) }], // IWho is responsible for the observation
    " 
      { // 

    "valueQuantity" : [ //  sliced by type:$this  in the specified order, Closed 
      { // The quantity for the vital sign being observed. // I

        // from Element: extension
      }
    ],
    "dataAbsentReason" : { CodeableConcept }, // IWhy the result value is missing
    "interpretation" : [{ CodeableConcept }], // IHigh, low, normal, etc
    "interpretationContext" : [{ CodeableReference(Resource) }], // IContext for understanding the observation

    "note" : [{ Annotation }], // IComments about the observation
    "
    "

    "bodySite" : { CodeableConcept }, // IDEPRECATED: Observed body part
    "bodyStructure" : { CodeableReference(BodyStructure) }, // IObserved body structure

    "method" : { CodeableConcept }, // IHow it was done
    "specimen" : { Reference(Specimen) }, // ISpecimen used for this observation
    "device" : { Reference(Device) }, // IA reference to the device that generates the measurements or the device settings for the device
    "referenceRange" : [{ BackboneElement }], // IProvides guide for interpretation
    "hasMember" : [{ Reference(Observation) }], // IUsed when reporting observations included in a vital signs panel
    "derivedFrom" : [{ Reference(DocumentReference) }], // IRelated resource from which the observation is made
    "component" : [{ BackboneElement }], // IComponent results
  }

This structure is derived from Observationvitalsignsbase .

Summary

  1. One code in Observation.category which must have
    • a fixed Observation.category.coding.system = 'http ://loinc.org'
    • a fixed Observation.category.coding.code = '39156-5'
    • The code (or codes) for the measurement obtained in Observation.code . All codes SHALL have a system value
  2. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason
    • Each Observation.valueQuantity must have:
      • One numeric value in Observation.valueQuantity.value
      • a fixed Observation.valueQuantity.system="http://unitsofmeasure.org"
      • a UCUM unit code in Observation.valueQuantity.code = 'kg/m2'

Mandatory: 1 element Must-Support: 2 3 elements

Slices This structure defines the following Slices : The element Observation.category is sliced based on the value of pattern:$this

Differential View

This indicates the differences between this profile and the base Observationvitalsignsbase structure.

code 1 .. 1 CodeableConcept Body Mass Index (BMI) Binding: Vital Signs - BMI ( preferred ): This identifies the set of LOINC codes that are appropriate for representing body mass index (BMI) vital sign measurements in Observation.code.
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon 0 .. * Observationvitalsignsbase FHIR Body Mass Index (BMI) Profile
vs-4: Constraints: For single vital signs observations (that do not require use of components or hasMember), then either a value[x] or a data absent reason must be present. vs-4
. . Slices for category . code S 2 1 .. .. * 1 CodeableConcept Body Mass Index (BMI)
Classification of type of observation Binding: Slice: Vital Signs - BMI Unordered, Open by pattern:$this ( category:BMICode preferred 1..1 CodeableConcept ) : Classification of type This identifies the set of observation LOINC codes that are appropriate for representing body mass index (BMI) vital sign measurements in Observation.code.
Required Pattern: At least the following
. . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex) (Complex)
. . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
. . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: 39156-5
. . . valueQuantity S C icon 0 .. 1 Quantity Vital Signs values are recorded using The quantity for the Quantity data type. For supporting component observations recorded as a component, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. vital sign being observed.
Binding: BMI Units ( required ): kg/m2 ) : kg/m2
. . . dataAbsentReason S C icon 0 .. 1 CodeableConcept Why the result value is missing

doco Documentation for this format icon

Snapshot View

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Observationvitalsignsbase structure.

Classification of type of observation code S Σ C 1..1 CodeableConcept Body Mass Index (BMI) Binding: Vital Signs - BMI ( preferred ): This identifies the set of LOINC codes that are appropriate for representing body mass index (BMI) vital sign measurements in Observation.code. Vital Signs values are recorded using C C
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon 0..* Observationvitalsignsbase FHIR Body Mass Index (BMI) Profile obs-6: Observation.dataAbsentReason SHALL only be present if Observation.value[x] is not present obs-7: If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). obs-8: bodyStructure SHALL only be present if Observation.bodySite is not present
obs-10: Constraints: Observation.component.dataAbsentReason SHALL only be present if Observation.component.value[x] is not present obs-11: vs-4 if organizer exists and organizer = true, then value[x], dataAbsentReason and component SHALL NOT be present vsp-1: if Observation.effective[x] (as dateTime) has a value then that value shall be precise at least to the day vsp-2: If there is no component or hasMember element then either a value[x] or a data absent reason must be present. vs-4: For single vital signs observations (that do not require use of components or hasMember), then either a value[x] or a data absent reason must be present.
. . . 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: All Languages ( required ): ) : IETF language tag for a human language
Additional Bindings Purpose
Common Languages Starter
. . . 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
. . . extension 0..* Extension Additional content defined by implementations
. . . modifierExtension ?! Σ 0..* Extension Extensions that cannot be ignored
. . . identifier Σ 0..* Identifier Business Identifier for observation
. . . instantiates[x] Σ 0..1 canonical ( ObservationDefinition ), Reference ( ObservationDefinition ) Instantiates FHIR ObservationDefinition basedOn Σ 0..* Reference ( CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest ) Fulfills plan, proposal or order
. . . triggeredBy 0..* BackboneElement Triggering observation(s)
. . . . 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
. . . . observation Σ 1..1 Reference ( Observation ) Triggering observation
. . . . type Σ 1..1 code reflex | repeat | re-run
Binding: triggered Bytype ( required ): ) : The type of TriggeredBy Observation.
. . . . reason 0..1 string Reason that the observation was triggered
. . . partOf Σ 0..* Reference ( MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy ) Part of referenced event
. . . status ?! S Σ 1..1 code registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Binding: Observation Status ( required ): ) : Codes providing the status of an observation.
. . . Slices for category S 2 1 .. * CodeableConcept Classification of type of observation
Slice: Unordered, Open by pattern:$this
Binding: Vital Signs Observation Category Codes ( preferred ) : : This value set includes the required vital sign interoperability Codes for high level observation categories.
. . . . category:VSCat S 1..1 CodeableConcept Classification of type of observation
Binding: Observation Category Codes ( preferred ): ) : Codes for high level observation categories.

Required Pattern: At least the following
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex) (Complex)
. . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . extension 0..* Extension Additional content defined by implementations
. . . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
. . . . . . version 0..1 string Version of the system - if relevant
. . . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: vital-signs
. . . . . . display 0..1 string Representation defined by the system
. . . . . . userSelected 0..1 boolean If this coding was chosen directly by the user
. . . . . text 0..1 string Plain text representation of the concept
. . category:BMICode . code S Σ C icon 1..1 CodeableConcept Body Mass Index (BMI)
Binding: Vital Signs Category - BMI ( preferred ): ) : This value set includes identifies the required set of LOINC codes that are appropriate for representing body mass index (BMI) vital sign interoperability categories. measurements in Observation.code.
Required Pattern: At least the following
. . . . id 0..1 string Unique id for inter-element referencing
. . . . extension 0..* Extension Additional content defined by implementations
. . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex) (Complex)
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
. . . . . version 0..1 string Version of the system - if relevant
. . . . . code 1..1 code Symbol in syntax defined by the system
Fixed Value: 39156-5
. . . . . display 0..1 string Representation defined by the system
. . . . . userSelected 0..1 boolean If this coding was chosen directly by the user
. . . . text 0..1 string Plain text representation of the concept
. . . subject S Σ 1..1 Reference ( Patient ) 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
. . . organizer Σ C icon 0..1 boolean This observation organizes/groups a set of sub-observations
. . . encounter Σ 0..1 Reference ( Encounter ) Healthcare event during which this observation is made made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension
. . . effective[x] S Σ C icon 1..1 dateTime Vital Signs are point in time measurements and are recorded using the dateTime data type
. . . issued Σ 0..1 instant Date/Time this version was made available
. . . performer Σ 0..* Reference ( Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | HealthcareService | Group ) Who is responsible for the observation
. . . Slices for value[x] Σ C icon 0 .. 1 Quantity Vital Signs values are recorded using The quantity for the Quantity data type. For supporting component observations recorded as a component, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. vital sign being observed.
Slice: Unordered, Closed by type:$this
Binding: Vital Signs Units ( preferred ) : : Commonly encountered UCUM units for recording Vital Signs.
. . . . value[x]:valueQuantity S Σ C icon 0..1 Quantity The quantity for the Quantity data type. For supporting component observations recorded as a component, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. vital sign being observed.
Binding: BMI Units ( required ): kg/m2 ) : kg/m2
. . . dataAbsentReason S C icon 0..1 CodeableConcept Why the result value is missing
Binding: Data Absent Reason ( extensible ): ) : Codes specifying why the result ( Observation.value[x] ) is missing.
. . . interpretation 0..* CodeableConcept High, low, normal, etc
Binding: Observation Interpretation Codes ( extensible ): ) : Codes identifying interpretations of observations.
. . . interpretationContext 0..* CodeableReference ( Resource ) Context for understanding the observation
Binding: Observation Interpretation Context Codes ( example ) : Codes identifying contextual factors that affect interpretation of observations.
. . . note 0..* Annotation Comments about the observation
. . . bodySite 0..1 CodeableConcept DEPRECATED: Observed body part
Binding: SNOMED CT Body Structures ( example ): ) : SNOMED CT Body site concepts
. . . bodyStructure 0..1 Reference CodeableReference ( BodyStructure ) Observed body structure
Binding: SNOMED CT Body Structures ( example ) : SNOMED CT Body Structures
. . . method 0..1 CodeableConcept How it was done
Binding: Observation Methods ( example ): ) : Methods for simple observations.
. . . specimen C icon 0..1 Reference ( Specimen | Group ) Specimen used for this observation obs-9: If Observation.specimen is a reference to Group, the group can only have specimens
. . . device 0..1 Reference ( Device | DeviceMetric ) A reference to the device that generates the measurements or the device settings for the device
. . . referenceRange C icon 0..* BackboneElement Provides guide for interpretation
obs-3: Must have at least a low or a high or text
. . . . 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 icon 0..1 SimpleQuantity Quantity Low Range, if relevant
. . . . high C icon 0..1 SimpleQuantity Quantity High Range, if relevant
. . . . normalValue 0..1 CodeableConcept Normal value, if relevant
Binding: Observation Reference Range Normal Value Codes ( extensible example ): ) : Codes identifying the normal value of the observation.
. . . . type 0..1 CodeableConcept Reference range qualifier
Binding: Observation Reference Range Meaning Codes ( preferred ): ) : Code for the meaning of a reference range.
. . . . appliesTo 0..* CodeableConcept Reference range population
Binding: Observation Reference Range Applies To Codes ( example ): ) : Codes identifying the population the reference range applies to.
. . . . age 0..1 Range Applicable age range, if relevant
. . . . text C icon 0..1 markdown Text based reference range in an observation
. . . hasMember Σ 0..* Reference ( Observation ) Used when reporting observations included in a vital signs panel
. . . derivedFrom Σ 0..* Reference ( DocumentReference | Observation ) Related resource from which the observation is made
. . . component Σ C icon 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 Σ C icon 1..1 CodeableConcept Vital Sign measurement or component
Binding: LOINC Codes codes with Observation or Both ( example ): ) : Codes identifying names of simple observations.
. . . . Slices for value[x] Σ C icon 0 .. 1 Vital Signs values are recorded using The value for the Quantity data type. For supporting vital sign component observations, such as blood pressure cuff size, other datatypes such as CodeableConcept could be used. being observed.
Slice: Unordered, Open by type:$this
. . . . . valueQuantity Quantity
. . . . . valueCodeableConcept CodeableConcept
. . . . . valueString string
. . . . . valueBoolean boolean
. . . . . valueInteger integer
. . . . . valueRange Range
. . . . . valueRatio Ratio
. . . . . valueSampledData SampledData
. . . . . valueTime time
. . . . . valueDateTime dateTime
. . . . . valuePeriod Period
. . . . . valueAttachment Attachment
. . . . . valueReference Reference ( MolecularSequence MolecularDefinition )
. . . . . value[x]:valueQuantity Σ C icon 0..1 Quantity Vital Sign component value recorded as a component with UCUM (preferred)
Binding: UCUM units - for recording Vital Signs and components. icon ( preferred ): ) : UCUM units - for recording Vital Signs and components.
. . . . dataAbsentReason C icon 0..1 CodeableConcept Why the component result value is missing
Binding: Data Absent Reason ( extensible ): ) : Codes specifying why the result ( Observation.value[x] ) is missing.
. . . . interpretation 0..* CodeableConcept High, low, normal, etc
Binding: Observation Interpretation Codes ( extensible ): ) : Codes identifying interpretations of observations.
. . . . referenceRange 0..* See referenceRange (Observation) Provides guide for interpretation of component result value

doco Documentation for this format icon

XML Template

<!-- Observationbmi -->doco

<Observation xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <meta><!-- I 0..1 Meta Metadata about the resource --></meta>
 <

 <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created -->

 <language value="[code]"/><!-- I 0..1 Language of the resource content   -->
 <text><!-- I 0..1 Narrative 
     Text summary of the resource, for human interpretation --></text>
 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <<a href="bmi-definitions.html#Observation.modifierExtension" title="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 managable, 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.


 <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <identifier><!-- I 0..* Identifier 
     Business Identifier for observation --></identifier>
 <
     Instantiates FHIR ObservationDefinition</instantiates[x]>

 <basedOn><!-- I 0..* Reference(CarePlan) Fulfills plan, proposal or order --></basedOn>
 <triggeredBy> I 0..* BackboneElement  <!-- I 0..* Triggering observation(s) -->
  <<a href="bmi-definitions.html#Observation.triggeredBy.modifierExtension" title="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 managable, 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.


  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <observation><!-- I 1..1 Reference(Observation) 
      Triggering observation --></observation>
  <<a href="bmi-definitions.html#Observation.triggeredBy.type" title="The type of trigger.

  <type value="[code]"/><!-- I 1..1 reflex | repeat | re-run   -->
  <reason value="[string]"/><!-- I 0..1 Reason that the observation was triggered -->
 </triggeredBy>
 <partOf><!-- I 0..* Reference(MedicationAdministration) Part of referenced event --></partOf>
 <status value="[code]"/><!-- I 1..1 registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained   -->
 <-- category sliced by pattern:$this  in the specified orderOpen-->
 <</category>
 <</category>

 <category><!-- I 1..1 CodeableConcept Classification of  type of observation   --></category>

 <code><!-- I 1..1 CodeableConcept Body Mass Index (BMI)   --></code>
 <subject><!-- I 1..1 Reference(Patient) 
     Who and/or what the observation is about --></subject>
 <<a href="bmi-definitions.html#Observation.focus" title="The actual focus of an observation when it is not the subject of record representing something or someone associated with the patient such as a spouse, parent, fetus, or donor. For example, fetus observations in a mother's record.  The focus of an observation could also be an existing condition,  an intervention, the subject's diet,  another observation of the subject,  or a body structure such as tumor or implanted device.   An example use case would be using the Observation resource to capture whether the mother is trained to change her child's tracheostomy tube. In this example, the child is the patient of record and the mother is the focus. As another use case,

a caregiver (RelatedPerson) has back strain and is unable to provide ADL support to a patient (Subject) (this element modifies the meaning of other elements)" class="dict">

 <focus><!-- I 0..* Reference(Resource) 

     What the observation is about, when it is not about the subject of record --></focus>
 <organizer value="[boolean]"/><!-- I 0..1 This observation organizes/groups a set of sub-observations -->
 <encounter><!-- I 0..1 Reference(Encounter) 
     Healthcare event during which this observation is made</encounter>

     Healthcare event during which this observation is made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension --></encounter>

 <effectiveDateTime value="[dateTime]"/><!-- I 1..1 
     Vital Signs are point in time measurements and are recorded using the dateTime data type -->
 <issued value="[instant]"/><!-- I 0..1 Date/Time this version was made available -->
 <performer><!-- I 0..* Reference(Practitioner) 
     Who is responsible for the observation --></performer>
 <-- valueQuantity sliced by type:$this  in the specified orderClosed-->
 <</valueQuantity>

 <valueQuantity><!-- I 0..1 Quantity The quantity for the vital sign being observed.   --></valueQuantity>

 <dataAbsentReason><!-- I 0..1 CodeableConcept Why the result value is missing   --></dataAbsentReason>
 <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc   --></interpretation>
 <interpretationContext><!-- I 0..* CodeableReference Context for understanding the observation   --></interpretationContext>

 <note><!-- I 0..* Annotation Comments about the observation --></note>
 <</bodySite>
 <</bodyStructure>

 <bodySite><!-- I 0..1 CodeableConcept DEPRECATED: Observed body part   --></bodySite>
 <bodyStructure><!-- I 0..1 CodeableReference Observed body structure   --></bodyStructure>

 <method><!-- I 0..1 CodeableConcept How it was done   --></method>
 <specimen><!-- I 0..1 Reference(Specimen) Specimen used for this observation --></specimen>
 <device><!-- I 0..1 Reference(Device) 
     A reference to the device that generates the measurements or the device settings for the device --></device>
 <referenceRange> I 0..* BackboneElement  <!-- I 0..* Provides guide for interpretation -->
  <<a href="bmi-definitions.html#Observation.referenceRange.modifierExtension" title="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 managable, 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.


  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <

  <low><!-- I 0..1 Quantity 

      Low Range, if relevant --></low>
  <

  <high><!-- I 0..1 Quantity 

      High Range, if relevant --></high>
  <normalValue><!-- I 0..1 CodeableConcept Normal value, if relevant   --></normalValue>
  <type><!-- I 0..1 CodeableConcept Reference range qualifier   --></type>
  <appliesTo><!-- I 0..* CodeableConcept Reference range population   --></appliesTo>
  <age><!-- I 0..1 Range 
      Applicable age range, if relevant --></age>
  <text value="[markdown]"/><!-- I 0..1 Text based reference range in an observation -->
 </referenceRange>
 <hasMember><!-- I 0..* Reference(Observation) 
     Used when reporting observations included in a vital signs panel --></hasMember>
 <derivedFrom><!-- I 0..* Reference(DocumentReference) 
     Related resource from which the observation is made --></derivedFrom>
 <component> I 0..* BackboneElement  <!-- I 0..* Component results -->
  <<a href="bmi-definitions.html#Observation.component.modifierExtension" title="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 managable, 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.


  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <</code>

  <code><!-- I 1..1 CodeableConcept Vital Sign measurement or component   --></code>

  <-- value[x] sliced by type:$this  in the specified orderOpen-->
  <valueQuantity><!-- I 0..1 Quantity Vital Sign component value recorded as a component with UCUM (preferred) icon   --></valueQuantity>
  <dataAbsentReason><!-- I 0..1 CodeableConcept Why the component result value is missing   --></dataAbsentReason>
  <interpretation><!-- I 0..* CodeableConcept High, low, normal, etc   --></interpretation>
  <referenceRange><!-- See http://hl7.org/fhir/StructureDefinition/Observation#Observation.referenceRange  Provides guide for interpretation of component result value --></referenceRange>
 </component>
</Observation>

JSON Template

{ // Observationbmi
  // from Element: extension
    "meta" : { Meta }, // IMetadata about the resource
    "

    "implicitRules" : "<uri>", // IA set of rules under which this content was created

    "language" : "<code>", // ILanguage of the resource content
    "text" : { Narrative }, // IText summary of the resource, for human interpretation
    "contained" : [{ Resource }], //Contained, inline Resources
    "<a href="bmi-definitions.html#Observation.modifierExtension" title="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 managable, 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.


    "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored
    "identifier" : [{ Identifier }], // IBusiness Identifier for observation

    "
    "

    "basedOn" : [{ Reference(CarePlan) }], // IFulfills plan, proposal or order
    "triggeredBy" : [{ BackboneElement }], // ITriggering observation(s)
    "partOf" : [{ Reference(MedicationAdministration) }], // IPart of referenced event
    "status" : "<code>", // I R! registered | specimen-in-process | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
    "category" : [ //  sliced by pattern:$this  in the specified order, Open 
      { // Classification of  type of observation // I R! 
        // from Element: extension
      },
      { //  
        // from Element: 

      }
    ],
    "code" : { CodeableConcept }, // I R! Body Mass Index (BMI)
    "subject" : { Reference(Patient) }, // I R! Who and/or what the observation is about
    "<a href="bmi-definitions.html#Observation.focus" title="The actual focus of an observation when it is not the subject of record representing something or someone associated with the patient such as a spouse, parent, fetus, or donor. For example, fetus observations in a mother's record.  The focus of an observation could also be an existing condition,  an intervention, the subject's diet,  another observation of the subject,  or a body structure such as tumor or implanted device.   An example use case would be using the Observation resource to capture whether the mother is trained to change her child's tracheostomy tube. In this example, the child is the patient of record and the mother is the focus. As another use case,

a caregiver (RelatedPerson) has back strain and is unable to provide ADL support to a patient (Subject) (this element modifies the meaning of other elements)" class="dict">

    "focus" : [{ Reference(Resource) }], // IWhat the observation is about, when it is not about the subject of record

    "organizer" : <boolean>, // IThis observation organizes/groups a set of sub-observations
    "

    "encounter" : { Reference(Encounter) }, // IHealthcare event during which this observation is made. If you need to place the observation within one or more episodes of care, use the workflow-episodeOfCare extension

    "effectiveDateTime" : "<dateTime>", // I R! Vital Signs are point in time measurements and are recorded using the dateTime data type
    "issued" : "<instant>", // IDate/Time this version was made available
    "performer" : [{ Reference(Practitioner) }], // IWho is responsible for the observation
    " 
      { // 

    "valueQuantity" : [ //  sliced by type:$this  in the specified order, Closed 
      { // The quantity for the vital sign being observed. // I

        // from Element: extension
      }
    ],
    "dataAbsentReason" : { CodeableConcept }, // IWhy the result value is missing
    "interpretation" : [{ CodeableConcept }], // IHigh, low, normal, etc
    "interpretationContext" : [{ CodeableReference(Resource) }], // IContext for understanding the observation

    "note" : [{ Annotation }], // IComments about the observation
    "
    "

    "bodySite" : { CodeableConcept }, // IDEPRECATED: Observed body part
    "bodyStructure" : { CodeableReference(BodyStructure) }, // IObserved body structure

    "method" : { CodeableConcept }, // IHow it was done
    "specimen" : { Reference(Specimen) }, // ISpecimen used for this observation
    "device" : { Reference(Device) }, // IA reference to the device that generates the measurements or the device settings for the device
    "referenceRange" : [{ BackboneElement }], // IProvides guide for interpretation
    "hasMember" : [{ Reference(Observation) }], // IUsed when reporting observations included in a vital signs panel
    "derivedFrom" : [{ Reference(DocumentReference) }], // IRelated resource from which the observation is made
    "component" : [{ BackboneElement }], // IComponent results
  }

 

Alternate definitions: Master Definition ( XML , JSON ), Schematron

Path Name Conformance ValueSet
Observation.language All Languages required All Languages
Observation.triggeredBy.type triggered Bytype required triggered Bytype
Observation.status Observation Status required Observation Status
Observation.category Vital Signs Category preferred Vital Signs Category Observation.category Vital Signs Observation Category Codes preferred Vital Signs Observation Category Codes
Observation.category Vital Signs Observation Category Codes preferred Vital Signs Observation Category Codes
Observation.code Vital Signs - BMI preferred Vital Signs - BMI
Observation.value[x] BMI Units required BMI Units
Observation.value[x] BMI Units required BMI Units
Observation.dataAbsentReason Data Absent Reason extensible Data Absent Reason
Observation.interpretation Observation Interpretation Codes extensible Observation Interpretation Codes
Observation.interpretationContext Observation Interpretation Context Codes example Observation Interpretation Context Codes
Observation.bodySite SNOMED CT Body Structures example SNOMED CT Body Structures
Observation.bodyStructure SNOMED CT Body Structures example SNOMED CT Body Structures
Observation.method Observation Methods example Observation Methods
Observation.referenceRange.normalValue Observation Reference Range Normal Value Codes extensible example Observation Reference Range Normal Value Codes
Observation.referenceRange.type Observation Reference Range Meaning Codes preferred Observation Reference Range Meaning Codes
Observation.referenceRange.appliesTo Observation Reference Range Applies To Codes example Observation Reference Range Applies To Codes
Observation.component.code LOINC Codes codes with Observation or Both example LOINC Codes codes with Observation or Both
Observation.component.value[x] ?ext preferred http://unitsofmeasure.org/vs icon
Observation.component.dataAbsentReason Data Absent Reason extensible Data Absent Reason
Observation.component.interpretation Observation Interpretation Codes extensible Observation Interpretation Codes
Rule
Id Path Details Requirements
vs-4 Observation For single vital signs observations (that do not require use of components or hasMember), then either a value[x] or a data absent reason must be present.
Expression icon: dataAbsentReason.exists() or value.exists()
. .