VitalSigns
A comprehensive panel of vital signs measurements capturing cardiovascular, respiratory, and basic health indicators. Includes blood pressure, heart rate, respiratory rate, temperature, oxygen saturation, weight, height, and pain assessment.
Overview
VitalSigns captures a complete set of basic physiological measurements in a single observation panel. Rather than creating separate observations for each vital sign, this entity groups them together as they are typically collected during a clinical encounter. It includes all standard vitals (BP, HR, RR, temp, SpO2), anthropometrics (weight, height), and pain assessment, with calculated fields for BMI, mean arterial pressure, and oxygen saturation status.
Key Concepts
Core Vital Signs
Standard physiological measurements:
| Vital Sign | Fields | Unit | Normal Range |
|---|---|---|---|
| Blood Pressure | bloodPressureSystolic, bloodPressureDiastolic | mmHg | 90-120/60-80 |
| Heart Rate | heartRate | beats/min | 60-100 |
| Respiratory Rate | respiratoryRate | breaths/min | 12-20 |
| Temperature | temperature | °C | 36.1-37.2 |
| Oxygen Saturation | oxygenSaturation | % | 95-100 |
Anthropometric Measurements
Body measurements for clinical assessment:
| Measurement | Field | Unit | Purpose |
|---|---|---|---|
| Weight | weight | kg | Dosing, fluid status |
| Height | height | cm | BMI calculation |
| BMI | bmi (calculated) | kg/m² | Body composition |
Temperature Sites
The temperatureSite field affects interpretation:
| Site | Typical Variance | Common Use |
|---|---|---|
oral | Reference | Adult routine |
axillary | -0.5°C | Non-invasive |
rectal | +0.5°C | Pediatric, accurate |
tympanic | Variable | Quick screening |
temporal | Variable | Non-contact |
forehead | Variable | Screening |
Oxygen Supplementation
Context for SpO2 interpretation:
oxygenSupplemental- Is patient on O2?oxygenFlowRate- L/min if on oxygen- Critical for assessing true respiratory status
Pain Assessment
The painScore field (0-10 scale):
- 0 = No pain
- 1-3 = Mild pain
- 4-6 = Moderate pain
- 7-10 = Severe pain
Observation Status
Lifecycle from recording to verification:
| Status | Description |
|---|---|
registered | Initially recorded |
preliminary | Pending verification |
final | Verified and complete |
amended | Modified after final |
corrected | Error corrected |
cancelled | Voided |
entered-in-error | Invalid |
Use Cases
Routine Vital Signs
During standard assessment:
- Record BP, HR, RR, temp, SpO2
- Note temperature site
- Document if on supplemental oxygen
- Assess pain level
- Measure weight if needed
- Set status to final when verified
Triage Assessment
In emergency department:
- Capture full vital signs panel
- Flag critical values
- Note oxygen requirements
- Document pain score
- Support acuity determination
- Trigger alerts for abnormals
Inpatient Monitoring
During hospitalization:
- Record vitals per protocol (q4h, q8h)
- Link to encounter
- Track trends over time
- Flag deterioration
- Support early warning scores
- Document supplemental oxygen changes
Pediatric Assessment
For pediatric patients:
- Use age-appropriate reference ranges
- Prefer tympanic or temporal temp
- Document weight accurately
- Calculate BMI percentile
- Note cooperation level
Critical Care
In intensive care:
- Frequent vital sign documentation
- Track oxygen requirements closely
- Calculate MAP for perfusion
- Document pain despite sedation
- Support hemodynamic monitoring
Related Entities
| Entity | Relationship | Description |
|---|---|---|
| Patient | References | Subject of vitals |
| Encounter | References | Visit context |
| Practitioner | References | Who performed measurement |
| ClinicalIdentifier | Contains | Business identifiers |
Calculated Fields
| Field | Type | Description |
|---|---|---|
bmi | number | Body mass index: weight(kg) / height(m)² |
meanArterialPressure | number | MAP: diastolic + (systolic - diastolic)/3 |
pulseOxStatus | string | Normal (≥95%), Low (90-94%), Critical (<90%) |
Enums
status
| Value | Description |
|---|---|
registered | Vital signs recorded but not yet verified |
preliminary | Initial values available, pending verification |
final | Vital signs verified and complete |
amended | Values modified after finalization |
corrected | Values corrected due to error |
cancelled | Vital signs recording cancelled |
entered-in-error | Recording created in error |
temperatureSite
| Value | Description |
|---|---|
oral | Temperature measured in the mouth |
axillary | Temperature measured in the armpit |
rectal | Temperature measured rectally (most accurate) |
tympanic | Temperature measured in the ear canal |
temporal | Temperature measured at temporal artery |
forehead | Temperature measured on the forehead |
pulseOxStatus
| Value | Description |
|---|---|
Normal | Oxygen saturation 95% or higher |
Low | Oxygen saturation between 90-94%, concerning |
Critical | Oxygen saturation below 90%, requires immediate attention |
Properties
| Property | Type | Mode | Description | Required |
|---|---|---|---|---|
| identifier | ClinicalIdentifier[] | stored | Unique business identifiers assigned to this vital signs observation panel by healthcare systems for tracking and reference across multiple platforms Example: | Optional |
| status | string | stored | Current state of the observation in its lifecycle from initial recording through final verification or correction Values: Example: | Required |
| patient | Patient | stored | Reference to the patient whose vital signs were measured | Required |
| encounter | Encounter | stored | Reference to the healthcare encounter during which these vital signs were recorded - provides clinical context for the measurements | Optional |
| effectiveDateTime | DateTime | stored | Date and time when the vital signs were measured - represents the clinically relevant moment of observation Example: | Required |
| performer | Practitioner | stored | Reference to the healthcare provider or clinical staff member who performed the vital signs measurements | Optional |
| bloodPressureSystolic | number | stored | Systolic blood pressure measurement in millimeters of mercury (mmHg) - represents maximum arterial pressure during heart contraction Example: | Optional |
| bloodPressureDiastolic | number | stored | Diastolic blood pressure measurement in millimeters of mercury (mmHg) - represents minimum arterial pressure during heart relaxation Example: | Optional |
| heartRate | number | stored | Heart rate measurement in beats per minute (bpm) - indicates cardiac rhythm and cardiovascular function Example: | Optional |
| respiratoryRate | number | stored | Respiratory rate measurement in breaths per minute - indicates breathing frequency and respiratory function Example: | Optional |
| temperature | number | stored | Body temperature measurement in degrees Celsius - core indicator of metabolic state and potential infection or inflammation Example: | Optional |
| temperatureSite | string | stored | Anatomical location where temperature was measured - affects interpretation due to site-specific temperature variations Values: Example: | Optional |
| oxygenSaturation | number | stored | Peripheral oxygen saturation (SpO2) measurement as percentage - indicates how well oxygen is being carried to extremities via hemoglobin Example: | Optional |
| oxygenSupplemental | boolean | stored | Whether the patient was receiving supplemental oxygen at the time of SpO2 measurement - critical context for interpreting oxygen saturation values | Optional |
| oxygenFlowRate | number | stored | Supplemental oxygen flow rate in liters per minute (L/min) - recorded when patient is on oxygen therapy Example: | Optional |
| weight | number | stored | Body weight measurement in kilograms (kg) - essential for medication dosing, fluid management, and nutritional assessment Example: | Optional |
| height | number | stored | Body height measurement in centimeters (cm) - used for calculating body mass index and determining normal ranges for other measurements Example: | Optional |
| painScore | number | stored | Patient-reported pain intensity on a 0-10 numeric scale where 0 indicates no pain and 10 represents the worst pain imaginable Example: | Optional |
| notes | string | stored | Clinical observations, contextual information, or special circumstances related to the vital signs measurements - captures qualitative findings that supplement quantitative data Example: | Optional |
| bmi | number | calculated | Body mass index calculated from weight (kg) divided by height squared (m²) - standard measure of body composition used to assess healthy weight ranges | Optional |
| meanArterialPressure | number | calculated | Mean arterial pressure (MAP) calculated from systolic and diastolic pressures using the formula: diastolic + (systolic - diastolic)/3 - represents average arterial pressure during a single cardiac cycle | Optional |
| pulseOxStatus | string | calculated | Clinical interpretation of oxygen saturation level - categorized as Normal (≥95%), Low (90-94%), or Critical (<90%) to support rapid clinical assessment Values: | Optional |
Examples
Example 1
{
"@type": "VitalSigns",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "VS-2024-001234",
"clinicalSystem": "custom"
}
],
"status": "final",
"patient": {
"@type": "Patient",
"givenName": "John",
"familyName": "Smith",
"birthDate": "1975-05-15"
},
"encounter": {
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "ENC-2024-001234"
}
]
},
"effectiveDateTime": "2024-11-30T09:15:00Z",
"performer": {
"@type": "Practitioner",
"givenName": "Emily",
"familyName": "Davis"
},
"bloodPressureSystolic": 120,
"bloodPressureDiastolic": 80,
"heartRate": 72,
"respiratoryRate": 16,
"temperature": 37,
"temperatureSite": "oral",
"oxygenSaturation": 98,
"oxygenSupplemental": false,
"weight": 75,
"height": 175,
"painScore": 0,
"notes": "Routine annual physical examination - all vital signs within normal limits",
"_comment": "bmi: 24.5, meanArterialPressure: 93.3, pulseOxStatus: Normal"
}Example 2
{
"@type": "VitalSigns",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "VS-2024-567890",
"clinicalSystem": "custom"
}
],
"status": "final",
"patient": {
"@type": "Patient",
"givenName": "Emma",
"familyName": "Thompson",
"birthDate": "2018-03-22"
},
"encounter": {
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "ENC-2024-567890"
}
]
},
"effectiveDateTime": "2024-11-30T10:30:00Z",
"performer": {
"@type": "Practitioner",
"givenName": "Sarah",
"familyName": "Johnson"
},
"bloodPressureSystolic": 95,
"bloodPressureDiastolic": 60,
"heartRate": 95,
"respiratoryRate": 22,
"temperature": 37.8,
"temperatureSite": "tympanic",
"oxygenSaturation": 99,
"oxygenSupplemental": false,
"weight": 22,
"height": 115,
"painScore": 3,
"notes": "Pediatric well-child visit - mild fever, vitals appropriate for age, child cooperative",
"_comment": "bmi: 16.6, meanArterialPressure: 71.7, pulseOxStatus: Normal"
}Example 3
{
"@type": "VitalSigns",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "VS-2024-987654",
"clinicalSystem": "custom"
}
],
"status": "final",
"patient": {
"@type": "Patient",
"givenName": "Robert",
"familyName": "Williams",
"birthDate": "1942-03-10"
},
"encounter": {
"@type": "Encounter",
"identifier": [
{
"@type": "ClinicalIdentifier",
"value": "ER-2024-987654"
}
]
},
"effectiveDateTime": "2024-11-30T14:45:00Z",
"performer": {
"@type": "Practitioner",
"givenName": "Michael",
"familyName": "Chen"
},
"bloodPressureSystolic": 145,
"bloodPressureDiastolic": 92,
"heartRate": 105,
"respiratoryRate": 24,
"temperature": 38.5,
"temperatureSite": "oral",
"oxygenSaturation": 89,
"oxygenSupplemental": true,
"oxygenFlowRate": 4,
"weight": 82,
"height": 170,
"painScore": 7,
"notes": "Critical care admission - respiratory distress with supplemental oxygen, elevated temperature, tachycardia, patient anxious and diaphoretic",
"_comment": "bmi: 28.4, meanArterialPressure: 109.7, pulseOxStatus: Critical"
}