Uploaded image for project: 'Radiology Module'
  1. Radiology Module
  2. RAD-109

Generate StudyInstanceUid according to DICOM

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Accepted
    • Priority: Must
    • Resolution: Fixed
    • Component/s: None
    • Complexity:
      High
    • Sprint:
      Sprint 1

      Description

      We need to improve our StudyInstanceUid generation.

      Currently when we save a Study we do this

      			Study savedStudy = sdao.saveStudy(study);
      			String studyInstanceUid = RadiologyProperties.getStudyPrefix() + savedStudy.getStudyId();
      			savedStudy.setStudyInstanceUid(studyInstanceUid);
      			savedStudy = sdao.saveStudy(savedStudy);
      

      so we save it twice and use the studyId generated by the DB to construct the studyInstanceUid. Thus, on DB level the column study_instance_uid does not enforce a not null constraint, which is bad. A Study without StudyInstanceUid should not exist. Plus the db column is a varchar(250) although DICOM max is 64.

      Maybe we need something like the OrderNumberGenerator thats implemented in the core, which generates a studyInstanceUid for every new Study, without relying on the DB.

      And we need to adhere to http://dicom.nema.org/dicom/2013/output/chtml/part05/chapter_9.html

      also see an implementation example https://github.com/darcymason/pydicom/blob/master/pydicom/uid.py#L164

        Attachments

          Activity

            People

            Assignee:
            teleivo Ivo Ulrich
            Reporter:
            teleivo Ivo Ulrich
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: