DICOM PS3.4 2025a - Service Class Specifications |
---|
SCUs of some SOP Classes of the Query/Retrieve Service Class may generate retrievals using the C-MOVE operation as described in PS3.7. The C-MOVE operation allows an application entity to instruct another application entity to transfer stored SOP Instances to another application entity using the C-STORE operation. Support for the C-MOVE service shall be agreed upon at Association establishment time by both the SCU and SCP of the C-MOVE in order for a C-MOVE operation to occur over the Association. The C-STORE sub-operations shall always be accomplished over an Association different from the Association that accomplishes the C-MOVE operation. Hence, the SCP of the Query/Retrieve Service Class serves as the SCU of the Storage Service Class.
The application entity that receives the stored SOP Instances may or may not be the originator of the C-MOVE operation.
A C-MOVE request may be performed to any level of the Query/Retrieve Information Model. However, the transfer of stored SOP Instances may not be performed at this level. The level at which the transfer is performed depends upon the SOP Class (see Section C.6).
The SOP Class UID identifies the Query/Retrieve Information Model against which the C-MOVE is to be performed. Support for the SOP Class UID is implied by the Abstract Syntax UID of the Presentation Context used by this C-MOVE operation.
The Priority Attribute defines the requested priority of the C-MOVE operation and corresponding C-STORE sub-operations with respect to other DIMSE operations being performed by the same SCP.
Processing of priority requests is not required of SCPs. Whether or not an SCP supports priority processing, and the meaning of the different priority levels shall be stated in the Conformance Statement of the SCP. The same priority shall be used for all C-STORE sub-operations.
Move Destination specifies the Application Entity Title of the receiver of the C-STORE sub-operations.
The C-MOVE request shall contain an Identifier. The C-MOVE response shall conditionally contain an Identifier as required in Section C.4.2.1.4.2.
The Identifier is specified as U in the definition of the C-MOVE primitive in PS3.7 but is specialized for use with this service.
An Identifier in a C-MOVE request shall contain:
Query/Retrieve Level (0008,0052), which defines the level of the retrieval
Unique Key Attributes, which may include Patient ID (0010,0020), Study Instance UIDs (0020,000D), Series Instance UIDs (0020,000E), and the SOP Instance UIDs (0008,0018)
Conditionally, the Attribute Query/Retrieve View (0008,0053). This Attribute may be included if Enhanced Multi-Frame Image Conversion has been accepted during Association Extended Negotiation. It shall not be included otherwise.
Specific Character Set (0008,0005) shall be present if Patient ID (0010,0020) is using a character set other than the Default Character Repertoire.
The Unique Keys at each level of the hierarchy and the values allowable for the level of the retrieval shall be defined in the SOP Class definition for the Query/Retrieve Information Model.
In the non-Relational behavior, more than one entity may be retrieved if the Query/Retrieve Level is IMAGE, SERIES or STUDY, using List of UID matching, but only Single Value Matching value may be specified for Patient ID (0010,0020).
The issuer of the Patient ID (0010,0020) is implicit; there is no provision to send the Issuer of Patient ID (0010,0021). When there is a possibility of ambiguity of the Patient ID (0010,0020) value, a STUDY level retrieval should be used instead of a PATIENT level retrieval.
The Failed SOP Instance UID List (0008,0058) specifies a list of UIDs of the C-STORE sub-operation SOP Instances for which this C-MOVE operation has failed. An Identifier in a C-MOVE response shall conditionally contain the Failed SOP Instance UID List (0008,0058) based on the C-MOVE response status value. If no C-STORE sub-operation failed, Failed SOP Instance UID List (0008,0058) is absent and therefore no Data Set shall be sent in the C-MOVE response.
Table C.4-2 defines the specific Status Code values that might be returned in a C-MOVE response. General Status Code values and fields related to Status Code values are defined for C-MOVE DIMSE Service in PS3.7.
Table C.4-2. C-MOVE Response Status Values
Some Failure Status Codes are implementation specific.
An SCP implementation shall assign specific Failure Status Codes by replacing each 'x' symbol with a hexadecimal digit in the range from 0 to F. An SCP implementation wishing to differentiate between causes of "Failed: Unable to process" Failure Meaning shall assign those causes specific Status Code Values within valid range specified in Table C.4-2.
An SCU implementation shall recognize any Failure Status Code within the value range specified in Table C.4-2 as an indicator of the Failure Meaning stated in the table. There is no requirement for an SCU implementation to differentiate between specific Status Codes within the valid range.
Inclusion of the Number of Remaining Sub-operations is conditional based upon the status in the C-MOVE response. The Number of Remaining Sub-operations specifies the number of Remaining C-STORE sub-operations necessary to complete the C-MOVE operation.
Inclusion of the Number of Completed Sub-operations is conditional based upon the status in the C-MOVE response. The Number of Completed sub-operations specifies the number of C-STORE sub-operations generated by the requested transfer that have completed successfully.
Inclusion of the Number of Failed Sub-operations is conditional based upon the status in the C-MOVE response. The Number of Failed sub-operations specifies the number of C-STORE sub-operations generated by the requested transfer that have Failed.
DICOM PS3.4 2025a - Service Class Specifications |
---|