Draft Status
Draft - team will hold off on page creation
Category
DICOM
Key Investigators
- Kyle Sunderland (Queen's University, Canada)
- Andrey Fedorov (BWH, USA)
- Andras Lasso (Queen's University, Canada)
Project Description
Currently DICOM support in extensions is written to a json file in the slicer repo (DICOMExtensions.json), however this information is not frequently updated as new extensions are added, unmaintained extensions removed, and additional modality support added to extensions.
Objective
- Add additional metadata to the extension index to describe DICOM support implemented in each extension.
- During DICOM import if no DICOM plugins are able to load the modality, then query the list of available extensions to find an extension that can import the data.
Approach and Plan
- Update Slicer Package Manager to handle additional DICOM support metadata
- This can be done by specifying a rule-engine string that can be used to define extension compatibility with Modality and SOPClassUID.
- Ex:
"(Modality == 'SEG') or (SOPClassUID == '1.2.840.10008.5.1.4.1.1.30') or (Modality == 'SR' and (SOPClassUID == '1.2.840.10008.5.1.4.1.1.88.22' or SOPClassUID == '1.2.840.10008.5.1.4.1.1.88.33'))"
- Update 3D Slicer core to query the list of available extensions to find an extension that can handle the current modality.
- Integrate this PR with other efforts to update the extension manager (extensions tiers, multiple categories, etc.).
Progress and Next Steps
- Describe specific steps you have actually done.
Illustrations
No response
Background and References
https://github.com/girder/slicer_package_manager
https://pypi.org/project/rule-engine/
Draft Status
Draft - team will hold off on page creation
Category
DICOM
Key Investigators
Project Description
Currently DICOM support in extensions is written to a json file in the slicer repo (DICOMExtensions.json), however this information is not frequently updated as new extensions are added, unmaintained extensions removed, and additional modality support added to extensions.
Objective
Approach and Plan
"(Modality == 'SEG') or (SOPClassUID == '1.2.840.10008.5.1.4.1.1.30') or (Modality == 'SR' and (SOPClassUID == '1.2.840.10008.5.1.4.1.1.88.22' or SOPClassUID == '1.2.840.10008.5.1.4.1.1.88.33'))"Progress and Next Steps
Illustrations
No response
Background and References
https://github.com/girder/slicer_package_manager
https://pypi.org/project/rule-engine/