Prefetch WADO Bulkdata and Metadata - dcm4che/dcm4chee-arc-light GitHub Wiki
This use case specifies how one can enable pre-fetch of WADO objects' JPEG image data as well as metadata.
Configure an Exporter as described below. Add an exporter descriptor by :
-
Go to
Configuration page -> Devices tab -> dcm4chee-arc -> Device Extension -> Archive Device Extension -> Child Objects -> Exporter Descriptor (Add)
-
Configure following fields for the Export Descriptor
- Upto archive version 5.23.1
Exporter ID : WADO Queue Name : Export2 URI : wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3] Archive Application Entity (AE) title : DCM4CHEE Exporter Description : Prefetch WADO jpeg and metadata Property : Cache-Control=no-cache Property : StorageID=wado-jpeg Property : StorageID.1=wado-json Property : Accept.1=application/json Property : URL.1=wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/rs/studies/[0]/metadata Property : KeycloakClientID=wado-export
- Archive version 5.23.2 onwards : Create separate exporters for pre-fetching objects' metadata and bulkdata as explained in
Create a LDIF file (e.g.)
- Upto archive version 5.23.1
dn: dcmExporterID=WADO,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
objectClass: dcmExporter
dcmExporterID: WADO
dcmQueueName: Export2
dcmURI: wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]&contentType=image/jpeg
dcmProperty: Cache-Control=no-cache
dcmProperty: Accept.1=application/json
dcmProperty: StorageID.1=wado-json
dcmProperty: StorageID=wado-jpeg
dcmProperty: URL.1=wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/rs/studies/[0]/metadata
dcmProperty: KeycloakClientID=wado-export
dicomAETitle: DCM4CHEE
dicomDescription: Prefetch WADO jpeg and metadata
- Archive version 5.23.2 onwards : Create separate exporters for pre-fetching objects' metadata and bulkdata as explained in
and import it to the LDAP Server by using the ldapmodify command line utility.
One may refer to Exporter Descriptor to understand the description of attributes.
Go to the Control tab on Configuration page in archive UI and reload the configuration.
Note : In the above configurations :
- Upto archive version 5.23.1
-
Properties
KeycloakClientID=wado-export
is OPTIONAL. Refer Keycloak Client if the additional functionality provided by this property is required by your application. -
One may choose to add additional optional properties
TLSAllowAnyHostname
andTLSDisableTrustManager
with values astrue
orfalse
(eg.Property : TLSAllowAnyHostname=true
) if you choose to invoke WADO services over secured http. i.e.URI : wado:https://localhost:8443/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]
orURL.1 : wado:https://localhost:8443/dcm4chee-arc/aets/DCM4CHEE/rs/studies/[0]/metadata
-
Brief Overview & Short Description of dcmURI parameters : To identify a DICOM Object, only one UID is required, because any UID is globally unique. However, the standard requires that the UID of the higher levels in the DICOM Information Model are specified (i.e., series and study), in order to support the use of DICOM devices that support only the baseline hierarchical (rather than extended relational) Query/Retrieve model, which requires the Study Instance UID and Series Instance UID to be defined when retrieving an SOP Instance.
- studyUID - This parameter is REQUIRED. Should be the Study Instance UID.
- seriesUID - This parameter is REQUIRED. Should be the Series Instance UID.
- objectUID - This parameter is REQUIRED. Should be the SOP Instance UID.
- frameNumber - This parameter is OPTIONAL. Specifies that the single frame with that number within a multi-frame image object shall be returned.
- contentType - This parameter is OPTIONAL. Its value shall contain one or more media types.
-
One may optionally choose to return image heights and widths by using optional query parameters in the URL as
dcmURI: wado:http://localhost:8080/dcm4chee-arc/aets/DCM4CHEE/wado?requestType=WADO&studyUID=[0]&seriesUID=[1]&objectUID=[2]&frameNumber=[3]&rows=64&columns=64&contentType=image/jpeg
wherein :
- rows : The value shall be expressed as an integer, representing the image height to be returned.
- columns : The value shall be expressed as an integer, representing the image width to be returned.
-
Refer Storage w.r.t. property
StorageID=wado-jpeg
andStorageID.1=wado-json
-
- Archive version 5.23.2 onwards
- Property
WadoService
is REQUIRED with relative URL value specified either as - Refer Storage w.r.t. property
StorageID=wado-jpeg
and/orStorageID=wado-json
- See point 2 in invocation of WADO service over secured http and/or invoking WADO service of a secured archive if required by your application.
- Property
- The HTTP header fields can be defined in dcmProperty.
- Cache-Control=no-cache indicates that whenever there is change in study, the cache will be invalidated and WADO data should be reloaded again from archive.
- Accept=application/json indicates that metadata response shall be in json format.
Configure an Export Rule as well if this prefetch shall be triggered on receive of studies by the archive. Add an export rule by :
-
Go to
Configuration page -> Devices tab -> dcm4chee-arc -> Device Extension -> Archive Device Extension -> Child Objects -> Export Rule (Add)
-
Configure following fields for the Export Rule
- Upto archive version 5.23.1
Name : Cache WADO Entity : Series Exporter ID : WADO Export Delay : PT1M
- Archive version 5.23.2 onwards
Name : Cache WADO Entity : Series Exporter ID : WADO-JPEG Exporter ID : WADO-JSON Export Delay : PT1M
Create a LDIF file (e.g.):
- Upto archive version 5.23.1
dn: cn=Cache WADO,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
objectClass: dcmExportRule
cn: Cache WADO
dcmEntity: Series
dcmExporterID: WADO
dcmDuration: PT1M
- Archive version 5.23.2 onwards
dn: cn=Cache WADO,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
objectClass: dcmExportRule
cn: Cache WADO
dcmEntity: Series
dcmExporterID: WADO-JPEG
dcmExporterID: WADO-JSON
dcmDuration: PT1M
and import it to the LDAP Server by using the ldapmodify command line utility.
One may refer to Export Rule to understand the description of attributes.
Refer ISO-8601 Duration format for more know-how on Durations.
Reasons as to why the pre-fetch of WADO objects' JPEG image and metadata is not done on :
- STUDY level : When a new Series of the study is received, say after a day (for eg. Structured Reports), then for the whole study the pre-fetch is done again.
- INSTANCE level : To avoid costly database operations.