Inference Search
A principal usecase for the OMI protocol is the automated suggestion for inference based on images and metadata following the MII Kerndatensatz Bildgebung Implementation Guide. The OMI protocol supports this by annotating algorithms contained in the registry. In order to filter algorithms based on parameters like modality and e.g. resolution custom FHIR SearchParameter resources were created.
Currently supported filter criteria for Algorithms:
- Modality (see ValueSet)
- Resolution (including resolution for x/y/z, see extension definition):
- Minimum resolution required to request inference for this algorithm
- Maximum resolution required to request inference for this algorithm
- BodySite (see ValueSet)
- Laterality (see ValueSet)
- ServiceType (see CodeSystem)
- ImageReconstructionPane (see ValueSet)
More SearchParameter can be defined if necessary and should be aligned with MII. An overview of defined parameters is provided in the following section.
StructureDefinitions
Example queries for inference search
To familiarize with the OMI FHIR registry query capabilities we have prepared some example queries. Queries can be executed on Device (=abstract algorithm) and HealthcareService (=instance of an algorithm).
Queries on Device (Algorithms)
This queries algorithms that are represented within the registry. This does not indicate if these instances are available as services. This has to be done using the queries on HealthcareServices. For standard search parameters please refer to the FHIR Specification for Device searchparameters.
# | Description | Query |
---|---|---|
1 | Get all algorithms in the OMI Registry | [FHIR-BASE-URL]/Device |
2 | Get all algorithms that require a CT modality in the OMI Registry | [FHIR-BASE-URL]/Device?property-type-code=http://snomed.info/sct|360037004$http://dicom.nema.org/resources/ontology/DCM|CT |
3 | Get all algorithms that require a CT modality and a slice thickness of greater than 1.2mm | [FHIR-BASE-URL]/Device?property-type-code=http://snomed.info/sct|360037004$http://dicom.nema.org/resources/ontology/DCM|CT&min-res-z=gt1.2 |
4 | Get all algorithms for modality magnetic resonance (MR) with a slice thickness of more than 1.2 mm | [FHIR-BASE-URL]/Device?property-type-code=http://snomed.info/sct|360037004$http://dicom.nema.org/resources/ontology/DCM|MR&min-res-z=gt1.2 |
5 | Get all algorithms that can process brain scans with modality magnetic resonance (MR) and a slice thickness of more than 1.2mm | [FHIR-BASE-URL]/Device?property-type-code=http://snomed.info/sct%7C123037004$http://snomed.info/sct%7C12738006&min-res-z=gt1.2&property-type-code=http://snomed.info/sct%7C360037004$http://dicom.nema.org/resources/ontology/DCM%7CMR |
6 | Get all algorithms for body site Adrenal structure which has modality CT, slice thickness of 5mm and right laterality | [FHIR-BASE-URL]/Device?property-type-code=http://snomed.info/sct|360037004$http://dicom.nema.org/resources/ontology/DCM|CT&property-type-code=http://snomed.info/sct|272741003$http://snomed.info/sct|24028007&min-res-z=gt1.2 |
7 | Get all algorithms that do segmentation on CT modalities | [FHIR-BASE-URL]/Device?property-type-code=http://snomed.info/sct|360037004$http://dicom.nema.org/resources/ontology/DCM|CT&property-type-code=http://snomed.info/sct|410656007$http://omi.de/fhir/registry/CodeSystem/ai-service-type-codesystem|segmentation |
8 | Get all algorithms from University Clinic Erlangen (using the id of the organization) | [FHIR-BASE-URL]/Device?organization=UKER |
Queries on HealthcareService (Instances of Algorithms)
This queries the available services of the OMI registry. Each service should provide a heartbeat to know if it is currently in service. Services can be filtered accordingly. For standard search parameters please refer to the FHIR Specification for HealthcareService searchparameters.
# | Description | Query |
---|---|---|
1 | Get all HealthcareServices (instances of an algorithm) that are providing an algorithm created by University Clinics Erlangen (using the id of the organization) | [FHIR-BASE-URL]/HealthcareService?servicetoalgorithm.organization=UKER |
2 | Get all HealthcareServices (instances of an algorithm) that are providing algorithms with "CATS" in their name | [FHIR-BASE-URL]/HealthcareService?servicetoalgorithm.device-name=cats |
3 | Get all HealthcareServices (instances of an algorithm) that are offered by the MOLIT Institute (using the id of the organization) | [FHIR-BASE-URL]/HealthcareService?organization=MOLIT |
Interactions supported by the OMI registry
REST Capabilities Server
Mode | Server |
Resource Interactions
Resource Type | Supported Profiles |
---|---|
Device | |
HealthcareService | |
Endpoint | |
Organization | |
StructureDefinition |
Search Parameters per resource type
Device
Name | Type | Level |
---|---|---|
device-name | string | Supported |
identifier | token | Supported |
organization | reference | Supported |
status | token | Supported |
property-type | token | Supported |
property-value-code | token | Supported |
property-type-code | composite | Supported |
min-res-x | quantity | Supported |
min-res-y | quantity | Supported |
min-res-z | quantity | Supported |
max-res-x | quantity | Supported |
max-res-y | quantity | Supported |
max-res-z | quantity | Supported |
HealthcareService
Name | Type | Level |
---|---|---|
organization | reference | Supported |
active | token | Supported |
identifier | token | Supported |
name | string | Supported |
servicetoalgorithm | reference | Supported |
statuscode | token | Supported |
queue-length | number | Supported |
estimated-waiting-time | number | Supported |
inference-price | quantity | Supported |
Endpoint
Name | Type | Level |
---|---|---|
connection-type | token | Supported |
identifier | token | Supported |
name | string | Supported |
organization | reference | Supported |
status | token | Supported |
Organization
Name | Type | Level |
---|---|---|
active | token | Supported |
address | string | Supported |
identifier | token | Supported |
name | string | Supported |
StructureDefinition
Name | Type | Level |
---|---|---|
status | token | Supported |
url | uri | Supported |