Ultrasound study has single series with single SeriesInstanceUID but diverse SOPClassUIDs (stills+cines+SCs). Downstream system has problems with this.
Goal: assign unique SeriesInstanceUID to diverse SOPClassUIDs using DicomAnonymizer stage.
the following DicomAnonymizer script works fine, EXCEPT all studies will have the same 3 possible SeriesInstanceUIDs:
<script>
<p t="ROUTINGSTRING">fw://modalities/US_stills</p>
<p t="UIDROOT">1.2.826.0.1.3680043.10.1077</p>
<e en="F" t="00080013" n="InstanceCreationTime">@if(AccessionNumber,equals,"FWSTOP20230921"){@date()@time()}@contents(InstanceCreationTime)</e>
<e en="T" t="00080016" n="SOPClassUID">@keep()</e>
<e en="F" t="00100010" n="PatientName">test2</e>
<e en="F" t="00100020" n="PatientID">test2</e>
<e en="F" t="0020000d" n="StudyInstanceUID">@hashuid(@UIDROOT,this,StudyComments)</e>
<e en="T" t="0020000e" n="SeriesInstanceUID">@hashuid(@UIDROOT,SOPClassUID)</e>
<e en="T" t="00324000" n="StudyComments">@param(@ROUTINGSTRING)</e>
</script>
I really want to use
<e en="T" t="0020000e" n="SeriesInstanceUID">@hashuid(@UIDROOT,this,SOPClassUID)</e>
but it gives the same SeriesInstance to all the different SOPClassUIDs.
I was hoping this would make the SeriesInstanceUIDs unique across studies as well as between different SOPClassUIDs in the same study.
Any thoughts?