International Patient Access
1.0.0 - STU1 International flag

International Patient Access, published by HL7 International / Patient Care. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-ipa/ and changes regularly. See the Directory of published versions

CapabilityStatement: International Patient Access Server CapabilityStatement

Official URL: http://hl7.org/fhir/uv/ipa/CapabilityStatement/ipa-server Version: 1.0.0
Standards status: Trial-use Computable Name: InternationalPatientAccessAPI

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

This CapabilityStatement describes the basic rules for the International Patient Access server actor that is responsible for providing responses to queries submitted by International Patient Access requestors. The complete list of FHIR profiles, RESTful operations, and search parameters supported by International Patient Access servers are defined in this CapabilityStatement.

Raw OpenAPI-Swagger Definition file | Download

International Patient Access Server CapabilityStatement

  • Implementation Guide Version: 1.0.0
  • FHIR Version: 4.0.1
  • Supported Formats: SHALL support json, SHOULD support xml
  • Supported Patch Formats: SHOULD support application/json-patch+json
  • Published on: Fri Dec 09 00:00:00 UTC 2022
  • Published by: HL7 International / Patient Care

Note 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.

SHALL Support the Following Implementation Guides

FHIR RESTful Capabilities

Mode: server

The IPA Server SHALL:

  1. Support the IPA Patient resource profile.

  2. Support at least one additional resource profile from the list of IPA Profiles.

  3. Implement the RESTful behavior according to the FHIR specification.

  4. Return the following response classes:

    • (Status 400): invalid parameter

    • (Status 401/4xx): unauthorized request

    • (Status 403): insufficient scope

    • (Status 404): unknown resource

  5. Support JSON source formats for all IPA interactions.

  6. Declare a CapabilityStatement identifying the list of profiles, operations, and search parameters supported.

The IPA Server SHOULD:

  1. Support XML source formats for all IPA interactions.
Security
  1. See the General Security Considerations section for requirements and recommendations.
  2. A server SHALL reject any unauthorized requests by returning an HTTP 401 Unauthorized, 403 Forbidden, or 404 Not Found response code.
Summary of System-wide Interactions
  • MAY support the transaction interaction.
  • MAY support the batch interaction.
  • MAY support the search-system interaction.
  • MAY support the history-system interaction.

Capabilities by Resource/Profile

Summary

The summary table lists the resources that are part of this configuration, and for each resource it lists:

  • The relevant profiles (if any)
  • The interactions supported by each resource (Read, Search, Update, and Create, are always shown, while VRead, Patch, Delete, History on Instance, or History on Type are only present if at least one of the resources has support for them.
  • The required, recommended, and some optional search parameters (if any).
  • The linked resources enabled for _include
  • The other resources enabled for _revinclude
  • The operations on the resource (if any)
Resource TypeProfileRSUCSearches_include_revincludeOperations
AllergyIntolerancehttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-allergyintoleranceyyclinical-status, patient, patient+clinical-statusProvenance:target
Conditionhttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-condition
Additional supported profiles:
  IPA-problem-list-item
yycategory, clinical-status, verification-status, code, onset-date, patient, patient+clinical-status, patient+category, patient+category+clinical-status, patient+code, patient+onset-dateProvenance:target
DocumentReferencehttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-documentreferenceyy_id, category, contenttype, date, period, status, type, patient, patient+category, patient+category+date, patient+type, patient+contenttype, patient+status, patient+type+date, patient+type+periodProvenance:target$docref
Immunizationhttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-immunizationyydate, status, patient, patient+date, patient+statusProvenance:target
Medicationhttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationyProvenance:target
MedicationRequesthttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationrequestyycategory, code, authoredon, intent, status, patient, patient+intent, patient+intent+authoredon, patient+intent+statusMedicationRequest:medicationProvenance:target
MedicationStatementhttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatementyystatus, patient, patient+statusMedicationStatement:medicationProvenance:target
Observationhttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-observation
Additional supported profiles:
  Vital Signs Profile
yycategory, code, date, status, patient, patient+category, patient+code, patient+category+date, patient+category+status, patient+code+dateProvenance:target
Patienthttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patientyy_id, birthdate, family, gender, given, identifier, name, family+gender, birthdate+family, birthdate+name, gender+nameProvenance:target
Practitionerhttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitioneryProvenance:target
PractitionerRolehttp://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitionerroleyPractitionerRole:endpoint, PractitionerRole:practitionerProvenance:target

Resource Conformance: SHOULDAllergyIntolerance

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The client SHALL provide at least a id value and MAY provide both the Type and id values.

The server SHALL support both.

MAYclinical-statustoken

active | inactive | resolved

Combined Search Parameters
ConformanceParametersTypes
SHOULDpatient+clinical-statusreference+token

Resource Conformance: SHOULDCondition

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Documentation

Client applications should be prepared to encounter codes they do not recognize and handle the records accordingly. Servers SHOULD populate Condition.code.coding.display and/or Condition.code.text so that clients can always at least display the condition even if they do not know the codes that are used. Clients should be careful making use of the code search parameter given that the codes used vary so much.

Safety Issues:

  • Clients SHALL not treat all conditions as if they are part of the patient's current problem list
    • Note that some Condition resources may not have these status codes - this is usually due to poor record keeping reflected in legacy data
    • Servers SHOULD avoid leaving these status codes missing
  • Clients SHALL pay attention to the clinicalStatus and verificationStatus and display and process them correctly
  • Clients SHALL still work safely when the server does not support all the search parameters listed here.
Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The client SHALL provide at least a id value and MAY provide both the Type and id values.

The server SHALL support both.

MAYcategorytoken

The category of the condition

MAYclinical-statustoken

The clinical status of the condition

MAYverification-statustoken

The verification status of the condition

MAYcodetoken

Code for the condition

MAYonset-datedate

Date of onset for the condition

Combined Search Parameters
ConformanceParametersTypes
SHOULDpatient+clinical-statusreference+token
SHOULDpatient+categoryreference+token
SHOULDpatient+category+clinical-statusreference+token+token
SHOULDpatient+codereference+token
SHOULDpatient+onset-datereference+date

Resource Conformance: SHOULDDocumentReference

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALL_idtoken
SHALLpatientreference

The client SHALL provide at least an id value and MAY provide both the Type and id values.

The server SHALL support both.

MAYcategorytoken

Categorization of document

MAYcontenttypetoken

Mime type of the content, may include charset

MAYdatedate

When this document reference was created

MAYperioddate

Time of service that is being documented

MAYstatustoken

current | superseded | entered-in-error

MAYtypetoken

Kind of document (LOINC if possible)

Combined Search Parameters
ConformanceParametersTypes
SHALLpatient+categoryreference+token
SHALLpatient+category+datereference+token+date
SHALLpatient+typereference+token
SHOULDpatient+contenttypereference+token
SHOULDpatient+statusreference+token
SHOULDpatient+type+datereference+token+date
SHOULDpatient+type+periodreference+token+date
Extended Operations
ConformanceOperationDocumentation
SHALL$docref

A server SHOULD be capable of responding to a $docref operation and capable of returning at least a reference to a CDA document, if available. MAY provide references to other 'on-demand' and 'stable' documents (or 'delayed/deferred assembly') that meet the query parameters as well. If a context date range is supplied the server ** SHOULD** provide references to any document that falls within the date range If no date range is supplied, then the server SHALL provide references to last or current encounter. SHOULD document what resources, if any, are returned as included resources

GET [base]/DocumentReference/$docref?patient=[id]

Resource Conformance: SHOULDImmunization

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The client SHALL provide at least an id value and MAY provide both the Type and id values.

The server SHALL support both.

MAYdatedate

Vaccination (non)-Administration Date

MAYstatustoken

Immunization event status

Combined Search Parameters
ConformanceParametersTypes
SHOULDpatient+datereference+date
SHOULDpatient+statusreference+token

Resource Conformance: SHOULDMedication

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read.

Documentation

The MedicationStatement and MedicationRequest resources can represent a medication, using an external reference to a Medication resource. If an external Medication Resource is used in a MedicationStatement or a MedicationRequest, then the READ and SEARCH Criteria SHALL be supported.

Resource Conformance: SHOULDMedicationRequest

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Documentation

Clients SHALL query for both MedicationStatement and MedicationRequest when fetching patient Medication information.

The MedicationRequest resources can represent a medication using either a code or refer to the Medication resource. When referencing Medication, the resource may be contained or an external resource. The server application MAY choose any one way or more than one method, but if an external reference to Medication is used, the server SHALL support the _include parameter for searching this element. The client application SHALL support all methods. For example, A server SHALL be capable of returning all medications for a patient using one of or both:

GET /MedicationStatement?patient=[id]

GET /MedicationStatement?patient=[id]&_include=MedicationStatement:medication

When representing a prescribed medication, servers SHOULD use codings at the level of a clinical drug rather than ingredient or dose form (e.g. "loratadine 10mg oral tablet", rather than a bare ingredient like "loratadine" or a dose form like "loratadine oral tablet").

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The client SHALL provide at least an id value and MAY provide both the Type and id values.

The server SHALL support both.

SHOULDcategorytoken

Returns prescriptions with different categories

SHOULDcodetoken

Return prescriptions of this medication code

MAYauthoredondate

Returns prescriptions written on this date

MAYintenttoken

Return prescriptions with this encounter identifier

MAYstatustoken

Status of the prescription

Combined Search Parameters
ConformanceParametersTypes
SHOULDpatient+intentreference+token
SHOULDpatient+intent+authoredonreference+token+date
SHOULDpatient+intent+statusreference+token+token

Resource Conformance: SHOULDMedicationStatement

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Documentation

Clients SHALL query for both MedicationStatement and MedicationRequest when fetching patient Medication information.

The MedicationRequest resources can represent a medication using either a code or refer to the Medication resource. When referencing Medication, the resource may be contained or an external resource. The server application MAY choose any one way or more than one method, but if an external reference to Medication is used, the server SHALL support the _include parameter for searching this element. The client application SHALL support all methods.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The client SHALL provide at least an id value and MAY provide both the Type and id values.

MAYstatustoken

Return statements that match the given status

Combined Search Parameters
ConformanceParametersTypes
SHOULDpatient+statusreference+token

Resource Conformance: SHOULDObservation

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
MAYcategorytoken

The classification of the type of observation

MAYcodetoken

The code of the observation type

MAYdatedate

Obtained date/time. If the obtained element is a period, a date that falls in the period

MAYstatustoken

The status of the observation

MAYpatientreference

The client SHALL provide at least an id value and MAY provide both the Type and id values.

The server SHALL support both.

Combined Search Parameters
ConformanceParametersTypes
SHALLpatient+categoryreference+token
SHALLpatient+codereference+token
SHALLpatient+category+datereference+token+date
SHOULDpatient+category+statusreference+token+token
SHOULDpatient+code+datereference+token+date

Resource Conformance: SHALLPatient

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read, search-type.

Documentation

Servers SHALL support the capability for a client application to access the patient record using any of the following API calls:

GET [url]/Patient/[id]

GET [url]/Patient?_id=[id]

GET [url]/Patient?identifier=[identifier]

Servers are not required to support any additional search parameters, and clients SHOULD not expect servers to do so.

Additional rules and guidance for supporting Patient.link:

  • The server:
    • SHALL have no more than one Patient with a status of active = "true" from the server being queried
    • MAY include inactive patients on the same server
    • MAY include inactive or active patients from a different server
    • When returning a search Bundle that contains more than one Patient record for the same patient, the Patient record(s) SHALL use the Patient.link attribute to cross-link the Patient resources.
  • The client:
    • SHALL be able to follow the link(s) to the other Patient resource(s) and understand the direction of the link (in other words, which Patient is linked to which other Patient)
    • SHALL understand the Patient.link.type code which defines the type of link between this Patient resource and another Patient resource
    • SHALL be aware of the linked Patient active flag and that inactive patients may have relevant information
Search Parameters
ConformanceParameterTypeDocumentation
SHALL_idtoken
SHALLidentifiertoken

The client SHALL provide both the system and code values.

The server SHALL NOT support only code values.

SHOULDbirthdatedate

A client SHALL provide a value precise to the day.

A server SHALL support a value a value precise to the day.

SHOULDfamilystring
SHOULDgendertoken

The client SHALL provide at least a code value and MAY provide both the system and code values.

The server SHALL support both.

SHOULDgivenstring
SHOULDnamestring
Combined Search Parameters
ConformanceParametersTypes
SHOULDfamily+genderstring+token
SHOULDbirthdate+familydate+string
SHOULDbirthdate+namedate+string
SHOULDgender+nametoken+string

Resource Conformance: SHOULDPractitioner

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read.

Resource Conformance: SHOULDPractitionerRole

Profile Conformance
SHALL
Reference Policy
resolves

Interaction summary
  • SHALL support read.