PatientContact
A contact person associated with a patient, such as emergency contacts, guardians, next of kin, or legal representatives. Essential for emergency situations, medical decision-making, and care coordination.
Overview
PatientContact links patients to important people in their support network. These contacts serve various roles from emergency notification to legal healthcare decision-making. The entity captures the relationship type, contact details, authorization levels, and notification preferences to ensure appropriate communication in different healthcare scenarios.
Key Concepts
Contact Roles
Each contact can serve multiple roles:
| Role | Purpose |
|---|---|
| Emergency Contact | First to call in medical emergencies |
| Healthcare Proxy | Authorized to make medical decisions |
| Next of Kin | Family notification and coordination |
| Legal Guardian | Legal authority over patient (minors, incapacitated) |
| Insurance Subscriber | Primary holder of insurance policy |
Contact Authorization
Key authorization flags:
isPrimary- Main contact for general communicationisEmergencyContact- Should be contacted in emergenciescanMakeDecisions- Authorized for medical decisions when patient cannot
Relationship Types
Contacts are categorized via PatientRelationshipType:
Family
- Spouse, parent, child, sibling
Legal
- Guardian, power of attorney
Social
- Friend, emergency contact, neighbor
Professional
- Employer, caregiver
Notification Preferences
The notificationPreferences array via PatientNotificationType specifies what communications this contact should receive:
- Clinical updates (lab results, imaging)
- Administrative notices (appointments, scheduling)
- Financial information (invoices, insurance)
- General announcements
Validity Period
Contacts can have time-limited validity:
validFrom- When the contact relationship beginsvalidTo- When the relationship expires (e.g., temporary guardian)
Use Cases
Emergency Notification
When patient has emergency:
- Retrieve contacts where
isEmergencyContact: true - Sort by
isPrimaryto get primary contact first - Use contact's phone/email from linked Person
- Document notification attempts and responses
- Proceed to alternate contacts if primary unreachable
Medical Decision-Making
When patient cannot make decisions:
- Query contacts where
canMakeDecisions: true - Verify contact's authorization is still valid
- Check for advance directives naming healthcare proxy
- Document decision-maker and their choices
- Ensure proper legal documentation on file
Pediatric Care Coordination
For minor patients:
- Identify parent/guardian contacts
- Verify
canMakeDecisionsfor treatment consent - Set up notification preferences for both parents if applicable
- Document custody arrangements in notes
- Ensure school/daycare contacts if needed
Insurance Coordination
When patient is dependent:
- Identify subscriber contact
- Link to PatientCoverage via
subscriber - Use
subscriberRelationshipto document connection - Coordinate billing communications appropriately
Notification Management
When sending communications:
- Check contact's
notificationPreferences - Only send relevant notification types
- Use preferred contact method from Person record
- Respect opt-out preferences
- Log all communications sent
Related Entities
| Entity | Relationship | Description |
|---|---|---|
| Patient | Belongs to | The patient this contact is associated with |
| Person | References | The contact person's demographic and contact info |
| PatientRelationshipType | References | Type of relationship to the patient |
| PatientNotificationType | References many | Types of notifications this contact should receive |
Properties
| Property | Type | Mode | Description | Required |
|---|---|---|---|---|
| patient | Patient | stored | Patient this contact is associated with | Required |
| person | Person | stored | The contact person | Required |
| relationshipType | PatientRelationshipType | stored | Nature of the relationship to the patient | Required |
| isPrimary | boolean | stored | Whether this is the primary contact for the patient Example: | Required |
| isEmergencyContact | boolean | stored | Whether to contact in case of emergency Example: | Required |
| canMakeDecisions | boolean | stored | Whether authorized to make medical decisions on behalf of patient | Optional |
| notificationPreferences | PatientNotificationType[] | stored | Types of notifications this contact should receive | Optional |
| validFrom | Date | stored | Date from which this contact relationship is valid | Optional |
| validTo | Date | stored | Date until which this contact relationship is valid | Optional |
| notes | string | stored | Additional notes about the contact or relationship | Optional |
Examples
Example 1
{
"@type": "PatientContact",
"patient": {
"@type": "Patient",
"givenName": "John",
"familyName": "Smith"
},
"person": {
"@type": "Person",
"givenName": "Mary",
"familyName": "Smith"
},
"relationshipType": {
"@type": "PatientRelationshipType",
"code": "SPOUSE",
"label": "Spouse",
"category": "family"
},
"isPrimary": true,
"isEmergencyContact": true,
"canMakeDecisions": true,
"notificationPreferences": [
{
"@type": "PatientNotificationType",
"code": "APPOINTMENT_REMINDER",
"label": "Appointment Reminder",
"category": "administrative"
},
{
"@type": "PatientNotificationType",
"code": "LAB_RESULTS",
"label": "Lab Results",
"category": "clinical"
},
{
"@type": "PatientNotificationType",
"code": "INVOICE",
"label": "Invoice",
"category": "financial"
}
]
}Example 2
{
"@type": "PatientContact",
"patient": {
"@type": "Patient",
"givenName": "Sarah",
"familyName": "Johnson"
},
"person": {
"@type": "Person",
"givenName": "Robert",
"familyName": "Johnson"
},
"relationshipType": {
"@type": "PatientRelationshipType",
"code": "PARENT",
"label": "Parent",
"category": "family"
},
"isPrimary": true,
"isEmergencyContact": true,
"canMakeDecisions": true,
"notes": "Primary guardian with legal custody"
}Example 3
{
"@type": "PatientContact",
"patient": {
"@type": "Patient",
"givenName": "Sarah",
"familyName": "Johnson"
},
"person": {
"@type": "Person",
"givenName": "Emily",
"familyName": "Johnson"
},
"relationshipType": {
"@type": "PatientRelationshipType",
"code": "SIBLING",
"label": "Sibling",
"category": "family"
},
"isPrimary": false,
"isEmergencyContact": true,
"canMakeDecisions": false
}