Supplement received MPPS and DICOM Objects with Attributes - amsalama/dcm4chee-arc-light GitHub Wiki

Overview

This page explains how one can supplement the incoming DICOM objects and/or MPPS with Issuer of Patient ID and other Attributes.

  • Below DICOM attributes will be supplemented to incoming DICOM objects if DICOM attributes are present on device and missing in incoming objects :

    • Manufacturer (0008,0070)
    • Manufacturer Model Name (0008,1090)
    • Station Name (0008,1010)
    • Device Serial Number (0018,1000)
    • Software Versions (0018,1020)
    • Institution Name (0008,0080)
    • Institution Address (0008,0081)
    • Institution Code Sequence (0008,0082)
    • Institutional Department Name (0008,1040)
    • Issuer of Patient ID (0010,0021)
    • Issuer of Patient ID Qualifier Sequence (0010,0024)
    • Issuer of Admission ID Sequence (0038,0014)
    • Issuer of Service Episode ID (0038,0061)
    • Issuer of the Container Identifier Sequence (0040,0513)
    • Issuer of the Specimen Identifier Sequence (0040,0562)
    • Issuer of Accession Number Sequence (0008,0051)
    • Order Placer Identifier Sequence (0040,0026)
    • Order Filler Identifier Sequence (0040,0027)
  • Below DICOM attributes will be supplemented to incoming MPPS if DICOM attributes are present on device and missing in objects referenced by incoming MPPS :

    • Issuer of Patient ID (0010,0021)
    • Issuer of Patient ID Qualifier Sequence (0010,0024)
    • Issuer of Admission ID Sequence (0038,0014)
    • Issuer of Service Episode ID (0038,0061)
    • Issuer of the Container Identifier Sequence (0040,0513)
    • Issuer of the Specimen Identifier Sequence (0040,0562)
    • Issuer of Accession Number Sequence (0008,0051)
    • Order Placer Identifier Sequence (0040,0026)
    • Order Filler Identifier Sequence (0040,0027)

Configuration

Note :

  • Attribute Coercion can be configured on Archive Device level or on Archive Application Entity Extension level. The values configured on Archive Application Entity Extension level will supplement values configured on Archive Device level.

Using Archive UI

  • Select the level on which the feature needs to be configured :

    • To configure on Archive device level, go to Menu->Configuration, then on Devices page, Edit the dcm4chee-arc device. Go to Extensions and Edit extension of Archive device. Go to Child Objects and select + for adding Attribute Coercion.
    • To configure on Archive Application Entity extension level, go to Menu->Configuration, then on Devices page and
      Edit the dcm4chee-arc device. Go to Child Objects and select the Network AE for which the Attribute Coercion needs to be configured. Go to Extensions and Edit extension of Archive Network AE. Go to Child Objects and select + for adding Attribute Coercion.
  • Supplement DICOM Objects :

    • Add values in fields Name, DIMSE, DICOM Transfer Role as Supplement Composite, C_STORE_RQ, SCU respectively.
    • One may add value to field AE Title as well.
    • Add the name of device/modality, which would be storing objects to the archive, in the field Supplement from Device and Save. Ensure that this device is already present in LDAP.
  • Supplement MPPS :

    • Add values in fields Name, DIMSE, DICOM Transfer Role as Supplement MPPS, N_CREATE_RQ, SCU respectively.
    • One may add value to field AE Title as well.
    • Also add the Modality Performed Procedure Step Sop Class 1.2.840.10008.3.1.2.3.3 in the SOP Class UID field.
    • Add the name of device/modality, which would be sending MPPS requests to the archive, in the field Supplement from Device and Save. Ensure that this device is already present in LDAP.

Using LDAP

One may create a LDIF file and import it to the LDAP Server by using the ldapmodify command line utility.

  • To configure on Archive device level,

      version: 1
      
      dn: cn=Supplement Composite,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOMConfiguration,dc=dcm4che,dc=org
      objectClass: dcmArchiveAttributeCoercion
      cn: Supplement Composite
      dcmDIMSE: C_STORE_RQ
      dicomTransferRole: SCU
      dcmSupplementFromDeviceReference: dicomDeviceName=storescu,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
      
      version: 1
      
      dn: cn=Supplement MPPS,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
      objectClass: dcmArchiveAttributeCoercion
      cn: Supplement MPPS
      dcmDIMSE: N_CREATE_RQ
      dicomTransferRole: SCU
      dcmSOPClass: 1.2.840.10008.3.1.2.3.3
      dcmSupplementFromDeviceReference: dicomDeviceName=mppsscu,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
    
  • To configure on Archive application entity extension level,

      version: 1
      
      dn: cn=Supplement Composite,dicomAETitle=DCM4CHEE,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOMConfiguration,dc=dcm4che,dc=org
      objectClass: dcmArchiveAttributeCoercion
      cn: Supplement Composite
      dcmDIMSE: C_STORE_RQ
      dicomTransferRole: SCU
      dcmSupplementFromDeviceReference: dicomDeviceName=storescu,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
      
      version: 1
      
      dn: cn=Supplement MPPS,dicomAETitle=DCM4CHEE,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
      objectClass: dcmArchiveAttributeCoercion
      cn: Supplement MPPS
      dcmDIMSE: N_CREATE_RQ
      dicomTransferRole: SCU
      dcmSOPClass: 1.2.840.10008.3.1.2.3.3
      dcmSupplementFromDeviceReference: dicomDeviceName=mppsscu,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
    

Testing

  • Supplement DICOM Objects :

    • Store objects to archive using dcm4che tool.
         storescu -c DCM4CHEE@localhost:11112 /path-to-study
    
    • Using Archive UI, verify in the Object's Attributes
  • Supplement MPPS :

    • Send MPPS to archive using dcm4che tool.
         mppsscu -c DCM4CHEE@localhost:11112 /path-to-study
    
    • Using archive UI, verify in the Patient's attributes.
    • Alternatively, one may start the mppsscp tool, configure a forward destination in archive device dcmFwdMppsDestination and verify in the attributes of the forwarded MPPS.
⚠️ **GitHub.com Fallback** ⚠️