MyHealtheVet use of PGHD
0.2.10-beta - ci-build United States of America flag

MyHealtheVet use of PGHD - Local Development build (v0.2.10-beta) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: VA MHV Blood Oxygen Saturation Observation

Official URL: https://johnmoehrke.github.io/MHV-PGHD/StructureDefinition/VA.MHV.bloodOxygenSat Version: 0.2.10-beta
Standards status: Trial-use Maturity Level: 2 Computable Name: MHVbloodOxygenSat

A profile on the Observation that declares how MHV will Read/Create in PGHD for blood Oxygen Saturation measurements (aka Pulse Ox).

This profile is consistent with FHIR core Vital-Signs for Oxygen Saturation

  • must be marked with MHV app tag
  • must have vital-signs category
  • must have LOINC#59408-5 code AND LOINC#2708-6
    • Argonaut and VCM use 59408-5
    • FHIR Core R4 also adds 2708-6
  • must have effectiveDateTime
    • others might use effectivePeriod
  • must have a valueQuantity with UCUM ‘%’ units
    • must be between 50% <= n <= 100%
  • must have status at final or preliminary
  • must point at the patient
  • may have a hasMember of a heart-rate and/or respiration-rate
  • may have a note (comment)
  • MHV captures Oxygen Setting, but this is not captured or stored in PGHD
  • once created will or might have an id, versionId, lastUpdated, text, and identifier
  • DSTU2 use comment rather than note

The MyHealtheVet Oxygen Saturation - aka Pulse OX

Epic MyHealtheVet will support Oxygen Saturation measurements in the PGHD (FHIR) repository

Use-Case

View all measurements currently in PGHD

Given that Oxygen Saturation measurements may be automatically recorded by Internet connected Oxygen Saturation measurement devices that are Veteran authorized

When the Veteran needs to confirm that the measurements taken are available in PGHD

Then the MyHealtheVet will provide a user interface that displays the current measurements,

And these current measurements shall be sorted by date/time

And these current measurements shall be paged in pages of N size

User Interface prototype

will have a User Interface similar to

Where:

  • This will display the measurements recorded in the PGHD database (status of preliminary and final)
    • query based only on LOINC code of 59408-5 (unclear that adding both codes has any value)
    • GET [base]/Observation?subject=[patient]&code=59408-5[&_count=1000][&date=...]
    • may use _count to limit the count to the size of the output desired
    • may use date to limit the boundary of time of the output desired
  • For each oxygen saturation value found in PGHD (for a Given page size)
  • Display the date/time sorted data
    • Date
    • Time
    • Percentage Oxygen Saturation
  • has-member other Observations related to this entry
    • When a Pulse/Heart-Rate is associated with the Oxygen Saturation measurement, it will be displayed.
    • When a Respiration-Rate is associated with the Oxygen Saturation measurement, it will be displayed.

possible additional columns

  • VCM equivalent UI shows the “source”, which I think is the application (e.g. Get Care, Mobile Kidney, MyHealtheVet)
  • Unclear if others are populating any element that might identify the device used (samples given in May 2021 do not show anything else)

Graph all measurements currently in PGHD

Given that there are measurement shown in table form

When the user requests to see a graphic view

Then MyHealtheVet will show the data time-plotted

And normal range of 90%-99% indicated for visual relationship

Mark a specified entry as deleted

Given that the Oxygen Saturation measurements will often be automatically entered upon use of a Oxygen Saturation device

When the device is used by someone other than the Veteran a spurious measurement will be recorded into PGHD

And the Veteran desires to not have that incorrect/inaccurate value associated with their medical measurements in PGHD

Then MyHealtheVet will provide a way for the user to select an entry from the list of measurements displayed

And MyHealtheVet will use the PGHD DELETE verb to indicate to PGHD that the entry should be marked as deleted

Note, that PGHD does not fully delete entries that are marked as deleted, but does make them unavailable for normal queries so the result will be that the measurement will no longer be in the list in MyHealtheVet or Virtual Care Manager

Add manually entered Oxygen Saturation measurement

Given that some Veterans will not have measurement devices that are capable of automatically recording, or unwilling to authorize the measurement device, or do not have technology sufficient to support automatical recording from an Oxygen Saturation measurement device

When the Veteran takes a measurement

And the Veteran desires to enter the measurement

Then the MyHealtheVet will provide a user interface that enables the manual entry of the Oxygen Saturation measurement

User Interface

  • Date/time, not to be a future
  • Date/time, not to be too far in the past
  • Percentage of Oxygen Saturation to one decimal place (e.g. 95.2%)
  • Normal ranges for Oxygen Saturation are 90%-99%, so outside this range should cause a User Interface challenge to the user to confirm the value entered.
  • Percentage of Oxygen Saturation not to be greater than 100%
  • Percentage of Oxygen Saturation not to be less than 50% value defined by clinical review
  • comment

Heart-Rate Considerations

Note that the Veteran may have a pulse that is associated with the Oxygen Saturation entry. This may be optionally recorded as a related Heart Rate Observation. Similar to the Blood-Pressure use of a related Heart-Rate measurement.

Note, when a Heart Rate associated with a Oxygen Saturation Measurement is deleted or updated; the relationship between the Oxygen Saturation Measurement and that Heart Rate must be confirmed or eliminated.

Respiration-Rate Considerations

Note that the Veteran may have a respiration rate that is associated with the Oxygen Saturation entry. This may be optionally recorded as a related Respiration Rate Observation. Similar to the Blood-Pressure use of a related Heart-Rate measurement.

Note, when a Respiration Rate associated with a Oxygen Saturation Measurement is deleted or updated; the relationship between the Oxygen Saturation Measurement and that Respiration Rate must be confirmed or eliminated.

Edit is not proposed

Edit is not proposed as a User-Story as it presents too many concerns for revisions. The use-case need to change a measurement can be satisfied by deleting the current and adding a replacement with the proper values.

Search PGHD

Because Blood Oxygen Saturation are recorded by various applications with either of two LOINC codes, MHV will query PGHD asking for Observations with either of the two codes. Because this is a logical “OR”, then results will also include Observations with both codes. MHV further requests inclusion of other Observations linked by a hasMember relationship, which would be related heart rate at the time the blood pressure was taken.

The following is a example, hitting the test PGHD service, about a test patient.

https://veteran.apps-staging.va.gov/smart-pgd-fhir/v2/Observation?patient.identifier=urn:uuid:2.16.840.1.113883.4.349|1012853550V207686&code=http://loinc.org|59408-5,http://loinc.org|2708-6&_include=Observation:has-member&_sort=-date&_count=100&_pretty=true&_format=json 

Breakdown of query parameters

  • patient.identifier – this takes the patient ICN, and the server will find appropriate entries for that patient
  • code - searching for Observations with either of these codes (OR relationship)
  • _include – also return anything that the Observation.hasMember points at
    • this should return any heart rate that is associated with the Blood Oxygen Saturation observations being returned
  • _sort – ask that the results be sorted by date
  • _count – ask that no more than 100 be returned in each page
  • _pretty – ask that the results be pretty printed (normal json has no unnecessary whitespace)
  • _format – ask for json encoding

Results will be limited to 100 Blood Oxygen Saturation Observations, which might be larger than 100 as there would be associated heart rate observations.

The next page is retrieved using the FHIR paging mechanism.

The User Experience should NOT be aware of pages at the FHIR API level.

Profile

Usage:

Formal Views of Profile Content

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

This structure is derived from observation-vitalsigns

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*observation-vitalsignsFHIR Vital Signs Profile
... meta
.... security 0..0
.... tag 1..1CodingTags applied to this resource
Required Pattern: At least the following
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
... implicitRules 0..0
... language 0..0
... contained 0..0
... extension 0..0
... modifierExtension 0..0
... basedOn 0..0
... partOf 0..0
... code
.... Slices for coding 2..2CodingCode defined by a terminology system
Slice: Unordered, Closed by value:$this
..... coding:ox1 1..1CodingCode defined by a terminology system
Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 59408-5
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood by Pulse oximetry
..... coding:ox2 1..1CodingCode defined by a terminology system
Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2708-6
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood
... focus 0..0
... encounter 0..0
... Slices for effective[x] 1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Open by type:$this
.... effective[x]:effectiveDateTime 1..1dateTimeOften just a dateTime for Vital Signs
... issued 0..0
... performer 0..0
... value[x] 0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value 0..1decimalNumerical value (with implicit precision)
.... unit 0..1stringUnit representation
Required Pattern: %
... dataAbsentReason 0..0
... interpretation 0..0
... note 0..1AnnotationComments about the observation
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember S0..2Reference(VA MHV HeartRate Observation | VA MHV Respiration Rate Observation)Used when reporting vital signs panel components
... derivedFrom 0..0
... component 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... Slices for category S1..*CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... coding SΣ1..*CodingCode defined by a terminology system
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.

.... Slices for coding Σ2..2CodingCode defined by a terminology system
Slice: Unordered, Closed by value:$this
..... coding:ox1 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 59408-5
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood by Pulse oximetry
..... coding:ox2 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2708-6
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Required Pattern: %
... note 0..1AnnotationComments about the observation
... hasMember SΣ0..2Reference(VA MHV HeartRate Observation | VA MHV Respiration Rate Observation)Used when reporting vital signs panel components

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Observation.statusrequiredObservationStatus
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensibleVitalSigns
Observation.value[x].comparatorrequiredQuantityComparator
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... source Σ0..1uriIdentifies where the resource comes from
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... tag Σ1..1CodingTags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".



Required Pattern: At least the following
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
... text 0..1NarrativeText summary of the resource, for human interpretation
... identifier Σ0..*IdentifierBusiness Identifier for observation
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... Slices for category S1..*CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding SΣ1..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ2..2CodingCode defined by a terminology system
Slice: Unordered, Closed by value:$this
..... coding:ox1 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... version0..1stringVersion of the system - if relevant
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 59408-5
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood by Pulse oximetry
...... userSelected0..1booleanIf this coding was chosen directly by the user
..... coding:ox2 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... version0..1stringVersion of the system - if relevant
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2708-6
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood
...... userSelected0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital 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..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Required Pattern: %
.... system ΣC0..1uriSystem that defines coded unit form
.... code Σ0..1codeCoded form of the unit
... note 0..1AnnotationComments about the observation
... hasMember SΣ0..2Reference(VA MHV HeartRate Observation | VA MHV Respiration Rate Observation)Used when reporting vital signs panel components

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.meta.tagexamplePattern: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
Observation.statusrequiredObservationStatus
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensibleVitalSigns
Observation.value[x].comparatorrequiredQuantityComparator
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationextensibleObservationInterpretationCodes

This structure is derived from observation-vitalsigns

Summary

Mandatory: 3 elements (1 nested mandatory element)
Must-Support: 1 element
Prohibited: 21 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Observation.code.coding is sliced based on the value of value:$this (Closed)
  • The element Observation.effective[x] is sliced based on the value of type:$this

Maturity: 2

Differential View

This structure is derived from observation-vitalsigns

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*observation-vitalsignsFHIR Vital Signs Profile
... meta
.... security 0..0
.... tag 1..1CodingTags applied to this resource
Required Pattern: At least the following
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
... implicitRules 0..0
... language 0..0
... contained 0..0
... extension 0..0
... modifierExtension 0..0
... basedOn 0..0
... partOf 0..0
... code
.... Slices for coding 2..2CodingCode defined by a terminology system
Slice: Unordered, Closed by value:$this
..... coding:ox1 1..1CodingCode defined by a terminology system
Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 59408-5
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood by Pulse oximetry
..... coding:ox2 1..1CodingCode defined by a terminology system
Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2708-6
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood
... focus 0..0
... encounter 0..0
... Slices for effective[x] 1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Open by type:$this
.... effective[x]:effectiveDateTime 1..1dateTimeOften just a dateTime for Vital Signs
... issued 0..0
... performer 0..0
... value[x] 0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value 0..1decimalNumerical value (with implicit precision)
.... unit 0..1stringUnit representation
Required Pattern: %
... dataAbsentReason 0..0
... interpretation 0..0
... note 0..1AnnotationComments about the observation
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember S0..2Reference(VA MHV HeartRate Observation | VA MHV Respiration Rate Observation)Used when reporting vital signs panel components
... derivedFrom 0..0
... component 0..0

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... Slices for category S1..*CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... coding SΣ1..*CodingCode defined by a terminology system
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.

.... Slices for coding Σ2..2CodingCode defined by a terminology system
Slice: Unordered, Closed by value:$this
..... coding:ox1 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 59408-5
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood by Pulse oximetry
..... coding:ox2 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2708-6
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Required Pattern: %
... note 0..1AnnotationComments about the observation
... hasMember SΣ0..2Reference(VA MHV HeartRate Observation | VA MHV Respiration Rate Observation)Used when reporting vital signs panel components

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Observation.statusrequiredObservationStatus
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensibleVitalSigns
Observation.value[x].comparatorrequiredQuantityComparator
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... source Σ0..1uriIdentifies where the resource comes from
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... tag Σ1..1CodingTags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".



Required Pattern: At least the following
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
... text 0..1NarrativeText summary of the resource, for human interpretation
... identifier Σ0..*IdentifierBusiness Identifier for observation
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... Slices for category S1..*CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding SΣ1..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... Slices for coding Σ2..2CodingCode defined by a terminology system
Slice: Unordered, Closed by value:$this
..... coding:ox1 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... version0..1stringVersion of the system - if relevant
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 59408-5
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood by Pulse oximetry
...... userSelected0..1booleanIf this coding was chosen directly by the user
..... coding:ox2 Σ1..1CodingCode defined by a terminology system

Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... version0..1stringVersion of the system - if relevant
...... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2708-6
...... display1..1stringRepresentation defined by the system
Fixed Value: Oxygen saturation in Arterial blood
...... userSelected0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital 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..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Required Pattern: %
.... system ΣC0..1uriSystem that defines coded unit form
.... code Σ0..1codeCoded form of the unit
... note 0..1AnnotationComments about the observation
... hasMember SΣ0..2Reference(VA MHV HeartRate Observation | VA MHV Respiration Rate Observation)Used when reporting vital signs panel components

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.meta.tagexamplePattern: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
Observation.statusrequiredObservationStatus
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensibleVitalSigns
Observation.value[x].comparatorrequiredQuantityComparator
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationextensibleObservationInterpretationCodes

This structure is derived from observation-vitalsigns

Summary

Mandatory: 3 elements (1 nested mandatory element)
Must-Support: 1 element
Prohibited: 21 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Observation.code.coding is sliced based on the value of value:$this (Closed)
  • The element Observation.effective[x] is sliced based on the value of type:$this

Maturity: 2

 

Other representations of profile: CSV, Excel, Schematron