Personal Health Records, published by HL7 International / Patient Empowerment. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ballot2 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/personal-health-record-format-ig/ and changes regularly. See the Directory of published versions
| Official URL: http://hl7.org/fhir/uv/phr/StructureDefinition/Environmental | Version: 1.0.0-ballot2 | ||||
| Standards status: Trial-use Active as of 2026-03-27 | Maturity Level: 1 | Computable Name: Environmental | |||
A logical model representing environmental conditions relevant to patient health, such as air quality, temperature, noise, and UV exposure. These factors may be collected by consumer weather stations, smartphone sensors, or wearable devices.
Usages:
You can also check for usages in the FHIR IG Statistics
Description Differentials, Snapshots, and other representations.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Base | Environmental Observation | |
![]() ![]() |
1..1 | Reference(Patient) | The patient whose environment is being observed | |
![]() ![]() |
0..1 | dateTime | When the observation was made | |
![]() ![]() |
0..1 | Period | Time period over which the observation applies | |
![]() ![]() |
0..1 | Address | Location of measurement | |
![]() ![]() |
0..1 | BackboneElement | GPS coordinates of the observation | |
![]() ![]() ![]() |
1..1 | decimal | Latitude in decimal degrees | |
![]() ![]() ![]() |
1..1 | decimal | Longitude in decimal degrees | |
![]() ![]() ![]() |
0..1 | Quantity | Altitude above sea level | |
![]() ![]() |
0..1 | Quantity | Ambient temperature | |
![]() ![]() |
0..1 | Quantity | Ambient relative humidity percentage | |
![]() ![]() |
0..1 | Quantity | Barometric pressure | |
![]() ![]() |
0..1 | integer | Air quality index (AQI) | |
![]() ![]() |
0..1 | decimal | UV exposure index | |
![]() ![]() |
0..1 | Quantity | Environmental noise level in decibels | |
![]() ![]() |
0..1 | Quantity | Pollen count | |
![]() ![]() |
0..* | BackboneElement | Substances detected in the environment | |
![]() ![]() ![]() |
1..1 | CodeableConcept | Substance identity (e.g. lead, PFAS, asbestos, mold, radon) | |
![]() ![]() ![]() |
0..1 | CodeableConcept | Category of substance (e.g. contaminant, toxin, irritant, allergen) | |
![]() ![]() ![]() |
0..1 | Quantity | Measured concentration of the substance | |
![]() ![]() ![]() |
0..1 | string | Source or medium (e.g. groundwater, soil, air, surface) | |
Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Base | Environmental Observation | |
![]() ![]() |
1..1 | Reference(Patient) | The patient whose environment is being observed | |
![]() ![]() |
0..1 | dateTime | When the observation was made | |
![]() ![]() |
0..1 | Period | Time period over which the observation applies | |
![]() ![]() |
0..1 | Address | Location of measurement | |
![]() ![]() |
0..1 | BackboneElement | GPS coordinates of the observation | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | decimal | Latitude in decimal degrees | |
![]() ![]() ![]() |
1..1 | decimal | Longitude in decimal degrees | |
![]() ![]() ![]() |
0..1 | Quantity | Altitude above sea level | |
![]() ![]() |
0..1 | Quantity | Ambient temperature | |
![]() ![]() |
0..1 | Quantity | Ambient relative humidity percentage | |
![]() ![]() |
0..1 | Quantity | Barometric pressure | |
![]() ![]() |
0..1 | integer | Air quality index (AQI) | |
![]() ![]() |
0..1 | decimal | UV exposure index | |
![]() ![]() |
0..1 | Quantity | Environmental noise level in decibels | |
![]() ![]() |
0..1 | Quantity | Pollen count | |
![]() ![]() |
0..* | BackboneElement | Substances detected in the environment | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | CodeableConcept | Substance identity (e.g. lead, PFAS, asbestos, mold, radon) | |
![]() ![]() ![]() |
0..1 | CodeableConcept | Category of substance (e.g. contaminant, toxin, irritant, allergen) | |
![]() ![]() ![]() |
0..1 | Quantity | Measured concentration of the substance | |
![]() ![]() ![]() |
0..1 | string | Source or medium (e.g. groundwater, soil, air, surface) | |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
Differential View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Base | Environmental Observation | |
![]() ![]() |
1..1 | Reference(Patient) | The patient whose environment is being observed | |
![]() ![]() |
0..1 | dateTime | When the observation was made | |
![]() ![]() |
0..1 | Period | Time period over which the observation applies | |
![]() ![]() |
0..1 | Address | Location of measurement | |
![]() ![]() |
0..1 | BackboneElement | GPS coordinates of the observation | |
![]() ![]() ![]() |
1..1 | decimal | Latitude in decimal degrees | |
![]() ![]() ![]() |
1..1 | decimal | Longitude in decimal degrees | |
![]() ![]() ![]() |
0..1 | Quantity | Altitude above sea level | |
![]() ![]() |
0..1 | Quantity | Ambient temperature | |
![]() ![]() |
0..1 | Quantity | Ambient relative humidity percentage | |
![]() ![]() |
0..1 | Quantity | Barometric pressure | |
![]() ![]() |
0..1 | integer | Air quality index (AQI) | |
![]() ![]() |
0..1 | decimal | UV exposure index | |
![]() ![]() |
0..1 | Quantity | Environmental noise level in decibels | |
![]() ![]() |
0..1 | Quantity | Pollen count | |
![]() ![]() |
0..* | BackboneElement | Substances detected in the environment | |
![]() ![]() ![]() |
1..1 | CodeableConcept | Substance identity (e.g. lead, PFAS, asbestos, mold, radon) | |
![]() ![]() ![]() |
0..1 | CodeableConcept | Category of substance (e.g. contaminant, toxin, irritant, allergen) | |
![]() ![]() ![]() |
0..1 | Quantity | Measured concentration of the substance | |
![]() ![]() ![]() |
0..1 | string | Source or medium (e.g. groundwater, soil, air, surface) | |
Documentation for this format | ||||
Snapshot ViewView
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Base | Environmental Observation | |
![]() ![]() |
1..1 | Reference(Patient) | The patient whose environment is being observed | |
![]() ![]() |
0..1 | dateTime | When the observation was made | |
![]() ![]() |
0..1 | Period | Time period over which the observation applies | |
![]() ![]() |
0..1 | Address | Location of measurement | |
![]() ![]() |
0..1 | BackboneElement | GPS coordinates of the observation | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | decimal | Latitude in decimal degrees | |
![]() ![]() ![]() |
1..1 | decimal | Longitude in decimal degrees | |
![]() ![]() ![]() |
0..1 | Quantity | Altitude above sea level | |
![]() ![]() |
0..1 | Quantity | Ambient temperature | |
![]() ![]() |
0..1 | Quantity | Ambient relative humidity percentage | |
![]() ![]() |
0..1 | Quantity | Barometric pressure | |
![]() ![]() |
0..1 | integer | Air quality index (AQI) | |
![]() ![]() |
0..1 | decimal | UV exposure index | |
![]() ![]() |
0..1 | Quantity | Environmental noise level in decibels | |
![]() ![]() |
0..1 | Quantity | Pollen count | |
![]() ![]() |
0..* | BackboneElement | Substances detected in the environment | |
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
1..1 | CodeableConcept | Substance identity (e.g. lead, PFAS, asbestos, mold, radon) | |
![]() ![]() ![]() |
0..1 | CodeableConcept | Category of substance (e.g. contaminant, toxin, irritant, allergen) | |
![]() ![]() ![]() |
0..1 | Quantity | Measured concentration of the substance | |
![]() ![]() ![]() |
0..1 | string | Source or medium (e.g. groundwater, soil, air, surface) | |
Documentation for this format | ||||
| Id | Grade | Path(s) | Description | Expression |
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|