Feature | Description |
---|---|
application/dicom+xml | Can return responses with Content-Type: multipart/related; application/dicom+xml |
application/json | Can return responses with Content-Type: application/json |
gzip | Can return responses with Content-Encoding: gzip. Note that this is not mentioned in the standard and is therefore not required (but I feel should be supported and am therefore including it) |
no-cache | Supports the Cache-control: no-cache header which ensures the result is current and not cached on the client side. Note that this is not required by the standard (but I feel should be supported and am therefore including it) |
group/element | Supports specifying DICOM elements by group/element (e.g. 0020000D) |
keyword | Supports specifying DICOM elements by DICOM keyword (e.g. StudyInstanceUID) |
sequences | Supports specifying sequence elements (e.g. RequestAttributeSequence.RequestedProcedureID) |
limit | Supports the limit option for queries (limits the number of records returned) |
offset | Supports the offset option for queries (skips records in the response to support paging) |
TimezoneOffsetFromUTC | Supports specification of the timezone as part of date/time queries. Note that this is not required by the standard |
QIDO-RS Studies | Supports searching for studies via the /studies endpoint |
QIDO-RS Studies response | /studies response includes all required attributes |
StudyDate - single | Supports searching for studies by study date by single value match (e.g. exact match) |
StudyDate - range | Supports searching for studies by study date range |
StudyTime - single | Supports searching for studies by study time by single value match (e.g. exact match) |
StudyTime - range | Supports searching for studies by study time range |
AccessionNumber - single | Supports searching for studies by accession number by single value match (e.g. 1233456) |
AccessionNumber - wildcard | Supports searching for studies by accession number by wildcard (e.g. 1234*) |
ModalitiesInStudy - single | Supports searching for studies by modalities in study by single value match e.g. (CT) |
ModalitiesInStudy - list | Supports searching for studies by modalities in study by list of values (e.g. CT,MR,US) |
ReferringPhysicianName - single | Supports searching for studies by ReferringPhysicianName by single value match |
ReferringPhysicianName - wildcard | Supports searching for studies by ReferringPhysicianName by wildcard |
PatientName - single | Supports searching for studies by PatientName by single value match |
PatientName - wildcard | Supports searching for studies by PatientName by wildcard |
PatientID - single | Supports searching for studies by PatientID by single value match |
PatientID - wildcard | Supports searching for studies by PatientID by wildcard |
PatientID - list | Supports searching for studies by PatientID by list of values |
StudyInstanceUID - single | Supports searching for studies by StudyInstanceUID by single value match |
StudyInstanceUID - list | Supports searching for studies by StudyInstanceUID by list of values |
StudyId - single | Supports searching for studies by StudyId by single value match |
StudyId - list | Supports searching for studies by StudyId by list of values |
StudyId - wildcard | Supports searching for studies by StudyId by wildcard match |
QIDO-RS Study Series | Supports searching for series via the /studies/{StudyInstanceUID}/series endpoint |
QIDO-RS Series | Supports searching for series via the /series endpoint |
QIDO-RS Series response | Search for series response includes all required attributes |
Modality - single | Supports searching for series by Modality by single value match |
Modality - list | Supports searching for series by Modality by list of values |
SeriesInstanceUID - single | Supports searching for series by SeriesInstanceUID by single value match |
SeriesInstanceUID - list | Supports searching for series by SeriesInstanceUID by single value match |
SeriesNumber - single | Supports searching for series by SeriesNumber by single value match |
SeriesNumber - range | Supports searching for series by SeriesNumber by matching a range of values |
SeriesNumber - list | Supports searching for series by SeriesNumber by matching a list of values |
PerformedProcedureStepStartDate - single | Supports searching for series by PerformedProcedureStepStartDate by single value match |
PerformedProcedureStepStartDate - range | Supports searching for series by PerformedProcedureStepStartDate by matching a range of values |
PerformedProcedureStepStartTime - single | Supports searching for series by PerformedProcedureStepStartTime by single value match |
PerformedProcedureStepStartTime - range | Supports searching for series by PerformedProcedureStepStartTime by range of values match |
ScheduledProcedureStepID - single | Supports searching for series by RequestAttributeSequence.ScheduledProcedureStepID by single value match |
RequestedProcedureID - single | Supports searching for series by RequestAttributeSequence.RequestedProcedureID by single value match |
QIDO-RS Series Instances | Supports searching for instances in a series via the /studies/{StudyInstanceUID}/series/{SeriesInstanceUID}/instances endpoint |
QIDO-RS Study Instances | Supports searching for instances in a study via the /studies/{StudyInstanceUID}/instances endpoint |
QIDO-RS Instances | Supports searching for instances via the /instances endpoint |
QIDO-RS Instance response | Search for Instance response includes all required attributes |
SOPClassUID - single | Supports searching for instances by SOPClassUID by single value match |
SOPClassUID - list | Supports searching for instances by SOPClassUID by list of values |
SOPInstanceUID - single | Supports searching for instances by SOPInstanceUID by single value match |
SOPInstanceUID - list | Supports searching for instances by SOPInstanceUID by list of values |
InstanceNumber - single | Supports searching for instances by InstanceNumber by single value match |
InstanceNumber - range | Supports searching for instances by InstanceNumber by range of values |
InstanceNumber - list | Supports searching for instances by InstanceNumber by list of values |
Vendors can go beyond this list of features by adding support for additional matching keys, including additional fields in the response, fuzzy matching and relational queries. I didn't include these features as they are not required by the standard, not required by most use cases and rarely implemented.
What are your thoughts on this list? Should something be added or removed?
This comment has been removed by the author.
ReplyDeleteIf limit & offset is used for paging, then it is hard to see how any sorting of results can be done when querying with qido-rs. My thinking is that it would be nice if qido-rs had some fields to specify sort order on the server.
ReplyDelete