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 Respiration Rate Observation

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

A profile on the Observation that declares how MHV will Read/Create in PGHD for respiration rate measurements. This is mostly used in conjunction with Blood Oxygen Saturation (aka PulseOx).

This profile is consistent with FHIR core Vital-Signs for Respiration Rate

  • must be marked with MHV app tag
  • must have vital-signs category
  • must have LOINC#9279-1 code
    • FHIR Core, Argonaut and VCM use 9279-1
  • must have effectiveDateTime
    • others might use effectivePeriod
  • must have valueQuantity with units only of breaths per minute
    • typical is 12-16 breaths per minute
    • must be a value 5 <= n <=120
  • must have status at final or preliminary
  • must point at the patient
  • may have a note (comment)
  • once created will or might have an id, versionId, lastUpdated, text, and identifier
  • DSTU2 use comment rather than note

Search PGHD

Respiration Rate are recorded by various applications using the same LOINC codes, MHV will query PGHD asking for Observations with that code.

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|9279-1&_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 the codes
  • _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 Respiration 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-resprate

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation observation-resprate
... 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
... 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]:valueQuantity 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 1..1decimalNumerical value (with implicit precision)
.... unit 1..1stringUnit representation
Required Pattern: /min
... 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 0..0
... derivedFrom 0..0
... component 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-resprateFHIR Respiratory Rate 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..1CodeableConceptRespiratory Rate
Binding: VitalSigns (extensible): This identifies the vital sign result type.

.... Slices for coding Σ0..*CodingCode defined by a terminology system
Slice: Unordered, Open by value:code, value:system
..... coding:RespRateCode Σ1..1CodingCode defined by a terminology system
...... system Σ1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 9279-1
... 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
... Slices for 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.
Slice: Unordered, Closed by type:$this
.... value[x]:valueQuantity 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 SΣ1..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 SΣ1..1stringUnit representation
Required Pattern: /min
..... system SΣC1..1uriSystem that defines coded unit form
Fixed Value: http://unitsofmeasure.org
..... code SΣ1..1codeCoded responses from the common UCUM units for vital signs value set.
Fixed Value: /min
... note 0..1AnnotationComments about the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Observation.statusrequiredObservationStatus
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensibleVitalSigns
Observation.value[x]:valueQuantity.comparatorrequiredQuantityComparator
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-resprateFHIR Respiratory Rate 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..1CodeableConceptRespiratory Rate
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 Σ0..*CodingCode defined by a terminology system
Slice: Unordered, Open by value:code, value:system
..... coding:RespRateCode Σ1..1CodingCode 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 Σ1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 9279-1
...... 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
... 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
... Slices for 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.
Slice: Unordered, Closed by type:$this
.... value[x]:valueQuantity 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 SΣ1..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 SΣ1..1stringUnit representation
Required Pattern: /min
..... system SΣC1..1uriSystem that defines coded unit form
Fixed Value: http://unitsofmeasure.org
..... code SΣ1..1codeCoded responses from the common UCUM units for vital signs value set.
Fixed Value: /min
... note 0..1AnnotationComments about the observation

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]:valueQuantity.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-resprate

Summary

Mandatory: 1 element (1 nested mandatory element)
Prohibited: 22 elements

Slices

This structure defines the following Slices:

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

Maturity: 2

Differential View

This structure is derived from observation-resprate

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation observation-resprate
... 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
... 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]:valueQuantity 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 1..1decimalNumerical value (with implicit precision)
.... unit 1..1stringUnit representation
Required Pattern: /min
... 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 0..0
... derivedFrom 0..0
... component 0..0

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-resprateFHIR Respiratory Rate 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..1CodeableConceptRespiratory Rate
Binding: VitalSigns (extensible): This identifies the vital sign result type.

.... Slices for coding Σ0..*CodingCode defined by a terminology system
Slice: Unordered, Open by value:code, value:system
..... coding:RespRateCode Σ1..1CodingCode defined by a terminology system
...... system Σ1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 9279-1
... 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
... Slices for 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.
Slice: Unordered, Closed by type:$this
.... value[x]:valueQuantity 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 SΣ1..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 SΣ1..1stringUnit representation
Required Pattern: /min
..... system SΣC1..1uriSystem that defines coded unit form
Fixed Value: http://unitsofmeasure.org
..... code SΣ1..1codeCoded responses from the common UCUM units for vital signs value set.
Fixed Value: /min
... note 0..1AnnotationComments about the observation

doco Documentation for this format

Terminology Bindings

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

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-resprateFHIR Respiratory Rate 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..1CodeableConceptRespiratory Rate
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 Σ0..*CodingCode defined by a terminology system
Slice: Unordered, Open by value:code, value:system
..... coding:RespRateCode Σ1..1CodingCode 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 Σ1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 9279-1
...... 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
... 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
... Slices for 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.
Slice: Unordered, Closed by type:$this
.... value[x]:valueQuantity 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 SΣ1..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 SΣ1..1stringUnit representation
Required Pattern: /min
..... system SΣC1..1uriSystem that defines coded unit form
Fixed Value: http://unitsofmeasure.org
..... code SΣ1..1codeCoded responses from the common UCUM units for vital signs value set.
Fixed Value: /min
... note 0..1AnnotationComments about the observation

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]:valueQuantity.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-resprate

Summary

Mandatory: 1 element (1 nested mandatory element)
Prohibited: 22 elements

Slices

This structure defines the following Slices:

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

Maturity: 2

 

Other representations of profile: CSV, Excel, Schematron