BfArM Digitale Anwendungen
3.1.0-TEST - draft

BfArM Digitale Anwendungen - Local Development build (v3.1.0-TEST) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

HIIS – Use Cases

The returned id values of resources must not be stored on external systems, as they may change in new versions of the API. Instead, the identifier values stored in the resources must be used.

Depending on the software used, URL encoding of parameters may be required, for example HiisId%7C00123 instead of HiisId|00123.

The results returned by the API are paginated in accordance with FHIR. The total number of results across all pages is available in the meta.total element. The FHIR server uses a default page size of 20 elements. Further pages are linked via the link element. The number of results per page can be set using the _count parameter.

Retrieval of Medical Aid Interfaces

Retrieval of All Medical Aid Interfaces

Description

This use case describes the retrieval of all medical aid interface entries (profile HiisDeviceDataRecorderDefinition).

Standard Flow
  1. Search request with the canonical of the profile as _profile parameter
  2. HIIS API returns the found medical aid interface entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition

Search for a Medical Aid Interface by HIIS ID

Description

This use case describes the search for a medical aid interface (profile HiisDeviceDataRecorderDefinition) by the unique HIIS ID.

Standard Flow
  1. Search request with the HIIS ID as identifier parameter
  2. HIIS API returns the found medical aid interface entry
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?identifier=https://fhir.bfarm.de/Identifier/HiisId|{HIIS-ID}&_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition

Example (HIIS ID "00123"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?identifier=https://fhir.bfarm.de/Identifier/HiisId|00123&_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition

Search for Medical Aid Interface Entries by MIV Set URL

Description

This use case describes the search for medical aid interface entries (profile HiisDeviceDataRecorderDefinition) that support a specific MIV Set (Mandatory Interoperable Value Set). The MIV Set is referenced via the extension HiisDeviceDefinitionMivSet.

Standard Flow
  1. Search request with the MIV Set as filter criterion
  2. HIIS API returns the found medical aid interface directory entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&miv-set={MIV-Set-Reference}

Example (MIV Set URL "https://gematik.de/fhir/hddt/ValueSet/hddt-miv-continuous-glucose-measurement"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&miv-set=https://gematik.de/fhir/hddt/ValueSet/hddt-miv-continuous-glucose-measurement

The search uses the custom search parameter miv-set, which accesses the nested extension HiisDeviceDefinitionMivSet.extension[mivSet].valueReference.reference.

For technical reasons (search indexing), the server temporarily also maps this search to DeviceDefinition.note.text. The note.text element is only part of that technical mapping and must not be read or used by clients for any business content, MIV Set interpretation, or other integration purpose.

Search for Medical Aid Interface Entries by Manufacturer Name

Description

This use case describes the search for medical aid interface entries (profile HiisDeviceDataRecorderDefinition) based on the manufacturer name. The manufacturer is referenced via manufacturerReference.

Standard Flow
  1. Search request with the manufacturer name as filter criterion
  2. HIIS API returns the found medical aid interface entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&manufacturer-name={Manufacturer-Name}

Example (manufacturer name "TechMed Solutions"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&manufacturer-name=TechMed%20Solutions

For substring search (LIKE search), the modifier :contains can be used:

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&manufacturer-name:contains=TechMed

The search uses the custom search parameter manufacturer-name, which accesses manufacturerReference.display.

Search for Medical Aid Interface Entries by Medical Aid Interface Name

Description

This use case describes the search for medical aid interface entries (profile HiisDeviceDataRecorderDefinition) based on the medical aid interface name. The name is located in deviceName with type model-name.

Standard Flow
  1. Search request with the medical aid interface name as filter criterion
  2. HIIS API returns the found medical aid interface entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&device-name={Medical-Aid-Interface-Name}

Example (medical aid interface name "DataConnect Interface"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&device-name=DataConnect%20Interface

For substring search (LIKE search), the modifier :contains can be used:

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition&device-name:contains=DataConnect

The search uses the custom search parameter device-name, which accesses DeviceDefinition.deviceName.where(type='user-friendly-name').name.

Retrieval of All Medical Aid Interfaces Supporting a Specific Medical Aid

Description

This use case describes the retrieval of all medical aid interface entries (profile HiisDeviceDataRecorderDefinition) that support a specific medical aid (profile HiisPersonalHealthDeviceDefinition). It is assumed that the medical aid has already been determined by a previous search and the internal id is known. The relationship is established via the extension DeviceDefinitionLink with the complex extension relatedDevice, where relation.valueCoding.code = "supports" must hold.

Standard Flow
  1. Call of the $supporting-interfaces operation with the internal id of the previously determined medical aid
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/{id}/$supporting-interfaces

Example (internal id "1"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/1/$supporting-interfaces

This operation returns a bundle of type searchset with all medical aid interface resources (HiisDeviceDataRecorderDefinition) that support this medical aid. The operation searches all medical aid interfaces and returns only those where the extension DeviceDefinitionLink contains a reference to the requested medical aid and relation.valueCoding.code = "supports" holds.

The operation does not use pagination.

Retrieval of Medical Aid Interface Endpoints

Retrieval of All Endpoints Linked to a Medical Aid Interface

Description

This use case describes the retrieval of all endpoint entries (profile HiisDeviceDataRecorderEndpoint) that are linked to a specific medical aid interface (profile HiisDeviceDataRecorderDefinition). It is assumed that the medical aid interface has already been determined by a previous search and the internal id is known. The link is established via the extension HiisDeviceDataRecorderEndpointLink, which is defined on the medical aid interface and references the endpoints.

Standard Flow
  1. Call of the $endpoints operation with the internal id of the previously determined medical aid interface
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/{id}/$endpoints

Example (internal id "1"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/1/$endpoints

This operation returns a bundle of type searchset with all endpoint resources (HiisDeviceDataRecorderEndpoint) that are referenced in the extension HiisDeviceDataRecorderEndpointLink of the medical aid interface.

The operation does not use pagination.

Retrieval of Medical Aids

Retrieval of All Medical Aids

Description

This use case describes the retrieval of all medical aid entries (profile HiisPersonalHealthDeviceDefinition).

Standard Flow
  1. Search request with the canonical of the profile as _profile parameter
  2. HIIS API returns the found medical aid entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition

Search for Medical Aid Entries by MIV Set URL

Description

This use case describes the search for medical aid entries (profile HiisPersonalHealthDeviceDefinition) that support a specific MIV Set (Mandatory Interoperable Value Set). The MIV Set is referenced via the extension HiisDeviceDefinitionMivSet.

Standard Flow
  1. Search request with the MIV Set as filter criterion
  2. HIIS API returns the found medical aid entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&miv-set={MIV-Set-Reference}

Example (MIV Set URL "https://gematik.de/fhir/hddt/ValueSet/hddt-miv-continuous-glucose-measurement"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&miv-set=https://gematik.de/fhir/hddt/ValueSet/hddt-miv-continuous-glucose-measurement

The search uses the custom search parameter miv-set, which accesses the nested extension HiisDeviceDefinitionMivSet.extension[mivSet].valueReference.reference.

For technical reasons (search indexing), the server temporarily also maps this search to DeviceDefinition.note.text. The note.text element is only part of that technical mapping and must not be read or used by clients for any business content, MIV Set interpretation, or other integration purpose.

Search for Medical Aid Entries by Manufacturer Name

Description

This use case describes the search for medical aid entries (profile HiisPersonalHealthDeviceDefinition) based on the manufacturer name. The manufacturer is referenced via manufacturerReference.

Standard Flow
  1. Search request with the manufacturer name as filter criterion
  2. HIIS API returns the found medical aid entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&manufacturer-name={Manufacturer-Name}

Example (manufacturer name "HealthDevice Corp"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&manufacturer-name=HealthDevice%20Corp

For substring search (LIKE search), the modifier :contains can be used:

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&manufacturer-name:contains=HealthDevice

The search uses the custom search parameter manufacturer-name, which accesses manufacturerReference.display.

Search for Medical Aid Entries by Device Name

Description

This use case describes the search for medical aid entries (profile HiisPersonalHealthDeviceDefinition) based on the device name. The name is located in deviceName with type model-name.

Standard Flow
  1. Search request with the device name as filter criterion
  2. HIIS API returns the found medical aid entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&device-name={Device-Name}

Example (device name "Health Monitor 2000"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&device-name=Health%20Monitor%202000

For substring search (LIKE search), the modifier :contains can be used:

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&device-name:contains=Health

The search uses the custom search parameter device-name, which accesses DeviceDefinition.deviceName.where(type='user-friendly-name').name.

Combined Search for Medical Aid Entries by Device Name, Model Number, or Device Type Code

Description

This use case describes the combined search for medical aid entries (profile HiisPersonalHealthDeviceDefinition) based on device name (deviceName with type model-name), model number (modelNumber), or device type code (type). The search queries all three fields simultaneously.

Standard Flow
  1. Search request with search term for device name, model number, or type code
  2. HIIS API returns the found medical aid entries
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&device-search={Search-Term}

Example (search term "HMX-2000"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&device-search=HMX-2000

For substring search (LIKE search), the modifier :contains can be used:

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition&device-search:contains=HMX

The search uses the custom search parameter device-search, which accesses DeviceDefinition.deviceName.where(type='user-friendly-name').name | DeviceDefinition.modelNumber | DeviceDefinition.type.coding.code.

Retrieval of All Medical Aids Supported by a Specific Medical Aid Interface

Description

This use case describes the retrieval of all medical aid entries (profile HiisPersonalHealthDeviceDefinition) that are supported by a specific medical aid interface (profile HiisDeviceDataRecorderDefinition). It is assumed that the medical aid interface has already been determined by a previous search and the internal id is known. The relationship is established via the extension DeviceDefinitionLink with the complex extension relatedDevice, where relation.valueCoding.code = "supports" must hold.

Standard Flow
  1. Call of the $supported-devices operation with the internal id of the previously determined medical aid interface
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/{id}/$supported-devices

Example (internal id "1"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/1/$supported-devices

This operation returns a bundle of type searchset with all supported medical aid resources (HiisPersonalHealthDeviceDefinition). The operation searches the extension DeviceDefinitionLink of the medical aid interface and returns only the medical aids where relation.valueCoding.code = "supports" holds.

The operation does not use pagination.

Retrieval of All Resources

Retrieval of All Data of a Specific Medical Aid Interface

Description

This use case describes the retrieval of all data of a specific medical aid interface (profile HiisDeviceDataRecorderDefinition) from the HIIS directory. The data include the catalog entry (profile HiisCatalogEntry), the medical aid interface (profile HiisDeviceDataRecorderDefinition), the HIIS manufacturer (profile HiisManufacturer), the supported medical aids (profile HiisPersonalHealthDeviceDefinition), the medical aid interface endpoints (profile HiisDeviceDataRecorderEndpoint), and the HIIS questionnaire response dataset (profile HiisQuestionnaireResponse). It is assumed that the medical aid interface has already been determined by a previous search and the internal id is known.

Standard Flow
  1. Call of the $everything operation with the internal id of the previously determined medical aid interface
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/{id}/$everything

Example (internal id "1"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/1/$everything

This operation returns a bundle of type searchset with all resources belonging to the medical aid interface. When called with the internal id of a medical aid, only the resources belonging to the medical aid directory entry are returned (catalog entry, medical aid, and manufacturer), not the resources of a medical aid interface.

The operation does not use pagination.

Retrieval of All HIIS Data

Description

This use case describes the retrieval of all data stored in the HIIS directory. This is the most efficient method to retrieve all HIIS data centrally.

Standard Flow
  1. Search requests with the canonical of the respective profiles as _profile parameter and a sufficiently high _count parameter
  2. HIIS API returns the found entries
API Request
  • All catalog entries (profile HiisCatalogEntry):
GET https://hiis.bfarm.de/api/fhir/v3.0/CatalogEntry?_count=1000&_profile=https://fhir.bfarm.de/StructureDefinition/HiisCatalogEntry
  • All HIIS manufacturers (profile HiisManufacturer):
GET https://hiis.bfarm.de/api/fhir/v3.0/Organization?_count=1000&_profile=https://fhir.bfarm.de/StructureDefinition/HiisManufacturer
  • All medical aid interfaces (profile HiisDeviceDataRecorderDefinition):
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_count=1000&_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderDefinition
  • All medical aids (profile HiisPersonalHealthDeviceDefinition):
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition?_count=1000&_profile=https://fhir.bfarm.de/StructureDefinition/HiisPersonalHealthDeviceDefinition
  • All medical aid interface endpoints (profile HiisDeviceDataRecorderEndpoint):
GET https://hiis.bfarm.de/api/fhir/v3.0/Endpoint?_count=1000&_profile=https://fhir.bfarm.de/StructureDefinition/HiisDeviceDataRecorderEndpoint
  • All HIIS questionnaire response datasets (profile HiisQuestionnaireResponse):
GET https://hiis.bfarm.de/api/fhir/v3.0/QuestionnaireResponse?_count=1000&_profile=https://fhir.bfarm.de/StructureDefinition/HiisQuestionnaireResponse
  • All HIIS questionnaires (profile HiisQuestionnaire):
GET https://hiis.bfarm.de/api/fhir/v3.0/Questionnaire?_count=1000&_profile=https://fhir.bfarm.de/StructureDefinition/HiisQuestionnaire

Retrieval of Change Status

Retrieval of the Change Status of the HIIS Directory

Description

This use case describes the retrieval of the timestamp of the last change in the entire HIIS directory. The operation returns a Parameters resource with the output parameters lastModified (last change across all resources in the directory) and lastModifiedHiisDeviceDataRecorderDefinition (last change of a HiisDeviceDataRecorderDefinition resource).

Standard Flow
  1. Call of the $status operation at system level
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/$status

Retrieval of the Change Status of a HIIS Directory Entry

Description

This use case describes the retrieval of the timestamp of the last change for a single HIIS directory entry. The operation returns a Parameters resource with the output parameters lastModified (last change across all resources belonging to the entry) and lastModifiedHiisDeviceDataRecorderDefinition (last change of the associated HiisDeviceDataRecorderDefinition resource). It is assumed that the medical aid interface has already been determined by a previous search and the internal id is known. When called with the internal id of a medical aid, the change status of the associated medical aid directory entry is returned; the output parameter lastModifiedHiisDeviceDataRecorderDefinition is not returned.

Standard Flow
  1. Call of the $status operation with the internal id of the previously determined medical aid interface
API Request
GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/{id}/$status

Example (internal id "1"):

GET https://hiis.bfarm.de/api/fhir/v3.0/DeviceDefinition/1/$status