Release 4 FHIR CI-Build

This page is part of the Continuous Integration Build of FHIR Specification (v4.0.1: R4 - Mixed Normative and STU ) in it's permanent home (it will always (will be available incorrect/inconsistent at this URL). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see times).
See the Directory of published versions icon . Page versions: R5 R4B R4 R3

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

The official canonical URL for this profile is:

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

FHIR Oxygen Saturation Profile

This profile was published on Tue, Oct 23, Sat, Aug 11, 2018 00:00+1100 00:00+0000 as a draft by Health Level Seven HL7 International (Orders / Orders and Observations Workgroup). Observations.

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

This structure is derived from observation-vitalsigns Observationvitalsignsbase .

Summary

"#### Complete Summary of the Mandatory Requirements

  1. One code in Observation.code which must have
    • a fixed Observation.code.coding.system = 'http ://loinc.org'
    • a fixed Observation.code.coding.code Observation.category.coding.code = '2708-6'
    • Other additional Codings are allowed The code (or codes) for the measurement obtained in Observation.code - e.g. more specific LOINC Codes, SNOMED CT concepts, system specific codes. . All codes SHALL have an 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 = '%'

Mandatory: 3 elements (+4 nested mandatory elements) Must-Support: 4 elements Fixed Value: 4 3 elements

Slices This structure defines the following Slices : The element Observation.code.coding is sliced based on the values of value:code, value:system

This structure is derived from indicates the differences between this profile and the base observation-vitalsigns . Observationvitalsignsbase structure.

1..1
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon 0..* 0 .. * Observationvitalsignsbase FHIR Oxygen Saturation Profile
Constraints: vs-4
. . . code S 1 .. 1 CodeableConcept Oxygen Saturation
coding Binding: Vital Signs - Oxygen Sat ( preferred ) (Slice Definition) : This identifies the set of LOINC codes that are appropriate for representing arterial oxygen saturation vital sign measurements in Observation.code.
Slice: Required Pattern: Unordered, Open by value:code, value:system At least the following
. . coding:OxygenSatCode . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (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: 2708-6
. . . valueQuantity S C icon 0 .. 1 Quantity value S The quantity for the vital sign being observed. 1..1
Binding: decimal Oxygen Saturation Units unit ( required S ) 1..1 string : %
. . system . dataAbsentReason S 1..1 C icon uri Fixed Value: 0 http://unitsofmeasure.org .. code S 1 1..1 code CodeableConcept Coded responses from Why the common UCUM units for vital signs result value set. Fixed 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.

I I I 0..* I S Σ I I S Σ I Σ I S Σ I Σ I Σ I Σ I I Σ I 1..1 Coding Code defined by a terminology system I Σ I Σ I Σ I Σ I Σ I Σ I S 1..1 Often just a dateTime for Vital Signs vs-1: if Observation.effective[x] S ?! Σ I < | <= | >= | > - how to understand 1..1 string Unit representation 1..1 S I 0..1 I I CodeableConcept I I (Measurement) Device I 0..1 I I S Used when reporting systolic and diastolic blood pressure. vs-3: If there is no a value a data absent reason must be present I S Type of Period I I Unknown reference to #Observation.referenceRange
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon I 0..* Observationvitalsignsbase FHIR Oxygen Saturation Profile
Constraints: vs-4
. . . id Σ 0..1 string id Logical id of this artifact
. . . meta Σ I 0..1 Meta Metadata about the resource
. . . implicitRules ?! Σ I 0..1 uri A set of rules under which this content was created
. . . language 0..1 code Language of the resource content
Binding: Common All Languages ( preferred required ) Max Binding: : All 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 ?! I Σ 0..* Extension Extensions that cannot be ignored
. . . identifier Σ I 0..* Identifier Business Identifier for observation
. . . basedOn Σ I 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
.. . . partOf observation Σ 1..1 Reference ( Observation ) Triggering observation
.... type Σ I 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 Σ I 1..1 code registered | specimen-in-process | preliminary | final | amended + | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Binding: ObservationStatus Observation Status ( required ) : Codes providing the status of an observation.
. . . Slices for category S I 1 .. * (Slice Definition) CodeableConcept Classification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system pattern:$this
Binding: Observation Category Codes ( preferred ) : Codes for high level observation categories.
. . . . category:VSCat S I 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 Slice: Unordered, Open by value:url
. . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
. . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . extension 0..* Extension Additional content defined by implementations Slice: Unordered, Open by value:url
. . . . . . 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
. . . code S Σ I C icon 1..1 CodeableConcept Oxygen Saturation
Binding: Vital Signs - Oxygen Sat ( extensible preferred ) : This identifies the set of LOINC codes that are appropriate for representing arterial oxygen saturation vital sign 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 Slice: Unordered, Open by value:url
. . . . coding 1..* (Slice Definition) Coding Code defined by a terminology system Slice: Unordered, Open by value:code, value:system coding:OxygenSatCode
Σ Fixed Value: I (Complex)
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations Slice: Unordered, Open by value:url
. . . . . 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: 2708-6
. . . . . 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 Σ I 1..1 Reference ( Patient ) Who and/or what the observation is about
. . . focus ?! Σ I 0..* Reference ( Resource ) What the observation is about, when it is not about the subject of record
. . encounter . organizer Σ I C icon 0..1 Reference ( Encounter boolean ) Healthcare event during which this This observation is made organizes/groups a set of sub-observations
. . effective[x] . encounter Σ I 0..1 Reference ( Encounter ) Healthcare event during which this observation is dateTime and has a value then that value shall be precise made. If you need to place the day observation within one or more episodes of care, use the workflow-episodeOfCare extension
. . . effectiveDateTime dateTime effective[x] S effectivePeriod Σ C icon 1..1 Period dateTime Vital Signs are point in time measurements and are recorded using the dateTime data type
. . . issued Σ I 0..1 instant Date/Time this version was made available
. . . performer Σ I 0..* Reference ( Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | HealthcareService | Group ) Who is responsible for the observation
. . . Slices for value[x] Σ I C icon 0 (Slice Definition) .. 1 Quantity Vital Signs value are recorded using The quantity for the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. vital sign being observed.
Slice: Unordered, Closed by type:$this value[x]:valueQuantity S Σ
I Binding: 0..1 Quantity Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. id 0..1 string Unique id for inter-element referencing extension Units I ( 0..* Extension preferred ) Additional content defined by implementations : Slice: Commonly encountered UCUM units for recording Vital Signs. Unordered, Open by value:url
. . . value . value[x]:valueQuantity S Σ I 1..1 decimal Numerical value (with implicit precision) comparator C icon 0..1 code Quantity The quantity for the value vital sign being observed.
Binding: QuantityComparator ( required Oxygen Saturation Units ) unit ( required S ) Σ : I %
. . system . dataAbsentReason S Σ C icon I 0..1 uri CodeableConcept Why the result value is missing
System that defines coded unit form Fixed Value: http://unitsofmeasure.org Binding: code Data Absent Reason S ( Σ extensible I ) 1..1 code : Coded responses from Codes specifying why the common UCUM units for vital signs value set. result ( Fixed Value: Observation.value[x] % ) is missing.
. . dataAbsentReason . interpretation 0..* CodeableConcept High, low, normal, etc
Why the result is missing Binding: DataAbsentReason Observation Interpretation Codes ( extensible ) : Codes identifying interpretations of observations.
. . interpretation . interpretationContext 0..* CodeableConcept CodeableReference ( Resource ) Context for understanding the observation
High, low, normal, etc. Binding: Observation Interpretation Context Codes ( extensible example ) : Codes identifying contextual factors that affect interpretation of observations.
. . . note 0..* Annotation Comments about the observation
. . . bodySite 0..1 I CodeableConcept DEPRECATED: Observed body part
Binding: SNOMED CT Body Structures ( example ) : SNOMED CT Body site concepts 0..1
. . . bodyStructure 0..1 CodeableReference ( BodyStructure ) Observed body part 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 I 0..1 Reference ( Specimen | Group ) Specimen used for this observation
. . . 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 I 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . low C icon I 0..1 SimpleQuantity Quantity Low Range, if relevant
. . . . high C icon I 0..1 SimpleQuantity Quantity High Range, if relevant
. . . . type normalValue 0..1 I CodeableConcept Normal value, if relevant
Binding: Observation Reference Range Normal Value Codes ( 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 I 0..1 string markdown Text based reference range in an observation
. . . hasMember Σ I 0..* Reference ( QuestionnaireResponse | MolecularSequence | Vital Signs Profile Observation ) Used when reporting observations included in a vital signs panel components
. . . derivedFrom Σ I 0..* Reference ( DocumentReference | ImagingStudy | Media | QuestionnaireResponse | MolecularSequence | Vital Signs Profile Observation ) Related measurements resource from which the observation is made from
. . . component Σ I 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . code Σ I C icon 1..1 CodeableConcept Vital Sign measurement or component observation (code / type)
Binding: Vital Signs LOINC codes with Observation or Both ( extensible example ) : Codes identifying names of simple observations.
. . . . Slices for value[x] Σ C icon S Σ 0 I .. 1 0..1 The value for the vital sign component being observed.
Vital Sign Value recorded with UCUM Slice: Binding: Unordered, Open by type:$this Vital Signs Units ( required )
. . . . . valueQuantity Quantity
. . . . . valueCodeableConcept CodeableConcept
. . . . . valueString string
. . . . . valueBoolean boolean
. . . . . valueInteger integer
. . . . . valueRange Range
. . . . . valueRatio Ratio
. . . . . valueSampledData SampledData
. . . . . valueTime time
. . . . . valueDateTime dateTime
. . . . . valuePeriod Period
. . . . . valuePeriod valueAttachment Attachment
. . . . . valueReference Reference ( 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 S C icon I 0..1 CodeableConcept Why the component result value is missing
Binding: DataAbsentReason Data Absent Reason ( extensible ) : Codes specifying why the result ( Observation.value[x] ) is missing.
. . . . interpretation 0..* CodeableConcept High, low, normal, etc. 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
<!-- observation-oxygensat -->

<!-- Observationoxygensat -->doco


<Observation xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <</id>
 <</meta>
 <
 <
 <

 <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>
 <<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
 <

 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <identifier><!-- I 0..* Identifier 

     Business Identifier for observation --></identifier>
 <</basedOn>
 <</partOf>
 <
 
 <
  <
   <
   <
   <
   <
   <
  </coding>
  <
 </category>
 <
  
  <
   <
   <
   <
   <
   <
  </coding>
  <
 </code>
 <

 <basedOn><!-- I 0..* Reference(CarePlan) Fulfills plan, proposal or order --></basedOn>
 <triggeredBy> I 0..* BackboneElement  <!-- I 0..* Triggering observation(s) -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <observation><!-- I 1..1 Reference(Observation) 
      Triggering observation --></observation>
  <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><!-- I 1..1 CodeableConcept Classification of  type of observation   --></category>
 <code><!-- I 1..1 CodeableConcept Oxygen Saturation   --></code>
 <subject><!-- I 1..1 Reference(Patient) 

     Who and/or what the observation is about --></subject>
 <

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

     What the observation is about, when it is not about the subject of record --></focus>
 <
     Healthcare event during which this observation is made</encounter>
 <
     Often just a dateTime for Vital Signs</effective[x]>
 <
 <

 <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. 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>
 <</dataAbsentReason>
 <</interpretation>
 <</note>
 <</bodySite>
 <</method>
 <</specimen>
 <</device>
 <
  <<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <

 <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><!-- 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 -->
  <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>
  <</type>
  <</appliesTo>
  <

  <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>
 <
     Used when reporting vital signs panel components</hasMember>
 <
     Related measurements the observation is made from</derivedFrom>
 <
  <<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <</code>
  <|
    </value[x]>
  <</dataAbsentReason>
  <</interpretation>
  <</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 -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <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>
{ // 

{ // Observationoxygensat

  // from Element: extension
    "
    "
    "
    "
    "
    "<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
    "
    "
    "
    "
    " 
      { //  

    "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
    "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
        " ]
        "
        "

      }
    ],
    "
    "
    "
    "

    "
    "
    "
    "
    " 
      { // 

    "code" : { CodeableConcept }, // I R! Oxygen Saturation
    "subject" : { Reference(Patient) }, // I R! Who and/or what the observation is about
    "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 observation-vitalsigns Observationvitalsignsbase .

Summary

"#### Complete Summary of the Mandatory Requirements

  1. One code in Observation.code which must have
    • a fixed Observation.code.coding.system = 'http ://loinc.org'
    • a fixed Observation.code.coding.code Observation.category.coding.code = '2708-6'
    • Other additional Codings are allowed The code (or codes) for the measurement obtained in Observation.code - e.g. more specific LOINC Codes, SNOMED CT concepts, system specific codes. . All codes SHALL have an 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 = '%'

Mandatory: 3 elements (+4 nested mandatory elements) Must-Support: 4 elements Fixed Value: 4 3 elements

Slices This structure defines the following Slices : The element Observation.code.coding is sliced based on the values of value:code, value:system

Differential View

This structure is derived from indicates the differences between this profile and the base observation-vitalsigns . Observationvitalsignsbase structure.

1..1
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon 0..* 0 .. * Observationvitalsignsbase FHIR Oxygen Saturation Profile
Constraints: vs-4
. . . code S 1 .. 1 CodeableConcept Oxygen Saturation
coding Binding: Vital Signs - Oxygen Sat ( preferred ) (Slice Definition) : This identifies the set of LOINC codes that are appropriate for representing arterial oxygen saturation vital sign measurements in Observation.code.
Slice: Required Pattern: Unordered, Open by value:code, value:system At least the following
. . coding:OxygenSatCode . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (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: 2708-6
. . . valueQuantity S C icon 0 .. 1 Quantity value S The quantity for the vital sign being observed. 1..1
Binding: decimal Oxygen Saturation Units unit ( required S ) 1..1 string : %
. . system . dataAbsentReason S 1..1 C icon uri Fixed Value: 0 http://unitsofmeasure.org .. code S 1 1..1 code CodeableConcept Coded responses from Why the common UCUM units for vital signs result value set. Fixed 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.

I I I 0..* I S Σ I I S Σ I Σ I S Σ I Σ I Σ I Σ I I Σ I 1..1 Coding Code defined by a terminology system I Σ I Σ I Σ I Σ I Σ I Σ I S 1..1 Often just a dateTime for Vital Signs vs-1: if Observation.effective[x] S ?! Σ I < | <= | >= | > - how to understand 1..1 string Unit representation 1..1 S I 0..1 I I CodeableConcept I I (Measurement) Device I 0..1 I I S Used when reporting systolic and diastolic blood pressure. vs-3: If there is no a value a data absent reason must be present I S Type of Period I I Unknown reference to #Observation.referenceRange
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Observation C icon I 0..* Observationvitalsignsbase FHIR Oxygen Saturation Profile
Constraints: vs-4
. . . id Σ 0..1 string id Logical id of this artifact
. . . meta Σ I 0..1 Meta Metadata about the resource
. . . implicitRules ?! Σ I 0..1 uri A set of rules under which this content was created
. . . language 0..1 code Language of the resource content
Binding: Common All Languages ( preferred required ) Max Binding: : All 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 ?! I Σ 0..* Extension Extensions that cannot be ignored
. . . identifier Σ I 0..* Identifier Business Identifier for observation
. . . basedOn Σ I 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
.. . . partOf observation Σ 1..1 Reference ( Observation ) Triggering observation
.... type Σ I 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 Σ I 1..1 code registered | specimen-in-process | preliminary | final | amended + | corrected | appended | cancelled | entered-in-error | unknown | cannot-be-obtained
Binding: ObservationStatus Observation Status ( required ) : Codes providing the status of an observation.
. . . Slices for category S I 1 .. * (Slice Definition) CodeableConcept Classification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system pattern:$this
Binding: Observation Category Codes ( preferred ) : Codes for high level observation categories.
. . . . category:VSCat S I 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 Slice: Unordered, Open by value:url
. . . . . coding 1..* Coding Code defined by a terminology system
Fixed Value: (Complex)
. . . . . . id 0..1 string Unique id for inter-element referencing
. . . . . . extension 0..* Extension Additional content defined by implementations Slice: Unordered, Open by value:url
. . . . . . 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
. . . code S Σ I C icon 1..1 CodeableConcept Oxygen Saturation
Binding: Vital Signs - Oxygen Sat ( extensible preferred ) : This identifies the set of LOINC codes that are appropriate for representing arterial oxygen saturation vital sign 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 Slice: Unordered, Open by value:url
. . . . coding 1..* (Slice Definition) Coding Code defined by a terminology system Slice: Unordered, Open by value:code, value:system coding:OxygenSatCode
Σ Fixed Value: I (Complex)
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations Slice: Unordered, Open by value:url
. . . . . 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: 2708-6
. . . . . 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 Σ I 1..1 Reference ( Patient ) Who and/or what the observation is about
. . . focus ?! Σ I 0..* Reference ( Resource ) What the observation is about, when it is not about the subject of record
. . encounter . organizer Σ I C icon 0..1 Reference ( Encounter boolean ) Healthcare event during which this This observation is made organizes/groups a set of sub-observations
. . effective[x] . encounter Σ I 0..1 Reference ( Encounter ) Healthcare event during which this observation is dateTime and has a value then that value shall be precise made. If you need to place the day observation within one or more episodes of care, use the workflow-episodeOfCare extension
. . . effectiveDateTime dateTime effective[x] S effectivePeriod Σ C icon 1..1 Period dateTime Vital Signs are point in time measurements and are recorded using the dateTime data type
. . . issued Σ I 0..1 instant Date/Time this version was made available
. . . performer Σ I 0..* Reference ( Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson | HealthcareService | Group ) Who is responsible for the observation
. . . Slices for value[x] Σ I C icon 0 (Slice Definition) .. 1 Quantity Vital Signs value are recorded using The quantity for the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. vital sign being observed.
Slice: Unordered, Closed by type:$this value[x]:valueQuantity S Σ
I Binding: 0..1 Quantity Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. id 0..1 string Unique id for inter-element referencing extension Units I ( 0..* Extension preferred ) Additional content defined by implementations : Slice: Commonly encountered UCUM units for recording Vital Signs. Unordered, Open by value:url
. . . value . value[x]:valueQuantity S Σ I 1..1 decimal Numerical value (with implicit precision) comparator C icon 0..1 code Quantity The quantity for the value vital sign being observed.
Binding: QuantityComparator ( required Oxygen Saturation Units ) unit ( required S ) Σ : I %
. . system . dataAbsentReason S Σ C icon I 0..1 uri CodeableConcept Why the result value is missing
System that defines coded unit form Fixed Value: http://unitsofmeasure.org Binding: code Data Absent Reason S ( Σ extensible I ) 1..1 code : Coded responses from Codes specifying why the common UCUM units for vital signs value set. result ( Fixed Value: Observation.value[x] % ) is missing.
. . dataAbsentReason . interpretation 0..* CodeableConcept High, low, normal, etc
Why the result is missing Binding: DataAbsentReason Observation Interpretation Codes ( extensible ) : Codes identifying interpretations of observations.
. . interpretation . interpretationContext 0..* CodeableConcept CodeableReference ( Resource ) Context for understanding the observation
High, low, normal, etc. Binding: Observation Interpretation Context Codes ( extensible example ) : Codes identifying contextual factors that affect interpretation of observations.
. . . note 0..* Annotation Comments about the observation
. . . bodySite 0..1 I CodeableConcept DEPRECATED: Observed body part
Binding: SNOMED CT Body Structures ( example ) : SNOMED CT Body site concepts 0..1
. . . bodyStructure 0..1 CodeableReference ( BodyStructure ) Observed body part 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 I 0..1 Reference ( Specimen | Group ) Specimen used for this observation
. . . 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 I 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . low C icon I 0..1 SimpleQuantity Quantity Low Range, if relevant
. . . . high C icon I 0..1 SimpleQuantity Quantity High Range, if relevant
. . . . type normalValue 0..1 I CodeableConcept Normal value, if relevant
Binding: Observation Reference Range Normal Value Codes ( 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 I 0..1 string markdown Text based reference range in an observation
. . . hasMember Σ I 0..* Reference ( QuestionnaireResponse | MolecularSequence | Vital Signs Profile Observation ) Used when reporting observations included in a vital signs panel components
. . . derivedFrom Σ I 0..* Reference ( DocumentReference | ImagingStudy | Media | QuestionnaireResponse | MolecularSequence | Vital Signs Profile Observation ) Related measurements resource from which the observation is made from
. . . component Σ I 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . code Σ I C icon 1..1 CodeableConcept Vital Sign measurement or component observation (code / type)
Binding: Vital Signs LOINC codes with Observation or Both ( extensible example ) : Codes identifying names of simple observations.
. . . . Slices for value[x] Σ C icon S Σ 0 I .. 1 0..1 The value for the vital sign component being observed.
Vital Sign Value recorded with UCUM Slice: Binding: Unordered, Open by type:$this Vital Signs Units ( required )
. . . . . valueQuantity Quantity
. . . . . valueCodeableConcept CodeableConcept
. . . . . valueString string
. . . . . valueBoolean boolean
. . . . . valueInteger integer
. . . . . valueRange Range
. . . . . valueRatio Ratio
. . . . . valueSampledData SampledData
. . . . . valueTime time
. . . . . valueDateTime dateTime
. . . . . valuePeriod Period
. . . . . valuePeriod valueAttachment Attachment
. . . . . valueReference Reference ( 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 S C icon I 0..1 CodeableConcept Why the component result value is missing
Binding: DataAbsentReason Data Absent Reason ( extensible ) : Codes specifying why the result ( Observation.value[x] ) is missing.
. . . . interpretation 0..* CodeableConcept High, low, normal, etc. 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

<!-- observation-oxygensat -->

<!-- Observationoxygensat -->doco


<Observation xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <</id>
 <</meta>
 <
 <
 <

 <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>
 <<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
 <

 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored  --></modifierExtension>
 <identifier><!-- I 0..* Identifier 

     Business Identifier for observation --></identifier>
 <</basedOn>
 <</partOf>
 <
 
 <
  <
   <
   <
   <
   <
   <
  </coding>
  <
 </category>
 <
  
  <
   <
   <
   <
   <
   <
  </coding>
  <
 </code>
 <

 <basedOn><!-- I 0..* Reference(CarePlan) Fulfills plan, proposal or order --></basedOn>
 <triggeredBy> I 0..* BackboneElement  <!-- I 0..* Triggering observation(s) -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <observation><!-- I 1..1 Reference(Observation) 
      Triggering observation --></observation>
  <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><!-- I 1..1 CodeableConcept Classification of  type of observation   --></category>
 <code><!-- I 1..1 CodeableConcept Oxygen Saturation   --></code>
 <subject><!-- I 1..1 Reference(Patient) 

     Who and/or what the observation is about --></subject>
 <

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

     What the observation is about, when it is not about the subject of record --></focus>
 <
     Healthcare event during which this observation is made</encounter>
 <
     Often just a dateTime for Vital Signs</effective[x]>
 <
 <

 <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. 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>
 <</dataAbsentReason>
 <</interpretation>
 <</note>
 <</bodySite>
 <</method>
 <</specimen>
 <</device>
 <
  <<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <

 <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><!-- 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 -->
  <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>
  <</type>
  <</appliesTo>
  <

  <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>
 <
     Used when reporting vital signs panel components</hasMember>
 <
     Related measurements the observation is made from</derivedFrom>
 <
  <<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <</code>
  <|
    </value[x]>
  <</dataAbsentReason>
  <</interpretation>
  <</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 -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <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

{ // 

{ // Observationoxygensat

  // from Element: extension
    "
    "
    "
    "
    "
    "<a href="oxygensat-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 manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
    "
    "
    "
    "
    " 
      { //  

    "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
    "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
        " ]
        "
        "

      }
    ],
    "
    "
    "
    "

    "
    "
    "
    "
    " 
      { // 

    "code" : { CodeableConcept }, // I R! Oxygen Saturation
    "subject" : { Reference(Patient) }, // I R! Who and/or what the observation is about
    "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 Common All Languages preferred required Common All Languages
Observation.status Observation.triggeredBy.type triggered Bytype required ObservationStatus triggered Bytype
Observation.status Observation Status required ObservationStatus Observation Status
Observation.category Observation Category Codes preferred Observation Category Codes
Observation.category Observation Category Codes preferred Observation Category Codes
Observation.code Vital Signs - Oxygen Sat extensible preferred Vital Signs - Oxygen Sat
Observation.value[x].comparator Observation.value[x] Oxygen Saturation Units required QuantityComparator Oxygen Saturation Units
Observation.value[x] Oxygen Saturation Units required QuantityComparator Oxygen Saturation Units
Observation.dataAbsentReason DataAbsentReason Data Absent Reason extensible DataAbsentReason 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.type Observation.referenceRange.normalValue Observation Reference Range Normal Value Codes example Observation Reference Range Meaning 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 Vital Signs LOINC codes with Observation or Both extensible example Vital Signs LOINC codes with Observation or Both
Observation.component.value[x] Vital Signs Units ?ext required preferred Vital Signs Units http://unitsofmeasure.org/vs icon
Observation.component.dataAbsentReason DataAbsentReason Data Absent Reason extensible DataAbsentReason Data Absent Reason
Observation.component.interpretation Observation Interpretation Codes extensible Observation Interpretation Codes
Rule
Id Path Details Requirements
vs-1 Observation.effective[x] if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day Expression : ($this as dateTime).toString().length() >= 8 vs-4 Rule obs-3 Observation Observation.referenceRange Must have at least a low For single vital signs observations (that do not require use of components or hasMember), then either a high or text Expression : low.exists() or high.exists() value[x] or text.exists() Rule vs-3 Observation.component If there is no a value a data absent reason must be present present.
Expression icon : value.exists() or dataAbsentReason.exists() or value.exists()
. .