EU Health Data API
0.1.0 - ci-build
150
EU Health Data API, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/euridice-org/eu-health-data-api/ and changes regularly. See the Directory of published versions
| Official URL: http://hl7.eu/fhir/eu-health-data-api/CapabilityStatement/EEHRxF-ResourceConsumer | Version: | 0.1.0 | |||
| Computable Name: EEHRxFResourceConsumer | |||||
Copyright/Legal: Copyright HL7 Europe. Licensed under Creative Commons public domain (CC0 1.0). |
|||||
CapabilityStatement for the EEHRxF Resource Consumer actor. This actor queries for clinical data resources following the International Patient Access (IPA) patterns and IHE QEDm Clinical Data Consumer capabilities.
This CapabilityStatement defines the requirements for systems consuming direct resource access (beyond document-based exchange) in the EU EHR Exchange Format (EEHRxF) ecosystem. It inherits patterns from:
Following IPA's approach, clients are not required to consume all clinical resources listed below. Clients MAY choose which resources to query based on their needs and the server's declared capabilities. The only required capability is Patient lookup. This flexibility allows clients to implement targeted use cases without requiring support for all resource types.
Required: Patient (for lookup context) Optional (request based on needs and server support):
Clients should check the server's CapabilityStatement to discover which resources are available.
Systems SHALL support SMART Backend Services authorization for all transactions.
Consumers SHOULD expect resources conforming to EU Core profiles where available.
Raw OpenAPI-Swagger Definition file | Download
Language: en
json, xmlNote to Implementers: FHIR Capabilities
Any FHIR capability may be 'allowed' by the system unless explicitly marked as 'SHALL NOT'. A few items are marked as MAY in the Implementation Guide to highlight their potential relevance to the use case.
clientThe Resource Consumer actor queries for clinical data resources from a Resource Access Provider following IPA and QEDm patterns. This enables direct resource access complementing document-based exchange via MHD.
All transactions require SMART Backend Services authorization.
SMART-on-FHIRSMART Backend Services authorization is REQUIRED for all transactions. Systems SHALL:
- Authenticate using JWT client credentials (RFC 7523)
- Request appropriate scopes for resource access
- Use TLS 1.2 or higher for all communications
Resource Flexibility
Following IPA's approach, clients MAY choose which clinical resources to request based on their needs and the server's capabilities (as declared in the server's CapabilityStatement). Patient lookup is required; other resources are requested as needed.
Scopes for Desired Resources
Clients SHALL request scopes for the resources they need:
- system/Patient.read, system/Patient.search (REQUIRED - read and search Patient)
- system/Condition.read, system/Condition.search (if Condition needed)
- system/AllergyIntolerance.read, system/AllergyIntolerance.search (if AllergyIntolerance needed)
- system/Observation.read, system/Observation.search (if Observation needed)
- system/DiagnosticReport.read, system/DiagnosticReport.search (if DiagnosticReport needed)
- system/MedicationRequest.read, system/MedicationRequest.search (if MedicationRequest needed)
- system/MedicationDispense.read, system/MedicationDispense.search (if MedicationDispense needed)
- system/Encounter.read, system/Encounter.search (if Encounter needed)
- system/Practitioner.read (if Practitioner needed)
- system/Organization.read (if Organization needed)
The summary table lists the resources that are part of this configuration, and for each resource it lists:
_include_revinclude| Resource Type | Profile | R | S | U | C | Searches | _include | _revinclude | Operations |
|---|---|---|---|---|---|---|---|---|---|
| Patient | Y | Y | _id, identifier, family, given, birthdate | ||||||
| Practitioner | Y | ||||||||
| Organization | Y | ||||||||
| Condition | Y | Y | patient, clinical-status, category, code | ||||||
| AllergyIntolerance | Y | Y | patient, clinical-status | ||||||
| Observation | Y | Y | patient, category, code, date, status | ||||||
| DiagnosticReport | Y | Y | patient, category, code, date, status | ||||||
| MedicationRequest | Y | Y | patient, status, intent, authoredon | ||||||
| MedicationDispense | Y | Y | patient, status, whenhandedover | ||||||
| Encounter | Y | Y | patient, date, status, class |
readRead Patient by logical ID
search-typeSearch for patients for lookup purposes
Patient resources are queried for patient lookup per PDQm [ITI-78] with identifier as a required search parameter. Note: Patient is used for lookup context, not as a primary clinical data resource in this actor.
| Conformance | Parameter | Type | Documentation |
|---|---|---|---|
| SHALL | _id | token | Patient logical ID |
| SHALL | identifier | token | Patient identifier (e.g., national ID, MRN) - required for patient lookup |
| SHOULD | family | string | Patient family name |
| SHOULD | given | string | Patient given name |
| SHOULD | birthdate | date | Patient date of birth |
readRead Practitioner by logical ID
Practitioner resources are read to resolve clinical context for referenced healthcare providers. Clients SHOULD support this resource but MAY omit it based on their needs.
readRead Organization by logical ID
Organization resources are read to resolve context for referenced healthcare organizations. Clients SHOULD support this resource but MAY omit it based on their needs.
readRead Condition by logical ID
search-typeSearch for Condition resources
Condition resources represent problems, diagnoses, and health concerns. If supported, clients SHALL support search by patient and SHOULD support additional filters. Clients MAY omit this resource based on their needs.
| Conformance | Parameter | Type | Documentation |
|---|---|---|---|
| SHALL | patient | reference | The patient who has the condition (SHALL support) |
| SHOULD | clinical-status | token | The clinical status of the condition |
| SHOULD | category | token | The category of condition |
| SHOULD | code | token | Code for the condition |
readRead AllergyIntolerance by logical ID
search-typeSearch for AllergyIntolerance resources
AllergyIntolerance resources represent patient allergies and intolerances. If supported, clients SHALL support search by patient. Clients MAY omit this resource based on their needs.
| Conformance | Parameter | Type | Documentation |
|---|---|---|---|
| SHALL | patient | reference | The patient who has the allergy or intolerance (SHALL support) |
| SHOULD | clinical-status | token | The clinical status of the allergy or intolerance |
readRead Observation by logical ID
search-typeSearch for Observation resources
Observation resources represent clinical observations including vital signs, laboratory results, and other measurements. If supported, clients SHALL support search by patient and category. Clients MAY omit this resource based on their needs.
| Conformance | Parameter | Type | Documentation |
|---|---|---|---|
| SHALL | patient | reference | The patient the observation is about (SHALL support) |
| SHALL | category | token | Category of observation (e.g., vital-signs, laboratory) |
| SHOULD | code | token | The code of the observation type |
| SHOULD | date | date | Obtained date/time. Date modifiers ge, le, gt, lt SHOULD be supported. |
| SHOULD | status | token | The status of the observation |
readRead DiagnosticReport by logical ID
search-typeSearch for DiagnosticReport resources
DiagnosticReport resources represent laboratory results and imaging reports. If supported, clients SHALL support search by patient and category. Clients MAY omit this resource based on their needs.
| Conformance | Parameter | Type | Documentation |
|---|---|---|---|
| SHALL | patient | reference | The patient the report is about (SHALL support) |
| SHALL | category | token | Category of report (e.g., LAB, RAD) |
| SHOULD | code | token | The code for the report type |
| SHOULD | date | date | The clinically relevant time of the report |
| SHOULD | status | token | The status of the report |
readRead MedicationRequest by logical ID
search-typeSearch for MedicationRequest resources
MedicationRequest resources represent medication orders and prescriptions. If supported, clients SHALL support search by patient. Clients MAY omit this resource based on their needs.
| Conformance | Parameter | Type | Documentation |
|---|---|---|---|
| SHALL | patient | reference | The patient for whom the medication was ordered (SHALL support) |
| SHOULD | status | token | Status of the prescription |
| SHOULD | intent | token | The intent of the medication request |
| SHOULD | authoredon | date | Return prescriptions written on this date |
readRead MedicationDispense by logical ID
search-typeSearch for MedicationDispense resources
MedicationDispense resources represent medication dispensing events. If supported, clients SHALL support search by patient. Clients MAY omit this resource based on their needs.
| Conformance | Parameter | Type | Documentation |
|---|---|---|---|
| SHALL | patient | reference | The patient for whom the medication was dispensed (SHALL support) |
| SHOULD | status | token | Status of the dispense |
| SHOULD | whenhandedover | date | When the medication was handed over |
readRead Encounter by logical ID
search-typeSearch for Encounter resources
Encounter resources represent patient encounters (visits, admissions, etc.). If supported, clients SHALL support search by patient. Clients MAY omit this resource based on their needs.