DicomWeb WADO-URI does not work if duplicated instances

Hi @alainmazy ,
I have an usecase where a SOPInstanceUID belonging to 2 series. Using DicomWeb plugin, WADO-RS (/dicomweb/studies/[StudyInstanceUID]/series/[SeriesInstanceUID]/instances/[SOPInstanceUID]) works well. However WADO-URI does not work

curl -i -uorthanc:orthanc localhost:9042/wado?objectUID=1.3.6.1.4.1.25790.1.2.71804.0.87545.2.126638.1002&studyUID=1.3.6.1.4.1.25790.1.2.71804.0.87545&seriesUID=1.3.6.1.4.1.25790.1.2.71804.0.87545.2&requestType=WADO
[1] 3944406
[2] 3944407
[3] 3944408
[2]-  Done                    studyUID=1.3.6.1.4.1.25790.1.2.71804.0.87545
minerva@dicom166:/DB/orthanc/2.ORTHANC_DX_2025$ HTTP/1.1 404 Not Found
Connection: keep-alive
Keep-Alive: timeout=1
Content-Type: text/plain
X-Content-Type-Options: nosniff
Content-Length: 183

{
        "HttpError" : "Not Found",
        "HttpStatus" : 404,
        "Message" : "Unknown resource",
        "Method" : "GET",
        "OrthancError" : "Unknown resource",
        "OrthancStatus" : 17,
        "Uri" : "/wado"
}

I think it’s because DicomWeb WADO-URI does not require StudyUID and SeriesUID, but only ObjectUID. Hence, if DicomWeb only relies on ObjectUID it does not know which study and series it belongs to. In Dcm4chee, it works because, WADO-URI requires all of them.

As well in the NEMA, it mentions that those of them StudyUID, SeriesUID, ObjectUID are required

Could you and team adapt Orthanc to the DicomWeb standard ?
P/S I attach here with dicom samples : dicom_dup - Google Drive

Thanks a lot,
Christophe

Hi @Christophe

Sorry for the late answer.

I have currently no time to implement it but I have added a reference to this thread in the plugin TODO.

Best regards,

Alain.