Y.4.2 C-GET Operation

SCUs of the Composite Instance Root Retrieve Service shall generate retrievals using the C-GET operation as described in PS 3.7. The C-GET operation allows an application entity to instruct another application entity to transfer stored SOP Instances or new SOP Instances derived from such stored SOP Instances to the initiating application entity using the C-STORE operation. Support for the C-GET service shall be agreed upon at Association establishment time by both the SCU and SCP of the C-GET in order for a C-GET operation to occur over the Association. The C-STORE Sub-operations shall be accomplished on the same Association as the C-GET operation. Hence, the SCP of the Query/Retrieve Service Class serves as the SCU of the Storage Service Class.

Note: The Application Entity that receives the stored SOP Instances is always the originator of the C-GET operation.

A C-GET request may be performed to any level of the Composite Instance Root Retrieve Information Model, and the expected SCP behavior depends on the level selected.

Y.4.2.1 C-GET Service Parameters

Y.4.2.1.1 SOP Class UID

The SOP Class UID identifies the Query/Retrieve Information Model against which the C-GET 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-GET operation.

Y.4.2.1.2 Priority

The Priority Attribute defines the requested priority of the C-GET 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.

Y.4.2.1.3 Identifier

The C-GET request shall contain an Identifier. The C-GET response shall conditionally contain an Identifier as required in C.4.3.1.3.2.

Note: The Identifier is specified as U in the definition of the C-GET primitive in PS 3.7 but is specialized for use with this service.

Y.4.2.1.3.1 Request Identifier Structure

An Identifier in a C-GET request shall contain:

– the Query/Retrieve Level (0008,0052) that defines the level of the retrieval

– SOP Instance UID(s) (0008,0018)

– One of the Frame Range Keys if present in the Information Model for the level of the Retrieval

Specific Character Set (0008,0005) shall not be present.

The 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.

Y.4.2.1.4 Status

The status code values that might be returned in a C-GET response shall be as specified in Table Y.4-1

Table Y.4-1 C-GET RESPONSE STATUS VALUES FOR INSTANCE ROOT RETRIEVE

Service Status Further Meaning Status Codes Related Fields
Failure Refused: Out of Resources – Unable to calculate number of matches A701 (0000,0902)
Refused: Out of Resources – Unable to perform sub-operations A702 (0000,1020) (0000,1021) (0000,1022) (0000,1023)
Identifier does not match SOP Class A900 (0000,0901) (0000,0902)
Unable to process Cxxx (0000,0901) (0000,0902)
None of the frames requested were found in the SOP Instance AA00 (0000,0902)
Unable to create new object for this SOP class AA01 (0000,0902)
Unable to extract frames AA02 (0000,0902)
Time-based request received for a non-time-based original SOP Instance. AA03 (0000,0902)
Invalid Request AA04 (0000,0901) (0000,0902)
Cancel Sub-operations terminated due to Cancel Indication FE00 (0000,1020) (0000,1021) (0000,1022) (0000,1023)
Warning Sub-operations Complete – One or more Failures or Warnings B000 (0000,1020) (0000,1021) (0000,1022) (0000,1023)
Success Sub-operations Complete – No Failures or Warnings 0000 (0000,1020) (0000,1021) (0000,1022) (0000,1023)
Pending Sub-operations are continuing FF00 (0000,1020) (0000,1021) (0000,1022) (0000,1023)

Y.4.2.1.5 Number of Remaining Sub-Operations

Inclusion of the Number of Remaining Sub-operations shall be as specified in C.4.3.1.5

Y.4.2.1.6 Number of Completed Sub-Operations

Inclusion of the Number of Completed Sub-operations shall be as specified in C.4.3.1.6

Y.4.2.1.7 Number of Failed Sub-Operations

Inclusion of the Number of Failed Sub-operations shall be as specified in C.4.3.1.7

Y.4.2.1.8 Number of Warning Sub-Operations

Inclusion of the Number of Warning Sub-operations shall be as specified in C.4.3.1.8.

Y.4.2.2 C-GET SCU Behavior

An SCU conveys the following semantics with a C-GET request:

– If the Retrieve Level (0000,0052) is IMAGE, the SCU shall specify one SOP Instance UID or a list of SOP Instance UIDs.

– If the Retrieve Level (0000,0052) is FRAME, the SCU shall specify the single SOP Instance UID of the item from which the new Composite SOP Instance should be extracted and the Requested Frame List. The Requested Frame List shall be constructed as a Frame List as defined in Y.3.2.

– The SCU shall have proposed sufficient presentation contexts at Association establishment time to accommodate expected C-STORE sub-operations that will occur over the same Association. The SCU of the Query/Retrieve Service Class shall serve as the SCP of the Storage Service Class.

– The SCU shall accept C-GET responses with status equal to Pending during the processing of the C-STORE sub-operations. These responses indicate the number of Remaining, Completed, Failed and Warning C-STORE sub-operations.

– The SCU shall interpret a C-GET response with a status equal to Success, Warning, Failure, or Refused as a final response. The final response indicates the number of Completed sub-operations and the number of Failed C-STORE sub-operations resulting from the C-GET operation. The SCU shall interpret a status of:

– The SCU may cancel the C-GET operation by issuing a C-GET-CANCEL request at any time during the processing of the C-GET request. A C-GET response with a status of Canceled shall indicate to the SCU that the retrieve was canceled. Optionally, the C-GET response with a status of Canceled shall indicate the number of Completed, Failed, and Warning C-STORE sub-operations. If present, the Remaining sub-operations count shall contain the number of C-STORE sub-operations that were not initiated due to the C-GET-CANCEL request.

Y.4.2.3 C-GET SCP Behavior

An SCP conveys the following semantics with a C-GET response:

– If the Retrieve Level (0000,0052) is IMAGE the SCP shall identify a set of Entities at the level of the transfer based upon the values in the Unique Keys in the Identifier of the C-GET request.

– If the Retrieve Level (0000,0052) is FRAME, the SCP shall create a new Composite Instance according to the rules in section Y.3.3. The newly created SOP Instance shall be treated in the same manner as the set of Entities identified above.

– The SCP shall initiate C-STORE sub-operations for the identified or newly created SOP Instances. The SCP of the Query/Retrieve Service Class shall serve as an SCU of the Storage Service Class.

– The SCP shall initiate C-STORE sub-operations over the same Association for all identified or newly created SOP Instances specified in the C-GET request.

– A sub-operation is considered a Failure if the SCP is required to create new SOP Instance, but is unable to do so due to inconsistencies in the Frame Range Keys, or if the resulting SOP Instance would not be valid.

– A sub-operation is considered a Failure if the SCP is unable to initiate a C-STORE sub-operation because the Query/Retrieve SCU did not offer an appropriate presentation context for a given stored SOP Instance.

– Optionally, the SCP may generate responses to the C-GET with status equal to Pending during the processing of the C-STORE sub-operations. These responses shall indicate the number of Remaining, Completed, Failure, and Warning C-STORE sub-operations.

– When the number of Remaining sub-operations reaches zero, the SCP shall generate a final response with a status equal to Success, Warning or Failed. The status contained in the C-GET response shall contain:

– The SCP may receive a C-GET-CANCEL request at any time during the processing of the C-GET request. The SCP shall interrupt all C-STORE sub-operation processing and return a status of Canceled in the C-GET response. The C-GET response with a status of Canceled shall contain the number of Completed, Failed, and Warning C-STORE sub-operations. If present, the Remaining sub-operations count shall contain the number of C-STORE sub-operations that were not initiated due to the C-GET-CANCEL request.

– If the SCP manages images in multiple alternate encodings (see C.6.1.1.5.1), only one of the alternate encodings of an image shall be used as the existing SOP Instance from which frames are to be extracted.